Overview
There are two ways to receive deposits, depending on whether the funds are fiat or cryptocurrency. Each uses a different API and flow.Fiat Deposits
Use the Deposit Instructions API to get bank account details your users can send fiat to.1
Get deposit instructions
Call GET /v1/accounts/{account_id}/deposit-instructions to retrieve bank details for each enabled currency.The response includes bank name, account number, IBAN, SWIFT/BIC, routing number, and supported payment rails (ACH, SWIFT, SEPA, etc.).
2
User sends fiat
Share the deposit details with your user. They initiate a bank transfer using their bank or payment provider.
3
Receive webhook
When the funds arrive, you receive a
deposit.received webhook and the account balance is updated.Fiat currencies must be enabled for your account. If a currency returns
"status": "unavailable", contact support to enable it. Supported currencies include USD, EUR, GBP, JPY, and HKD.Deposit instructions are fiat only. To receive crypto deposits, use the Wallets API below.
Crypto Deposits
Use the Wallets API to create a blockchain wallet and get a deposit address for crypto.1
Create a wallet
Call POST /v1/accounts/{account_id}/wallets with the desired currency and network.The response includes the wallet’s blockchain
address — this is the deposit address.2
User sends crypto
Share the deposit address with your user. They send USDC or USDT to that address on the correct network.
3
Receive webhook
When the transaction is confirmed on-chain, you receive a
deposit.received webhook and the account balance is updated.Supported Currency and Network Combinations
- Sandbox
- Production
Tracking Deposits
Both fiat and crypto deposits create payin records. Use the Payins API to query deposit history, or subscribe to webhook events for real-time notifications.Quick Reference
Fiat Deposit
GET /deposit-instructions → share bank details → deposit.receivedCrypto Deposit
POST /wallets → share address → deposit.received