Incoming Deposits

Accept fiat deposits from your customers using local payment rails

Incoming fiat instructions enable your customers to deposit traditional currencies and receive stablecoins. Lirium generates dedicated virtual accounts for each customer, allowing them to transfer funds directly from their bank.

Deposit Flow

┌─────────────────┐     ┌─────────────────┐     ┌─────────────────┐
│  Customer Bank  │────▶│  CVU / CLABE    │────▶│  Stablecoin     │
│    Account      │     │  (Virtual Acct) │     │    Balance      │
└─────────────────┘     └─────────────────┘     └─────────────────┘
        │                       │                       │
        │   Bank Transfer       │   Auto-conversion     │
        │   (ARS/MXN)           │   at market rate      │
        └───────────────────────┴───────────────────────┘

Supported Deposit Methods

CurrencyTypeVirtual AccountProcessing Time
ARSar_cvuCVU (22 digits) + AliasNear-instant
MXNmx_clabeCLABE (18 digits)Same business day

Creating a Deposit Instruction

Argentina (CVU)

POST /customers/{customer_id}/incoming_fiat_instructions
Content-Type: application/json

{
  "type": "ar_cvu",
  "currency": "ARS"
}

Response:

{
  "id": "abc123",
  "type": "ar_cvu",
  "currency": "ARS",
  "status": "active",
  "data": {
    "cvu": "0000003100000000000001",
    "alias": "customer.lirium.ars"
  },
  "created_at": "2024-01-15T10:30:00Z"
}

Mexico (CLABE)

POST /customers/{customer_id}/incoming_fiat_instructions
Content-Type: application/json

{
  "type": "mx_clabe",
  "currency": "MXN"
}

Response:

{
  "id": "def456",
  "type": "mx_clabe",
  "currency": "MXN",
  "status": "active",
  "data": {
    "clabe": "123456789012345678"
  },
  "created_at": "2024-01-15T10:30:00Z"
}

Displaying Payment Details

When presenting deposit information to customers, include all relevant details:

Argentina CVU Display Example

┌────────────────────────────────────────────────┐
│  Deposit ARS to your account                   │
├────────────────────────────────────────────────┤
│  CVU: 0000003100000000000001                   │
│  Alias: customer.lirium.ars                    │
│                                                │
│  Bank: [Your Company Name]                     │
│  Account Type: Virtual Account (CVU)           │
└────────────────────────────────────────────────┘

Mexico CLABE Display Example

┌────────────────────────────────────────────────┐
│  Deposit MXN to your account                   │
├────────────────────────────────────────────────┤
│  CLABE: 123456789012345678                     │
│                                                │
│  Bank: [Your Company Name]                     │
│  Account Type: SPEI Transfer                   │
└────────────────────────────────────────────────┘

Receiving Deposit Notifications

When a customer completes a deposit, you'll receive an incoming-funds webhook event:

{
  "event_type": "incoming-funds",
  "event_id": "evt_123456",
  "created_at": "2024-01-15T10:35:00Z",
  "data": {
    "customer_id": "cust_abc123",
    "instruction_id": "abc123",
    "amount": "50000.00",
    "currency": "ARS",
    "converted_amount": "45.50",
    "converted_currency": "DIPE",
    "status": "completed"
  }
}

See Webhook Signature Verification for details on validating webhook payloads.

Conversion Rates

Deposits are converted to stablecoins at the current market rate:

Fiat CurrencyStablecoinRate Source
ARSDIPEReal-time market rate
MXNMXNBReal-time market rate

To preview conversion rates before a deposit, use the Exchange Rates API.

Error Handling

Common Errors

Error CodeDescriptionResolution
customer_not_verifiedCustomer KYC not completeComplete customer verification
duplicate_instructionInstruction already existsUse existing instruction or delete first
unsupported_currencyCurrency not availableCheck supported currencies for region
limit_exceededDeposit limits reachedWait for limit reset or request increase

Limits and Restrictions

Deposit limits vary by customer verification level and jurisdiction:

LevelDaily LimitMonthly Limit
BasicContact supportContact support
VerifiedContact supportContact support
EnhancedContact supportContact support

Contact your account manager for specific limit information.

API Reference