Deposit Bank Account Requirement
What changed for customer fiat accounts, and what do I need to do?
Every customer fiat account on the Cybrid platform must have its own main deposit bank account before any funding transfer can complete. This requirement provides per-customer visibility into the flow of funds.
Required for all partnersAll partners must complete integration and migrate every customer fiat account to a
maindeposit bank account. Reach out to your Cybrid contact for the migration timeline that applies to your integration.
What's changing
A deposit bank account is a routable bank account linked one-to-one to a single customer fiat account. USD accounts use Wire, ACH push, or RTP/FedNow; CAD accounts use EFT. A customer fiat account without a main deposit bank account cannot deposit or withdraw — the transfer is rejected.
- One per fiat account. Exactly one
maindeposit bank account is created for each customer platform fiat account. - US and Canadian banks. Deposit bank accounts are supported for US and CA banks.
- Beneficiary details are automatic. Beneficial owner information is populated from the PII collected during KYC — no extra input required.
How to handle the change
Add one step to your customer onboarding flow: once a customer's fiat account reaches state: created, provision a main deposit bank account for it, then wait for the deposit bank account to reach state: created before initiating transfers.
1. Create the deposit bank account
Once the customer's fiat account has reached state: created, call POST /api/deposit_bank_accounts for it.
POST /api/deposit_bank_accounts
Content-Type: application/json
Authorization: Bearer YOUR_TOKEN
{
"type": "main",
"customer_guid": "customer_guid",
"account_guid": "customer_fiat_account_guid"
}2. Wait for the deposit bank account to reach state: created
state: createdThe deposit bank account is created asynchronously. Poll GET /api/deposit_bank_accounts/{deposit_bank_account_guid} until state: created. This is typically quick.
3. Fund and withdraw as normal
Once state: created, the customer can deposit and withdraw exactly as before.
If you already have live customersThis step matters most for onboarding new customers. If you already have existing customers moving money on the platform, coordinate with your Cybrid contact on a migration plan for them. Add the provisioning step above for any new customers going forward, and handle the error below in case any of your customers attempt a transfer before their deposit bank account is in place.
Resolving the no_deposit_bank_account error
Any deposit or withdrawal for a customer fiat account that has no main deposit bank account is rejected with:
{
"status": 422,
"error_message": "Fiat account missing required deposit bank account",
"message_code": "no_deposit_bank_account"
}A single code — no_deposit_bank_account — covers both deposits and withdrawals. To resolve:
- Create the
maindeposit bank account (see above). - Poll
GET /api/deposit_bank_accounts/{deposit_bank_account_guid}untilstate: created. - Retry the transfer.
Build automatic recoveryOn a
no_deposit_bank_accountresponse, provision the deposit bank account, wait forstate: created, and retry — so customers self-heal on their first transfer.
Next steps
- Customer Deposit Bank Accounts — full reference, fields, and examples.
- Fund via Deposit Bank Account — funding and withdrawal flows.
Questions? Reach out through your shared Slack channel or your Cybrid contact — our team is happy to help you plan the transition.
Updated 9 days ago

