v1

latestOpenAPI 3.0.02026-07-26166415635.8 KB
Funding
Accounts

Request a New Transfer

Create a new transfer to deposit money into or withdraw money from an account.

Two transfer_type values are accepted, and both are available in sandbox and production:

  • ach — supports both INCOMING (deposit) and OUTGOING (withdrawal) directions. A relationship_id from a previously created ACH Relationship is required.
  • wire — supports the OUTGOING (withdrawal) direction only. Incoming wires cannot be initiated through this endpoint; they are pushed in by the sending bank and recorded automatically. A bank_id from a previously created Bank Relationship is required, and the bank must be in APPROVED status before the transfer will progress past QUEUED.

In the sandbox environment, ACH deposits and withdrawals settle instantly against virtual funds. Outgoing wire withdrawals are accepted and simulated end-to-end — no funds are transmitted to a bank, but the transfer progresses to COMPLETE and the account is debited against virtual funds. Sandbox wire withdrawals are asynchronous (not instant) and auto-complete on weekdays only; transfers submitted on a weekend will not progress until Monday. For more on funding accounts in sandbox, see this tutorial.

post/v1/accounts/{account_id}/transfers

Path parameters

account_idstring uuid required

Request body

additional_informationstring nullable

Additional details for when type = wire

amountstring decimal required

Must be > 0.00

bank_idstring uuid

Required if type = wire

The bank_relationship created for the account_id here

direction'INCOMING' | 'OUTGOING' required
  • INCOMING Funds incoming to user's account (deposit).
  • OUTGOING Funds outgoing from user's account (withdrawal).
fee_payment_methodstring

Only outgoing wire fees are currently supported for automated processing.

user The end user will pay any applicable fees invoice Any applicable fees will be billed to the client in the following monthly invoice

relationship_idstring uuid

Required if type = ach

The ach_relationship created for the account_id here

timing'immediate'

Deprecated. Not honored by the API; values sent are silently ignored and this field will be removed.

transfer_type'ach' | 'wire' required
  • ach Transfer via ACH (US Only). Supports both INCOMING (deposit) and OUTGOING (withdrawal) directions.
  • wire Transfer via wire. OUTGOING (withdrawal) only.

Example request

{
  "direction": "INCOMING",
  "ira": {
    "distribution_reason": "normal",
    "tax_withholding": {
      "fed_pct": "10.25",
      "state_pct": "8.25"
    },
    "tax_year": "2024"
  },
  "timing": "immediate",
  "transfer_type": "ach"
}

Response

Successfully requested a transfer.

account_idstring uuid required

The account ID

additional_informationstring nullable

Additional information. Only applies when type = "wire".

amountstring decimal required

Must be > 0.00

bank_idstring uuid

The ID of the Bank, only present if type = "wire"

created_atstring date-time required

Timestamp when transfer was created

direction'INCOMING' | 'OUTGOING' required
  • INCOMING Funds incoming to user's account (deposit).
  • OUTGOING Funds outgoing from user's account (withdrawal).
expires_atstring date-time

Timestamp when transfer expires

feestring decimal nullable

Fee amount to be collected. Only applies when type = "wire".

fee_payment_methodstring nullable

Either "user" or "invoice". Only applies when type = "wire".

hold_untilstring date-time
idstring uuid required

The transfer ID

instant_amountstring
reasonstring nullable

Cause of the status

relationship_idstring uuid

The ACH relationship ID only present if type = "ach"

requested_amountstring decimal nullable

Must be > 0.00. Only applies when type = "wire".

status'QUEUED' | 'APPROVAL_PENDING' | 'PENDING' | 'SENT_TO_CLEARING' | 'REJECTED' | 'CANCELED' | 'APPROVED' | 'COMPLETE' | 'RETURNED' required
  • QUEUED Transfer is in queue to be processed.
  • APPROVAL_PENDING Transfer is pending approval.
  • PENDING Transfer is pending processing.
  • SENT_TO_CLEARING Transfer is being processed by the clearing firm.
  • REJECTED Transfer is rejected.
  • CANCELED Client initiated transfer cancellation.
  • APPROVED Transfer is approved.
  • COMPLETE Transfer is completed.
  • RETURNED The bank issued an ACH return for the transfer.
type'ach' | 'wire' required
  • ach Transfer via ACH (US Only). Supports both INCOMING (deposit) and OUTGOING (withdrawal) directions.
  • wire Transfer via wire. OUTGOING (withdrawal) only.
updated_atstring date-time

Timestamp when transfer was updated

Example response

{
  "direction": "INCOMING",
  "ira": {
    "distribution_reason": "normal",
    "fed_withholding_amount": "102.5",
    "fed_withholding_pct": "10.25",
    "state_withholding_amount": "97.5",
    "state_withholding_pct": "9.75",
    "tax_year": "2024"
  },
  "status": "QUEUED",
  "type": "ach"
}