> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tesouro.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Money movement

> Move funds across Tesouro's four payment rails — internal book, ACH, RTP, and FedNow.

Tesouro exposes four payment rails. Pick the rail by use case: internal sweep, same-day settlement, real-time receipt, or cross-bank push. Each has different speed, availability, limits, and reversibility characteristics.

<Warning>
  Every rail accepts an `idempotencyKey`, and you should treat it as required in production. It is
  the only protection against duplicate transfers when a request times out or is retried. See
  [Lifecycle & idempotency](/embedded-banking/guides/money-movement/lifecycle#idempotency).
</Warning>

## Rail comparison

| Rail     | Speed                      | Direction        | Availability  | Max per transfer |
| :------- | :------------------------- | :--------------- | :------------ | :--------------- |
| Internal | Instant                    | Internal only    | 24/7          | No service cap   |
| ACH      | One to three business days | Send and receive | Business days | Set by bank      |
| RTP      | Seconds, irrevocable       | Send and receive | 24/7/365      | \$10M (TCH)      |
| FedNow   | Seconds, irrevocable       | Send and receive | 24/7/365      | \$10M (Fed)      |

## Prerequisites

| Prerequisite           | Notes                                                                                                                           |
| :--------------------- | :------------------------------------------------------------------------------------------------------------------------------ |
| Internal account       | An open, funded deposit account opened through the [onboarding flow](/embedded-banking/guides/embedded-components/onboarding).  |
| External account       | A pre-linked external account (see [Linked accounts](/embedded-banking/guides/embedded-components/linked-accounts)) for ACH.    |
| Authentication         | A bearer token with `embedded:transfer:write`. ACH, RTP, and FedNow additionally need their per-rail scope.                     |
| Org rail configuration | The caller's organization must have the rail enabled (managed in the Profile service). A rail that isn't enabled returns `403`. |

## Next steps

* [Linked accounts](/embedded-banking/guides/embedded-components/linked-accounts) — how to link external accounts before ACH push/pull works.
* [Authentication](/embedded-banking/guides/authentication/overview) — scope wiring and token issuance.
