Fund Flows

Learn which fund flow patterns Infinia supports for on-ramp and off-ramp operations, with self-use and third-party accounts.

A fund flow is the path money takes through your virtual accounts. Which flow fits depends on two things: whether the account is a self-use account, which holds your own funds, or a third-party account, which holds funds on behalf of a client; and whether the flow is an on-ramp (fiat to crypto) or an off-ramp (crypto to fiat).

This page describes the five standard patterns and the operations that implement them. You can combine each pattern with the account structure described in Integration Model.

PatternAccountUse it when
Self-use on-rampSelf-useYou convert fiat you receive into crypto for your own treasury.
Self-use off-rampSelf-useYou convert your crypto into fiat to pay suppliers, payroll or other obligations.
Third-party on-rampThird-partyYou collect fiat from clients and, optionally, convert it to crypto on their behalf.
Third-party off-rampThird-partyYou convert a client's crypto into fiat and pay it out to the client's bank account.
Pre-funded off-rampSelf-use and third-partyYou fund a client's account from your own and pay out from the client's account, for example to settle QR payments quickly.
⚠️

If you operate a neobank or wallet, payouts must originate from the end user's assigned account, not from a company omnibus or liquidity account. The assigned account is an account created with the owner_id of the end user's account owner, which holds their KYC, and it doesn't have to be a named account. To fund the payout first, use the pre-funded off-ramp: an internal transfer from your liquidity account to the end user's assigned account, followed by the payout from that account.

Self-use on-ramp

Your company receives fiat in its own Infinia account and converts it to crypto.

External Bank Account (Company)
        │
        │  Fiat transfer (payin)
        ▼
  Infinia Account (Self-Use)
        │
        │  On-ramp conversion
        ▼
  Infinia Crypto Wallet (Company)

Use it when you manage your own treasury and want to convert incoming fiat receipts into crypto holdings.

Self-use off-ramp

Your company moves crypto into its own Infinia account, converts it to fiat and sends payouts.

  Infinia Crypto Wallet (Company)
        │
        │  Off-ramp conversion
        ▼
  Infinia Account (Self-Use)
        │
        │  Fiat transfer (payout)
        ▼
External Bank Account (Company or Vendor)

Use it when you hold crypto and need to settle payments to suppliers, payroll or other obligations in fiat.

Third-party on-ramp

A client's funds arrive in a third-party Infinia account. You can optionally convert them to crypto on the client's behalf.

External Bank Account (Client)
        │
        │  Fiat transfer (payin — third-party account)
        ▼
  Infinia Account (Third-Party / Client)
        │
        │  On-ramp conversion (optional)
        ▼
  Crypto Wallet (Client)

Use it when you're a PSP or wallet operator collecting fiat from end clients, and optionally routing those funds into crypto positions held on their behalf.

Third-party payins must be enabled for the account owner type. See Account Capabilities.

Third-party off-ramp

Crypto is converted into fiat in a client's third-party account, and the resulting balance is paid out to the client's bank account.

  Crypto Wallet (Client)
        │
        │  Off-ramp conversion
        ▼
  Infinia Account (Third-Party / Client)
        │
        │  Fiat payout
        ▼
External Bank Account (Client)

Use it when you run off-ramps on behalf of clients, converting their crypto to fiat and paying it out to the bank account they nominate.

Pre-funded off-ramp

Your company funds a client's third-party account from its own self-use account, and the fiat payout runs from the client's account:

  1. Make an internal transfer from your liquidity (self-use) account to the client's assigned account.
  2. Create the payout from the client's account.

This is the supported way to run a pre-funded off-ramp. The payout originates from the end user's assigned account, as required for neobanks and wallets.

  Infinia Account (Self-Use / Company)
        │
        │  Internal transfer (pre-funding)
        ▼
  Infinia Account (Third-Party / Client)
        │
        │  Fiat payout
        ▼
External Bank Account (Client)

Use it when you need to speed up payouts, particularly QR payments, which are time-sensitive and can expire if they aren't settled promptly.

⚠️

For ARS accounts, pre-funded off-ramps are only permitted for QR payouts, for regulatory reasons.

Operations behind each flow

Whatever the pattern, each step maps to one of these operations:

StepOperation
Receive a depositWhen a fiat deposit is credited to a virtual account, Infinia sends the movement webhook. Listen to it to detect incoming funds.
Convert funds (on-ramp or off-ramp)Move funds between accounts, with optional currency conversion, with Make Internal Transfer. Internal transfers implement both on-ramps and off-ramps, and the pre-funding of client accounts.
Send a payoutSend funds from a virtual account to an external bank account or crypto wallet with Create Payout.

Did this page help you?