> ## 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.

# Get a price quote

> Ask settlement operators what they would charge on a corridor, without signing anything or moving funds.

A quote request asks settlement operators what they would charge to deliver a payment, without making one. You sign nothing and no funds move: a quote request has no `sender_auth` and needs no private key.

Use it to:

* See which settlement operators serve a corridor and what they charge
* Check a corridor before you send a real payment
* Try Atum safely before you integrate with real funds

## Request quotes

A quote request has the same fields as a payment (see [Prepare a payment](https://docs.atum.xyz/get-started/prepare-a-payment.md)), without `sender_auth`. `max_source_amount` is optional here: leave it out to see every quote, or set it to hide quotes above your budget. The deadlines work as on a payment; see [Deadlines](https://docs.atum.xyz/get-started/concepts/deadlines.md).

> [tab] SDK
>
> ```typescript theme={"theme":"github-dark"}
> const quoteRequest = await client.prepareQuoteRequest({
>   depositor: SENDER,
>   sourceAsset: SOURCE_ASSET,
>   destinationAccount: RECEIVER,
>   destinationAsset: DESTINATION_ASSET,
>   fulfillmentAmount: '10000',
>   requestId: 'quote-order-123',
> });
>
> const response = await client.quoteRequests.createQuoteRequest({
>   requestBody: quoteRequest,
>   wait: true,
> });
> ```
>
> `wait: true` keeps the call open until the quote window ends, for up to 5 seconds, and returns the quotes. With `wait: false` (the API default) you get a `quote_request_id` straight away and poll `GET /v1/payments/quote-requests/{quote_request_id}`.

> [tab] CLI
>
> ```bash theme={"theme":"github-dark"}
> request-quote --gateway https://payment-gw.production-testnet.atum.xyz \
>   --request-id quote-order-123 \
>   "$SENDER" 10000 \
>   "$SOURCE" \
>   "$RECEIVER" \
>   "$DESTINATION"
> ```
>
> The CLI waits for the quotes by default. Pass `--no-wait` to return straight away.

Sending the same `requestId` again returns the same quote request; it does not start a new one.

## Read the quotes

Example response, trimmed:

```json theme={"theme":"github-dark"}
{
  "quote_request_id": "qr_01a11eff-5ae5-752d-acc4-78db436cd1af",
  "status": "ready",
  "requested_count": 1,
  "decline_summary": [],
  "quotes": [
    {
      "quote_id": "0x7cb2…2c40",
      "fulfillment_quote": {
        "settler_address": "0x0eee…6a11",
        "source_amount": "10050",
        "award_deadline": "2026-10-09T04:51:14.015Z"
      }
    }
  ]
}
```

| Field | Meaning |
| - | - |
| `settler_address` | The settlement operator that made the quote. |
| `source_amount` | What would leave your wallet, in [atomic units](https://docs.atum.xyz/get-started/reference/glossary.md#atomic-units) of the source token. This is the price: here 10050 to deliver 10000. |
| `award_deadline` | When the quote expires. The operator chooses it. See [Deadlines](https://docs.atum.xyz/get-started/concepts/deadlines.md#quote-expiry). |

`status` is `collecting` while the quote window is open, `ready` once it has closed, and `expired` when every quote has passed its `award_deadline`. `ready` with an empty `quotes` list means nobody quoted; `decline_summary` says why.

## Pay at a quoted price

A quote does not reserve the price. To pay, [prepare a payment](https://docs.atum.xyz/get-started/prepare-a-payment.md) with its own `request_id` and set `maxSourceAmount` to at least the quoted `source_amount`. The payment collects its own quotes, so the price or the operator can change; leave a small margin.

```typescript theme={"theme":"github-dark"}
import { capFromQuote } from '@atumlabs/payment-gateway-client';

const paymentRequest = await client.preparePaymentRequest({
  depositor: SENDER,
  sourceAsset: SOURCE_ASSET,
  destinationAccount: RECEIVER,
  destinationAsset: DESTINATION_ASSET,
  fulfillmentAmount: '10000',
  maxSourceAmount: capFromQuote('10050', 50), // the quoted price plus 0.5%
  requestId: 'order-123',
});
```

## Next steps

| Topic | Guide |
| - | - |
| Build and sign a payment | [Prepare a payment](https://docs.atum.xyz/get-started/prepare-a-payment.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) |


## Related topics

- [Deadlines](https://docs.atum.xyz/get-started/concepts/deadlines.md)
- [Prepare a payment](https://docs.atum.xyz/get-started/prepare-a-payment.md)
- [Glossary](https://docs.atum.xyz/get-started/reference/glossary.md)
- [Fees: what a payment costs and who pays](https://docs.atum.xyz/get-started/concepts/fees.md)
- [Troubleshooting](https://docs.atum.xyz/get-started/support/troubleshooting.md)


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