Get a Transfer
Use this endpoint to retrieve the current status and details of a transfer, including its type, status history, sender and recipient details, amounts, and timestamps. Only returns transfers belonging to the same organization.
Authorizations
JWT Bearer token authentication. The tenantId is derived from the bearer token or authenticated request context and is not supplied through X-Organization-Id.
Headers
Midaz organization scope for the request, used for downstream CRM, Fees, and Midaz calls. Required on org-scoped transfer routes in every deployment mode; a missing or non-UUID value returns 400. This is not the tenant identifier — tenantId is derived from the bearer JWT or authenticated context, never from this header. Background workers (TED IN poller, reconciliation) have no request header and, in single-tenant mode, fall back to the deployment's ORGANIZATION_ID env.
Path Parameters
The unique identifier of the transfer.
Response
Indicates that the transfer was found and its details are returned.
The unique identifier of the transfer.
"019c96a0-ab10-7cde-f1a2-0e1f2a3b4c5d"
The type of transfer. TED_OUT is an outgoing transfer to an external bank via JD SPB. TED_IN is an incoming transfer from an external bank. P2P is a peer-to-peer transfer within the same institution (same ISPB).
TED_OUT, TED_IN, P2P "TED_OUT"
The current status of the transfer. For TED OUT: CREATED → PENDING → PROCESSING → COMPLETED, REJECTED, or FAILED. For P2P: CREATED → PROCESSING → COMPLETED or FAILED (PENDING is an SPB-specific state and does not apply to P2P). Transfers can be CANCELLED while in CREATED or PENDING status. For TED IN: RECEIVED → PROCESSING → COMPLETED or FAILED. A COMPLETED TED IN can also transition to FAILED in the event of a chargeback.
CREATED, PENDING, PROCESSING, COMPLETED, REJECTED, FAILED, CANCELLED, RECEIVED "COMPLETED"
The Midaz organization that the transfer is filed under. It equals the X-Organization-Id of the request.
"019c96a0-0a98-7287-9a31-786e0809c769"
The Midaz ledger that the transfer is filed under. Always present. The all-zeroes UUID means that the scope is unrepaired. See Repair Transfer Ledger Scope.
"019c96a0-0b10-7c2d-8e3f-4a5b6c7d8e9f"
UUID of the sender account. Always present. For TED IN, where the sender is an external bank with no local account, this is a synthetic identifier deterministically derived from the sender's document.
"019c96a0-0c0c-7221-8cf3-13313fb60081"
The transfer amount without the fee.
1000.5
The fee charged for this transfer.
1.5
The amount debited from the sender's account: the transfer amount plus any fee charged on top. For TED IN, the gross amount received.
1002
The timestamp when the transfer was created.
"2026-02-01T18:30:00Z"
The timestamp of the last status update.
"2026-02-01T18:35:00Z"
The history of status transitions for this transfer.
The number of settlement queries already sent for this transfer. Always present, zero included.
0
For TED IN devolutions, the ID of the original incoming transfer being returned.
"019c96a0-ab10-7cde-f1a2-0e1f2a3b4c5d"
BACEN devolution reason code, present only when the transfer is a devolution.
"18"
UUID of the recipient account, when the recipient is represented as a Midaz account.
"019c96a0-ac10-7efa-b1c2-2a3b4c5d6e7f"
The human-readable confirmation code, if available.
20"20260201001"
The JD SPB control number, present for TED OUT and TED IN transfers.
20"202602010001"
The corresponding Midaz ledger transaction ID.
"019c96a0-ac10-7efa-b1c2-2a3b4c5d6e7f"
The purpose or description of the transfer.
140"Payment for services"
Metadata that this service records on the transfer, as key-value pairs. The metadata that you sent on Initiate Transfer is in clientMetadata.
The metadata that you sent on Initiate Transfer, as key-value pairs. Absent when the transfer carries none. A TED IN transfer carries none.
The timestamp when the transfer was completed. Null if not yet completed.
"2026-02-01T18:35:00Z"
The reconciliation state of the transfer, as stored. EXHAUSTED has the same meaning as MANUAL_REVIEW. Absent on a transfer that never entered reconciliation.
AWAITING, RESOLVED, REVERSING, REVERTED, EXHAUSTED, MANUAL_REVIEW "MANUAL_REVIEW"
The time of the most recent settlement query, when one was sent.
"2026-02-01T15:40:00Z"
Why the transfer entered reconciliation, in the vocabulary of the system that decided it. Absent when no reason is recorded.
"JD_UNAVAILABLE"
The class of reconciliationReasonCode. Absent when no reason is recorded.
"transient"
The rejection code of the clearing house, verbatim, for example AAC90 or ALN01. Absent when there is none.
"ALN01"

