---
title: "Quote PayOrder"
method: POST
path: "/pay-orders/{payorder_id}/quote"
tags: ["pay-orders"]
---

# Quote PayOrder

`POST /pay-orders/{payorder_id}/quote`

Get payment quotes for a PayOrder

## Path parameters

- `payorder_id` string, required

## Headers

- `X-API-KEY` string, required

## Request body

- OrderQuoteRequest
  - `wallet_address` string, required
  - `chain_type` 'EVM' | 'SOL' | 'SUI' | 'UTXO', required
  - `chain_ids` ChainID[]

## Response `200`

Quote results

- object[]
  - `id` string, required
  - `address` string, nullable
  - `chain_id` 1 | 10 | 56 | 137 | 8453 | 42161 | 20000000000001 | 30000000000001 | 30000000000002, required
  - `decimals` integer, required
  - `name` string, required
  - `ticker` string, required
  - `image_uri` string, nullable
  - `price_usd` number, nullable
  - `currency_amount` CurrencyAmount, required
    - `ui_amount` number, required — Approximate numeric amount. Do not use for payment construction; use raw_amount for exact amounts and ui_amount_display for display.
    - `ui_amount_display` string, required
    - `raw_amount` string, required — A big integer represented as a string to preserve precision
    - `value_usd` number, required
  - `amount_out_minimum` CurrencyAmount
    - `ui_amount` number, required — Approximate numeric amount. Do not use for payment construction; use raw_amount for exact amounts and ui_amount_display for display.
    - `ui_amount_display` string, required
    - `raw_amount` string, required — A big integer represented as a string to preserve precision
    - `value_usd` number, required
  - `total` CurrencyAmount, required
    - `ui_amount` number, required — Approximate numeric amount. Do not use for payment construction; use raw_amount for exact amounts and ui_amount_display for display.
    - `ui_amount_display` string, required
    - `raw_amount` string, required — A big integer represented as a string to preserve precision
    - `value_usd` number, required
  - `base` CurrencyAmount, required
    - `ui_amount` number, required — Approximate numeric amount. Do not use for payment construction; use raw_amount for exact amounts and ui_amount_display for display.
    - `ui_amount_display` string, required
    - `raw_amount` string, required — A big integer represented as a string to preserve precision
    - `value_usd` number, required
  - `fees` FeeBreakdown
    - `total_fee` CurrencyAmount, required
      - `ui_amount` number, required — Approximate numeric amount. Do not use for payment construction; use raw_amount for exact amounts and ui_amount_display for display.
      - `ui_amount_display` string, required
      - `raw_amount` string, required — A big integer represented as a string to preserve precision
      - `value_usd` number, required
    - `protocol_fee` CurrencyAmount
      - `ui_amount` number, required — Approximate numeric amount. Do not use for payment construction; use raw_amount for exact amounts and ui_amount_display for display.
      - `ui_amount_display` string, required
      - `raw_amount` string, required — A big integer represented as a string to preserve precision
      - `value_usd` number, required
    - `custom_fee` CurrencyAmount
      - `ui_amount` number, required — Approximate numeric amount. Do not use for payment construction; use raw_amount for exact amounts and ui_amount_display for display.
      - `ui_amount_display` string, required
      - `raw_amount` string, required — A big integer represented as a string to preserve precision
      - `value_usd` number, required
    - `relayer_fee` CurrencyAmount
      - `ui_amount` number, required — Approximate numeric amount. Do not use for payment construction; use raw_amount for exact amounts and ui_amount_display for display.
      - `ui_amount_display` string, required
      - `raw_amount` string, required — A big integer represented as a string to preserve precision
      - `value_usd` number, required
  - `gas` CurrencyAmount
    - `ui_amount` number, required — Approximate numeric amount. Do not use for payment construction; use raw_amount for exact amounts and ui_amount_display for display.
    - `ui_amount_display` string, required
    - `raw_amount` string, required — A big integer represented as a string to preserve precision
    - `value_usd` number, required
  - `balance` CurrencyAmount
    - `ui_amount` number, required — Approximate numeric amount. Do not use for payment construction; use raw_amount for exact amounts and ui_amount_display for display.
    - `ui_amount_display` string, required
    - `raw_amount` string, required — A big integer represented as a string to preserve precision
    - `value_usd` number, required
  - `quote_id` string
  - `output` CurrencyWithAmount, required
    - `id` string, required
    - `address` string, nullable
    - `chain_id` 1 | 10 | 56 | 137 | 8453 | 42161 | 20000000000001 | 30000000000001 | 30000000000002, required
    - `decimals` integer, required
    - `name` string, required
    - `ticker` string, required
    - `image_uri` string, nullable
    - `price_usd` number, nullable
    - `currency_amount` CurrencyAmount, required
      - `ui_amount` number, required — Approximate numeric amount. Do not use for payment construction; use raw_amount for exact amounts and ui_amount_display for display.
      - `ui_amount_display` string, required
      - `raw_amount` string, required — A big integer represented as a string to preserve precision
      - `value_usd` number, required
    - `amount_out_minimum` CurrencyAmount
      - `ui_amount` number, required — Approximate numeric amount. Do not use for payment construction; use raw_amount for exact amounts and ui_amount_display for display.
      - `ui_amount_display` string, required
      - `raw_amount` string, required — A big integer represented as a string to preserve precision
      - `value_usd` number, required
  - `swap_mode` 'ExactIn' | 'ExactOut', required
  - `providers` string[]
  - `slippage_bps` integer, nullable
  - `price_impact` number, required

## Other responses

- `400` — Bad Request - Quote destination amount required
- `401` — Unauthorized - Authentication required
- `404` — Not Found - PayOrder not found
- `422` — Unprocessable Entity - Invalid request body format
- `500` — Internal Server Error

---

[API](https://skmtc.net/coinvoyage/apis/coinvoyage-api.md) · [All operations](https://skmtc.net/coinvoyage/apis/coinvoyage-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/coinvoyage/coinvoyage-api/revisions/29e628200554/schema)
