Transfers

List transfers

GET/transfers

All your transfers, newest first, whether made through the API or in the portal — the debits of type: transfer in GET /accounts/{accountId}/transactions that went to another of your accounts or to another business (a send to a person is not a transfer). A portal transfer has no merchantReference. Requires transfers:read.

Authentication
ApiKeyAuth
Execution
synchronous

Parameters

  • limitintegerquery

    Default: 20

    ≥ 1 · ≤ 100

  • cursorstringquery
    Opaque cursor from a previous page's nextCursor.

    max length 512

  • createdAfterstring (date-time)query
    Inclusive lower bound on createdAt.
  • createdBeforestring (date-time)query
    Exclusive upper bound on createdAt.
  • statusstringquery
    pending accepted, not settled yet · completed settled · failed refused, rejected or expired — no money moved.

    Allowed values: pendingcompletedfailed

  • destinationTypestringquery

    Allowed values: own_accountbusiness

  • merchantReferencestringquery
    Exact match on your merchant reference. At most one item is not failed; a refused attempt that was recorded is there as failed.

    max length 100

Responses

A page of transfers.

Headers

  • X-Request-Idstring
    The client's X-Request-Id if supplied, otherwise a server-generated id. Equals traceId in problems.
  • RateLimit-Limitinteger
  • RateLimit-Remaininginteger
  • RateLimit-Resetinteger
    Seconds until the window resets.

Schema application/json

  • objectstringrequired

    Allowed values: list

  • dataarray<Transfer>
    • objectstringrequired

      Allowed values: transfer

    • idstringrequired
      The ledger id of the transfer's debit — the same entry GET /accounts/{accountId}/transactions shows.

      Example: txn_AAAAAAAAB3Y

      pattern ^txn_[A-Za-z0-9_-]{11}$

    • merchantReferencestring
      Absent on a transfer made in the portal.
    • statusstringrequired
      pending accepted, not settled yet · completed settled · failed refused, rejected or expired — no money moved.

      Allowed values: pendingcompletedfailed

    • amountMoneyrequired
      Decimal amount as a string — never a float, never minor units. An amount you send may carry no more decimal places than its currency has (and never more than 8); trailing zeros do not count, so 10.100 EUR is fine and 10.123 EUR is 400 validation_failed on amount.value.
    • feeobjectrequired
      Charged on top of amount; zero between your own accounts.
    • totalDebitedobjectrequired
      What leaves the source account: amount + fee.
    • sourceAccountIdstringrequired
      Opaque account identifier. Treat as a string; never parse or construct it.

      Example: acc_AAAAAAAAAAc

      pattern ^acc_[A-Za-z0-9_-]{11}$

    • destinationTransferDestinationrequired
      own_account with accountId, or business with exactly one of email and merchantNumber. On the resource: the type, and for own_account the accountId. A business's e-mail or number is not kept, and its account is never shown; counterpartyName on the ledger entry says who received it.
    • descriptionstring
    • failureobject
      Present when status is failed.
    • createdAtstring (date-time)required
      RFC 3339, UTC, with millisecond precision.

      Example: 2026-09-18T10:15:30.123Z

    • updatedAtstring (date-time)required
      RFC 3339, UTC, with millisecond precision.

      Example: 2026-09-18T10:15:30.123Z

    • completedAtstring (date-time)
      RFC 3339, UTC, with millisecond precision.

      Example: 2026-09-18T10:15:30.123Z

  • hasMorebooleanrequired
  • nextCursorstringnullable
    Pass as cursor to fetch the next page. null when hasMore is false.