Depositing Funds
Depositing refers to sending fiat or crypto funds from external accounts into a Rail account.
To transfer funds between Rail accounts, see Transfers. To withdraw assets from a Rail account to an external account, see Withdrawing Funds.
Today, we have two Deposit endpoints: one for Deposit accounts and one for Payment accounts. These will be combined into a single one shortly.
Push
Push means the source account has to initiate the transaction. Fedwire, Swift support Push only. ACH supports both Push and Pull.
To get the PUSH deposit instructions, call the deposits endpoint with
-
deposit_typeofPUSH -
deposit_destination.destination_account_idset to theaccount_idwhere the funds need to be deposited into.
You will get the deposit instructions for the rails supported by the account.
Once our partner banks receive the funds, it goes through the usual transaction monitoring checks by our settlement banks, before showing in the available balance.
NOTE: In sandbox, to simulate a fiat deposit, enter the
memoin the response object in the "Confirm Deposit" screens in the Management UI.
Pull
Pull means the destination has to initiate the transaction. ACH supports both Push and Pull.
To initiate a PULL deposit instrucution, follow the following steps:
- Setup a Fiat US Linked counterparty type. Click here to learn more.
-
Create the
PULLdeposit using thedepositsendpoint . Use the counterparty as thesource_counterparty_idand set theamountyou wish to pull. -
To complete the
PULLdeposit operation, you have to Accept the Deposit. You can do that by calling thedeposits/{DEPOSIT_ID}/acceptendpoint
NOTE: In Sandbox, unlike the Push, you don't need to confirm the deposit in the Management UI. Funds should appear after a few mins.
Deposit Lifecycle
Scenario 1 - Deposit Lifecycle - Happy Path
Scenario where the deposit lifecycle executes without any RFI being required.