Stablecoin Deposits
If you already hold USDC or USDT in a wallet or exchange, you can transfer it to your Consul balance directly. This is instant and requires no conversion. You will receive aninbound_transfer.created webhook event once funds arrive.
By default, funds must be sent as USDC or USDT on Base. If you need support for other
tokens or chains, contact support to enable.
Fiat Deposits
Consul converts fiat deposits into USDC and credits your balance. Use the Deposits API to initiate a fiat deposit programmatically.| Method | Currency | Speed | Notes |
|---|---|---|---|
| Domestic Wire (FedWire) | USD | 0-1 business days | Fastest for large USD deposits |
| ACH Push | USD | 1-2 business days | You initiate the transfer from your bank |
| ACH Debit | USD | 1-2 business days | Consul pulls funds from your linked bank account. Enabled on request. |
| PIX | BRL | A few minutes | Instant Brazilian payments |
| Transfers 3.0 | ARS | A few minutes | Argentine instant transfers |
| SWIFT (coming soon) | USD | 2-5 business days | SWIFT international wire transfers |
Example
1. Link a Bank Account
Before creating a deposit, you need a linked bank account. The bank account determines the currency and payment rail. See the Bank Accounts guide for the full schema and examples for each supported currency.2. Create a Deposit Quote
Request a quote with the Create a Deposit Quote endpoint. The currency and payment rail are determined by the linked bank account:id.
3. Execute the Deposit
Execute the quote with the Execute a Deposit endpoint to lock in the rate and receive transfer instructions:Transfer object containing fiat_transfer_instructions - the details
needed to complete the transfer from your bank:
transfer_memo when initiating the wire or transfer from your bank.
Each payment rail has a different set of transfer instructions. See the schema in
Execute a Deposit for the full details or contact support.
Deposit Lifecycle
A deposit can be in one of the following states:| State | Description |
|---|---|
awaiting_transfer | The deposit is awaiting transfer to your Consul balance. |
processing | Funds have been received and the deposit is being processed. |
completed | The deposit has been completed successfully. Funds have been credited to your Consul balance. |
failed | The deposit has failed. A failure reason is provided. |
cancelled | The deposit has been canceled. Funds have not been credited. |
expired | The deposit has expired while waiting for funds to be received. If funds are received after expiry, they are still credited to your Consul balance but may require manual processing. |
Deposit Lifecycle Diagram
Deposit Lifecycle Diagram
The following state diagram shows the lifecycle of a deposit.

