Transfer
The Transfer API allows you to transfer USD to fund a user's cash account or transfer USD out to user's bank account.
Currently, we only support ACH transfer to USA based banks. We recommend using Plaid to obtain user's account and routing numbers.
Note, crypto transfers & withdrawals are not supported yet.
- Add bank information to user account
- Deposit directly from user's account
- Withdraw to user's bank account
- Deposit from business bank account
#
Add bank information to user accountURL : /v1/account/<accountId>/banking/add/
Method : POST
Auth required : Yes (API key and secret are required)
#
Body payloadSample body payload:
{ "account_owner_name": "John Doe", "bank_account_type": "CHECKING", "bank_account_number": "32131231abc", "bank_routing_number": "121000358", "bank_nickname": "Bank of America Checking"}
- account_owner_name - String. The name of the bank account owner.
- bank_account_type - Enum. Type of bank account. We recommend users fund from a checking account. Options: CHECKING
, SAVINGS
- bank_account_number - String. The bank account number.
- bank_routing_number - String. The bank routing number.
- bank_nickname - String. A user inputted nickname for the bank for labeling purposes
#
Success ResponseCode : 200 OK
#
Error ResponseCode : 400 BAD REQUEST
Condition : If accountId is invalid or if organization does not have access to this account.
#
Deposit funds from user's bank accountURL : /v1/account/<accountId>/banking/deposit/
Method : POST
Auth required : Yes (API key and secret are required)
#
Body payloadSample body payload:
{ "transfer_amount": 500.00, "scheduled_transfer_date": "2021-11-12 00:00:00 GMT-06:00", "estimated_transfer_complete_date": "2021-11-15 00:00:00 GMT-06:00"}
- transfer_amount - Double. The amount of USD to deposit
- scheduled_transfer_date - String, optional. The datetime when the transfer is scheduled for
- estimated_transfer_complete_date - String. The estimated datetime when the deposit will be live to trade
#
Success ResponseCode : 200 OK
Sample response payload:
{ "transferId": 123415}
- transferId - Int. The ID of transfer. Can use as receipt.
#
Error ResponseCode : 400 BAD REQUEST
Condition : If accountId is invalid or if organization does not have access to this account or user does not have a bank account attached to their account
Code : 409 BANK DENIED
Condition : Bank has denied deposit request or user does not have enough funds
#
Withdraw funds to user's bank accountURL : /v1/account/<accountId>/banking/withdraw/
Method : POST
Auth required : Yes (API key and secret are required)
#
Body payloadSample body payload:
{ "transfer_amount": 500.00, "estimated_transfer_complete_date": "2021-11-12 00:00:00 GMT-06:00"}
- transfer_amount - Double. The amount of USD to deposit
- scheduled_transfer_date - String, optional. The datetime when the withdraw is scheduled for
- estimated_transfer_complete_date - String. The estimated datetime when the withdraw will be live to trade
#
Success ResponseCode : 200 OK
Sample response payload:
{ "transferId": 123415}
- transferId - Int. The ID of transfer. Can use as receipt.
#
Success ResponseCode : 200 OK
#
Error ResponseCode : 400 BAD REQUEST
Condition : If accountId is invalid or if organization does not have access to this account or user does not have a bank account attached to their account
Code : 409 BANK DENIED
Condition : Bank has denied withdraw request or bank information is invalid
#
Deposit from a business bank accountFund an end user's cash account with your business cash account or business brokerage account. Use this API if you want to fund your user's account from a business account you own rather than directly from the consumer's bank account.
๐จ Note, this API should only be used to transfer cash from your business cash account to an end user's cash account. Do not use to transfer cash between users.
URL : /v1/account/<accountId>/banking/transfer/
Method : POST
Auth required : Yes (API key and secret are required)
#
Body payloadSample body payload:
{ "bank_routing_number": "122100024", "bank_account_number": "123456789", "transfer_amount": 500.00, "scheduled_transfer_date": "2021-11-12 00:00:00 GMT-06:00"}
- bank_routing_number - String. The routing number of the business account to transfer from
- bank_account_number - String. The routing number of the business account to transfer from
- transfer_amount - Double. The amount of USD to deposit
- scheduled_transfer_date - String, optional. The datetime when the transfer is scheduled for
#
Success ResponseCode : 200 OK
Sample response payload:
{ "transferId": 123415}
- transferId - Int. The ID of transfer. Can use as receipt.
#
Error ResponseCode : 400 BAD REQUEST
Condition : If accountId is invalid or if organization does not have access to this account or user does not have a bank account attached to their account