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

# Prepare a payment

> Build and sign a payment request with the SDK or CLI.

A payment request has the same fields as a [quote request](https://docs.atum.xyz/get-started/get-a-price-first.md), plus your signature in `sender_auth`. The signature authorizes the settlement vault to take up to `max_source_amount` of the source token from your wallet. You build and sign the request on your machine; Atum never sees your private key.

## Fields

| Field | Value |
| - | - |
| `depositor` | Your wallet: the account that pays and signs. |
| `sourceAsset` | The token you pay with, as a [CAIP-19](https://docs.atum.xyz/get-started/reference/glossary.md#caip-19) identifier. Copy it from [Supported assets](https://docs.atum.xyz/get-started/reference/supported-assets.md). |
| `destinationAccount` | The recipient's address on the destination chain. |
| `destinationAsset` | The token the recipient receives, as a CAIP-19 identifier. |
| `fulfillmentAmount` | What the recipient receives, in [atomic units](https://docs.atum.xyz/get-started/reference/glossary.md#atomic-units) of the destination token. For USDC, `10000` is 0.01 USDC. |
| `maxSourceAmount` | The most that may leave your wallet: the amount delivered plus the settlement operator's charge, in atomic units of the source token. Quotes above it are not accepted. [Get a price quote](https://docs.atum.xyz/get-started/get-a-price-first.md) to size it. |
| `requestId` | Your [idempotency key](https://docs.atum.xyz/payment-protocols/idempotency.md) for this payment. Reuse it only to retry the same payment. |
| `quoteDeadlineSeconds`, `fulfillmentDeadlineSeconds` | Optional; the SDK fills in defaults when you leave them out. For a large payment, pass a longer `fulfillmentDeadlineSeconds`. See [Choosing a delivery deadline](https://docs.atum.xyz/get-started/concepts/deadlines.md#choosing-a-delivery-deadline). |
| `settlerRequirements` | Optional. Limits which settlement operators may deliver. See [Settlement operators on this payment](https://docs.atum.xyz/get-started/concepts/payment-intent.md#settlement-providers-on-this-payment). |

> [!WARNING]
>
> The same token on two chains is two different assets. Copy the full CAIP-19 identifier, chain included.

## Example

> [tab] SDK
>
> ```typescript theme={"theme":"github-dark"}
> const paymentRequest = await client.preparePaymentRequest({
>   depositor: SENDER,
>   sourceAsset: SOURCE_ASSET,
>   destinationAccount: RECEIVER,
>   destinationAsset: DESTINATION_ASSET,
>   fulfillmentAmount: '10000',
>   maxSourceAmount: '10101',
>   requestId: 'order-123',
> });
> ```
>
> Sign and submit it as in the [SDK quickstart](https://docs.atum.xyz/get-started/start-building/build-with-the-sdk.md#4-send-your-first-payment).

> [tab] CLI
>
> ```bash theme={"theme":"github-dark"}
> send-payment --gateway https://payment-gw.production-testnet.atum.xyz \
>   --request-id order-123 \
>   --max-source-amount 10101 \
>   "$SENDER" 10000 \
>   "$SOURCE" \
>   "$RECEIVER" \
>   "$DESTINATION"
> ```
>
> `send-payment` builds, signs and submits in one step.

Then follow the payment as in [After submission](https://docs.atum.xyz/get-started/after-submission.md).

## Next steps

| Topic | Guide |
| - | - |
| Check prices before you pay | [Get a price quote](https://docs.atum.xyz/get-started/get-a-price-first.md) |
| The quote window and delivery deadline | [Deadlines](https://docs.atum.xyz/get-started/concepts/deadlines.md) |
| Track a payment | [After submission](https://docs.atum.xyz/get-started/after-submission.md) |
| One-time spend approval | [Token approvals](https://docs.atum.xyz/get-started/concepts/permit2-and-approvals.md) |


## Related topics

- [Payment request](https://docs.atum.xyz/get-started/concepts/payment-intent.md)
- [Idempotency](https://docs.atum.xyz/payment-protocols/idempotency.md)
- [Atum payment lifecycle](https://docs.atum.xyz/get-started/how-an-atum-payment-works.md)
- [SDK quickstart](https://docs.atum.xyz/get-started/start-building/build-with-the-sdk.md)
- [Get a price quote](https://docs.atum.xyz/get-started/get-a-price-first.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.