Customers must have KYC approved (
is_va_approved: true) before you can issue them a virtual account.Step 1: Get Supported Pay-in Countries
Retrieve the list of countries where Yativo supports incoming payments:Step 2: Get Supported Currencies for a Country
Once you know the destination country, retrieve which currencies are available for deposits:string
required
ISO 3166-1 alpha-2 country code (e.g.
BR, MX, CL).Step 3: Create a Virtual Account for a Customer
Issue a local bank account number to your customer for a specific currency:string
required
The ID of the KYC-approved customer to issue the account to.
string
required
Currency for the virtual account. Supported values:
USDBASE, EURBASE, EURDE, MXN, MXNBASE, MXNUSD, BRL.Step 4: List Virtual Accounts
Retrieve all virtual accounts, with optional filters:string
Filter by currency code (e.g.
BRL, USD).string
Filter by account status.
string
From date (ISO 8601).
string
Search query (account number, customer name, etc.).
number
Results per page.
number
Page number.
Step 5: Get Virtual Account Transaction History
Retrieve payment history for a specific virtual account:string
required
The account number (not the account ID).
string
Filter by customer.
string
Filter by payment status.
string
From date (ISO 8601).
string
To date (ISO 8601).
number
Page number.
number
Results per page.
Alternative: Gateway-Based Deposits (Quote Flow)
For payment gateways that involve a hosted checkout (rather than a push to a standing account number), use the two-step quote flow.Step 1: Quote the deposit
CallPOST /exchange-rate with method_type: "payin" and the gateway’s method_id to lock the exchange rate and get a quote_id:
Step 2: Initiate the deposit
Pass thequote_id to lock the rate, plus a redirect_url for after the customer completes payment on the hosted page:
checkout_url — redirect the customer there to complete the payment. Once done they return to your redirect_url and you receive a deposit.completed webhook.
Use virtual accounts (Step 3 above) for recurring or standing deposit addresses. Use the gateway quote flow when the customer initiates a one-time payment on a specific date and you want to lock the rate before they pay.
Alternative: Crypto Deposits
To accept cryptocurrency deposits, retrieve your crypto wallet addresses:Webhooks for Deposit Notifications
Configure a webhook endpoint to be notified in real-time when a deposit arrives. See the Webhooks guide for setup. Key events for deposits:
Example
virtual_account.deposit payload:
Respond with a
2xx status within 10 seconds to acknowledge receipt. Failed deliveries are retried automatically.
