Get a transfer
Returns the current state of an outgoing or internal transfer: status, amounts (amount, feeAmount, totalAmount), parties, SPB identifiers (nuop, numCtrlStr), and the time of each step (reservedAt, submittedAt, settledAt).
This is the simplest way to track a TED you just sent: poll until status reaches a terminal state (SETTLED, REJECTED, or CANCELLED). In REJECTED, rejection tells who refused the transfer (source) and why (code, reason). After SETTLED, a return made by the recipient institution appears in returned, and the status does not change.
You can see only the transfers of your institution. An identifier from another institution returns 404, as if it did not exist. For the full sequence of transitions, use GET /v1/transfers/{transferId}/timeline.
Authorizations
JWT token that the Lerian Access Manager issues for your institution. Send it in Authorization: Bearer <token> on every call (except the public health probes). The tenant never comes from the body, the query, or the path. Each operation requires a role with the matching permission (see the API overview). Without it, 403 TED-0071. Missing, invalid, or expired token: 401 TED-0070.
Headers
Correlation identifier of this request (UUID). Optional: when you omit it, or when the value is not a well-formed UUID, the platform creates a UUID and returns it in the X-Request-Id header of the response. The resolved identifier goes to the logs, spans, and audit events of this request. Keep it to open a support ticket.
Path Parameters
Transfer identifier
Response
Transfer found, in its current state.
Representation of an outgoing (TED) or internal transfer. The create, query, and list operations return it, and so do the cancel and unblock actions. Track the lifecycle through the status field and the instants reservedAt/submittedAt/settledAt. When status=REJECTED, rejection tells you who refused it and why.
Amount in BRL as a decimal string with two decimal places.
^(0\.(0[1-9]|[1-9][0-9])|[1-9][0-9]{0,11}\.[0-9]{2})$"1500.00"
Time (UTC) of creation.
Fee charged at sending, in BRL (0.00 when exempt).
^(0|[1-9][0-9]{0,11})\.[0-9]{2}$"0.00"
Purpose code given in the send request (FinlddCli, 5 digits).
^[0-9]{5}$"00001"
Recipient sent when the transfer was created. In an internal transfer it includes accountId.
Source account, always in your own institution (includes accountId).
Current state (published as a free string: handle unknown values with tolerance). Current values: CREATED, RESERVED, SUBMITTED, PENDING_STR, SETTLED, REJECTED, CANCELLED, AWAITING_RECONCILIATION, EXHAUSTED. TED: CREATED → RESERVED (amount + fee on hold) → SUBMITTED (sent to the STR) → SETTLED | REJECTED; PENDING_STR when the STR keeps the entry pending; AWAITING_RECONCILIATION and EXHAUSTED when the outcome could not be confirmed automatically; CANCELLED on a cancellation before submission or of a confirmed pending entry. INTERNAL: CREATED → SETTLED | REJECTED in the same call. Terminal: SETTLED, REJECTED, CANCELLED.
Amount + fee: the total debited (on hold) from the source account, in BRL.
^(0|[1-9][0-9]{0,11})\.[0-9]{2}$"1500.00"
Transfer identifier. Use it in queries and actions.
TED (another institution, through the STR) or INTERNAL (same institution, settled in the ledger).
TED, INTERNAL Time (UTC) of the last write to the record. This is not always a status change. ⚠️ An INTERNAL transfer can stay in CREATED because the ledger response was undetermined. In that case, the reprocessor uses updatedAt as the queue position on each new attempt, and it moves a transfer whose resend window expired one hour ahead: updatedAt CAN BE IN THE FUTURE (up to 1 h after the current time). Do not use it as a transition time.
Requester reference sent with the transfer request.
64Description given in the send request.
140Free-form key-value pairs from the requester, kept verbatim. Never sent to external systems.
Identifier of the entry assigned by the STR (20 characters, XXXAAAAMMDDnnnnnnnnn).
^[A-Za-z0-9]{20}$SPB identifier of the operation, 23 digits. It can be absent even in status=SUBMITTED. In that case, correlate by railOperationId.
^[0-9]{23}$Identifier of the operation in the rail (after acceptance).
Present only when status=REJECTED.
Instant (UTC) when the amount and fee were put on hold in the source account. Start of the 30-min regulatory deadline for submission.
Return received for this outgoing TED (credit back to the sender). Requires status=SETTLED and a LATER return from the recipient institution. For this reason it never appears in the creation response or in the list items, only in GET /v1/transfers/{transferId}.
Instant of settlement. Exists only from status=SETTLED.
Timestamp (UTC) when the rail accepted the TED for sending to the STR.

