Transfer funds between accounts

Moves funds from a source account to a destination account for internal liquidity/treasury operations.

Requires an existing, active calling organization.

Idempotency. The Idempotency-Key header is a mandatory UUID forwarded to the liquidity service. Duplicate-request handling is determined by that service; clients must handle error responses when retrying a request.

SecurityoAuth2
Request
header Parameters
Idempotency-Key
required
string [ 1 .. 128 ] characters

A client-generated key identifying the request, forwarded to the liquidity service.

Request Body schema: application/json
required
externalReferenceId
required
string [ 1 .. 50 ] characters ^[\p{L}\p{N} ~!@#$%&(){}|^\[\]/_\-+=?\\;:"'<>...

Caller-supplied reference identifying this request.

sourceAccount
required
string [ 1 .. 20 ] characters

Account the funds are transferred from.

destinationAccount
required
string [ 1 .. 20 ] characters

Account the funds are transferred to.

amount
required
number > 0

Amount to transfer. Must be greater than zero.

Responses
202

Accepted (202). The fund transfer request was accepted for processing by the liquidity service.

400

Invalid request body or headers, or a validation/processing failure reported by the downstream liquidity service.

Code Meaning
FUND_IDEMPOTENCYKEY_REQUIRED Idempotency-Key header is missing or blank.
FUND_IDEMPOTENCYKEY_LMT Idempotency-Key must be between 1 and 128 characters.
FUND_EXTREFID_REQUIRED externalReferenceId is missing or blank.
FUND_EXTREFID_MAX externalReferenceId exceeds 50 characters.
FUND_EXTREFID_PATTERN externalReferenceId contains invalid characters.
FUND_SRCACC_REQUIRED sourceAccount is missing or blank.
FUND_SRCACC_MAX sourceAccount exceeds 20 characters.
FUND_DESTACC_REQUIRED destinationAccount is missing or blank.
FUND_DESTACC_MAX destinationAccount exceeds 20 characters.
FUND_AMOUNT_REQUIRED amount is missing.
FUND_AMOUNT_POSITIVE amount must be greater than zero.

Error codes are not a closed enumeration.

401

Unauthorized (401). The request does not contain a valid Bearer JWT access token. No response body is returned.

403

Caller lacks the required authority, or the calling organization is missing or inactive.

409

Conflict reported by the downstream liquidity service (for example, a duplicate idempotency key reused with a different request body).

422

The downstream liquidity service could not process the transfer.

500

An unexpected error occurred while processing the request.

post/v1/funding-accounts/transfers
Request samples
application/json
{
  • "externalReferenceId": "EXT-REF-0001",
  • "sourceAccount": "110088",
  • "destinationAccount": "110099",
  • "amount": 5000.58
}
Response samples
application/json
{
  • "transactionId": "a5381764-07b3-4e27-9a99-05027740cfc0",
  • "externalReferenceId": "EXT-REF-0001"
}