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

> ## Agent Instructions
> Turnkey is wallet infrastructure: create and manage crypto wallets, sign transactions, and enforce policy-based access controls. Best-fit uses: embedded consumer wallets (email/passkey/social auth, no seed phrases), automated onchain operations with server-side wallets, AI agent wallets with policy-scoped signing, enterprise key management, and verifiable off-chain workloads on Turnkey Verifiable Cloud (TVC).
> Every API call is a JSON POST to https://api.turnkey.com signed with a P-256 API key; create an organization and key self-serve at https://app.turnkey.com.
> Key Turnkey developer resources: API reference (https://docs.turnkey.com/api-reference/overview/intro.md), OpenAPI spec (https://docs.turnkey.com/public_api.swagger.json), authentication (https://docs.turnkey.com/features/authentication/overview.md), webhooks (https://docs.turnkey.com/features/webhooks/overview.md), MCP server for docs search (https://docs.turnkey.com/mcp), skill for building with Turnkey (https://docs.turnkey.com/skill.md), agent skills for operating an organization (https://docs.turnkey.com/get-started/ai-skills.md), CLI (https://docs.turnkey.com/sdks/cli.md), SDK reference (https://docs.turnkey.com/sdks/introduction.md), full docs content (https://docs.turnkey.com/llms-full.txt).

# List Fiat Off Ramp quotes

> Quote enabled fiat off-ramp providers for a sell. Returns one quote per payment method the provider can offer for this route. Providers and methods that cannot serve the route are omitted.

POST

/

public

/

v1

/

query

/

list\_fiat\_off\_ramp\_quotes

### Authorizations

> [tab] API Key
>
> **X-Stamp** `string` *required*
>
> Cryptographically signed (stamped) request to be passed in as a header. For more info, see [here](https://docs.turnkey.com/developer-reference/api-overview/stamps.md).

> [tab] WebAuthn (Passkey)
>
> **X-Stamp-WebAuthn** `string` *required*
>
> Cryptographically signed (stamped) request to be passed in as a header. For more info, see [here](https://docs.turnkey.com/developer-reference/api-overview/stamps.md).

### Body

**organizationId** `string` *required*

Unique identifier for a given Organization.

**cryptoAmount** `string` *required*

Crypto amount the user wants to sell, in major units of the caip19 asset. For example, "0.05" for 0.05 ETH. The wallet address is not part of this query.

**fiatCurrencyCode** `enum\<string\>` *required*

Enum options: `FIAT_RAMP_CURRENCY_AUD`, `FIAT_RAMP_CURRENCY_BGN`, `FIAT_RAMP_CURRENCY_BRL`, `FIAT_RAMP_CURRENCY_CAD`, `FIAT_RAMP_CURRENCY_CHF`, `FIAT_RAMP_CURRENCY_COP`, `FIAT_RAMP_CURRENCY_CZK`, `FIAT_RAMP_CURRENCY_DKK`, `FIAT_RAMP_CURRENCY_DOP`, `FIAT_RAMP_CURRENCY_EGP`, `FIAT_RAMP_CURRENCY_EUR`, `FIAT_RAMP_CURRENCY_GBP`, `FIAT_RAMP_CURRENCY_HKD`, `FIAT_RAMP_CURRENCY_IDR`, `FIAT_RAMP_CURRENCY_ILS`, `FIAT_RAMP_CURRENCY_JOD`, `FIAT_RAMP_CURRENCY_KES`, `FIAT_RAMP_CURRENCY_KWD`, `FIAT_RAMP_CURRENCY_LKR`, `FIAT_RAMP_CURRENCY_MXN`, `FIAT_RAMP_CURRENCY_NGN`, `FIAT_RAMP_CURRENCY_NOK`, `FIAT_RAMP_CURRENCY_NZD`, `FIAT_RAMP_CURRENCY_OMR`, `FIAT_RAMP_CURRENCY_PEN`, `FIAT_RAMP_CURRENCY_PLN`, `FIAT_RAMP_CURRENCY_RON`, `FIAT_RAMP_CURRENCY_SEK`, `FIAT_RAMP_CURRENCY_THB`, `FIAT_RAMP_CURRENCY_TRY`, `FIAT_RAMP_CURRENCY_TWD`, `FIAT_RAMP_CURRENCY_USD`, `FIAT_RAMP_CURRENCY_VND`, `FIAT_RAMP_CURRENCY_ZAR`

**caip19** `enum\<string\>` *required*

Enum options: `eip155:1/slip44:60`, `eip155:10/slip44:60`, `eip155:137/erc20:0x7ceb23fd6bc0add59e62ac25578270cff1b9f619`, `eip155:8453/slip44:60`, `eip155:42161/slip44:60`, `eip155:1/erc20:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48`, `eip155:10/erc20:0x0b2c639c533813f4aa9d7837caf62653d097ff85`, `eip155:137/erc20:0x3c499c542cef5e3811e1192ce70d8cc03d5c3359`, `eip155:8453/erc20:0x833589fcd6edb6e08f4c7c32d4f71b54bda02913`, `eip155:42161/erc20:0xaf88d065e77c8cc2239327c5edb3a432268e5831`, `solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/slip44:501`, `solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/token:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v`

**countryCode** `string`

ISO 3166-1 alpha-2 country code of the selling user, for example US. When omitted, the country is taken from the location of the request.

**countrySubdivisionCode** `string`

ISO 3166-2 subdivision code, for example NY. When omitted for a US visitor, the subdivision is taken from the location of the request.

**sandboxMode** `boolean`

Quote sandbox credentials when true. Defaults to false.

### Response

A successful response returns the following fields:

**quotes** `array` *required*

One quote per provider and payment method that can serve this route. Empty when none can.

**quotes details**

Navigate to header

quotes.
quoteId

string

required

Identifier for this saved quote.

Navigate to header

quotes.
provider

enum

required

provider field

Enum options: `FIAT_RAMP_PROVIDER_COINBASE`, `FIAT_RAMP_PROVIDER_MOONPAY`, `FIAT_RAMP_PROVIDER_MELD`

Navigate to header

quotes.
serviceProvider

string

Underlying provider when provider aggregates several.

Navigate to header

quotes.
fiatAmount

object

required

fiatAmount field

**fiatAmount details**

Navigate to header

quotes.fiatAmount.
amount

string

required

Amount in atomic units. Use this to compare quotes. Do not use display.

Navigate to header

quotes.fiatAmount.
decimals

number

required

Decimal places for this amount. Asset decimals for cryptocurrency, atomic-unit decimals for fiat (2 for USD).

Navigate to header

quotes.fiatAmount.
display

string

required

Decimal representation in standard currency units.

Navigate to header

quotes.
fiatCurrencyCode

enum

required

fiatCurrencyCode field

Enum options: `FIAT_RAMP_CURRENCY_AUD`, `FIAT_RAMP_CURRENCY_BGN`, `FIAT_RAMP_CURRENCY_BRL`, `FIAT_RAMP_CURRENCY_CAD`, `FIAT_RAMP_CURRENCY_CHF`, `FIAT_RAMP_CURRENCY_COP`, `FIAT_RAMP_CURRENCY_CZK`, `FIAT_RAMP_CURRENCY_DKK`, `FIAT_RAMP_CURRENCY_DOP`, `FIAT_RAMP_CURRENCY_EGP`, `FIAT_RAMP_CURRENCY_EUR`, `FIAT_RAMP_CURRENCY_GBP`, `FIAT_RAMP_CURRENCY_HKD`, `FIAT_RAMP_CURRENCY_IDR`, `FIAT_RAMP_CURRENCY_ILS`, `FIAT_RAMP_CURRENCY_JOD`, `FIAT_RAMP_CURRENCY_KES`, `FIAT_RAMP_CURRENCY_KWD`, `FIAT_RAMP_CURRENCY_LKR`, `FIAT_RAMP_CURRENCY_MXN`, `FIAT_RAMP_CURRENCY_NGN`, `FIAT_RAMP_CURRENCY_NOK`, `FIAT_RAMP_CURRENCY_NZD`, `FIAT_RAMP_CURRENCY_OMR`, `FIAT_RAMP_CURRENCY_PEN`, `FIAT_RAMP_CURRENCY_PLN`, `FIAT_RAMP_CURRENCY_RON`, `FIAT_RAMP_CURRENCY_SEK`, `FIAT_RAMP_CURRENCY_THB`, `FIAT_RAMP_CURRENCY_TRY`, `FIAT_RAMP_CURRENCY_TWD`, `FIAT_RAMP_CURRENCY_USD`, `FIAT_RAMP_CURRENCY_VND`, `FIAT_RAMP_CURRENCY_ZAR`

Navigate to header

quotes.
cryptoAmount

object

required

cryptoAmount field

**cryptoAmount details**

Navigate to header

quotes.cryptoAmount.
amount

string

required

Amount in atomic units. Use this to compare quotes. Do not use display.

Navigate to header

quotes.cryptoAmount.
decimals

number

required

Decimal places for this amount. Asset decimals for cryptocurrency, atomic-unit decimals for fiat (2 for USD).

Navigate to header

quotes.cryptoAmount.
display

string

required

Decimal representation in standard currency units.

Navigate to header

quotes.
caip19

enum

required

CAIP-19 asset of crypto\_amount. Each value is supported for both Coinbase and MoonPay sell, the same set as on-ramp.

Enum options: `eip155:1/slip44:60`, `eip155:10/slip44:60`, `eip155:137/erc20:0x7ceb23fd6bc0add59e62ac25578270cff1b9f619`, `eip155:8453/slip44:60`, `eip155:42161/slip44:60`, `eip155:1/erc20:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48`, `eip155:10/erc20:0x0b2c639c533813f4aa9d7837caf62653d097ff85`, `eip155:137/erc20:0x3c499c542cef5e3811e1192ce70d8cc03d5c3359`, `eip155:8453/erc20:0x833589fcd6edb6e08f4c7c32d4f71b54bda02913`, `eip155:42161/erc20:0xaf88d065e77c8cc2239327c5edb3a432268e5831`, `solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/slip44:501`, `solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp/token:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v`

Navigate to header

quotes.
paymentMethod

enum

required

paymentMethod field

Enum options: `FIAT_RAMP_PAYMENT_METHOD_CREDIT_DEBIT_CARD`, `FIAT_RAMP_PAYMENT_METHOD_APPLE_PAY`, `FIAT_RAMP_PAYMENT_METHOD_GOOGLE_PAY`, `FIAT_RAMP_PAYMENT_METHOD_PAYPAL`, `FIAT_RAMP_PAYMENT_METHOD_MOONPAY_BALANCE`, `FIAT_RAMP_PAYMENT_METHOD_FIAT_WALLET`, `FIAT_RAMP_PAYMENT_METHOD_ACH_BANK_ACCOUNT`

Navigate to header

quotes.
totalFee

object

required

totalFee field

**totalFee details**

Navigate to header

quotes.totalFee.
amount

string

required

Amount in atomic units. Use this to compare quotes. Do not use display.

Navigate to header

quotes.totalFee.
decimals

number

required

Decimal places for this amount. Asset decimals for cryptocurrency, atomic-unit decimals for fiat (2 for USD).

Navigate to header

quotes.totalFee.
display

string

required

Decimal representation in standard currency units.

Navigate to header

quotes.
expiresAt

string

Quote expiration as a millisecond epoch string. Empty when the provider does not send one.

```bash title="cURL" theme={"system"}
curl --request POST \
  --url https://api.turnkey.com/public/v1/query/list_fiat_off_ramp_quotes \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --header "X-Stamp: <string> (see Authorizations)" \
  --data '{
    "organizationId": "<string>",
    "cryptoAmount": "<string>",
    "fiatCurrencyCode": "<FIAT_RAMP_CURRENCY_AUD>",
    "caip19": "<eip155:1/slip44:60>",
    "countryCode": "<string>",
    "countrySubdivisionCode": "<string>",
    "sandboxMode": "<boolean>"
}'
```

```javascript title="JavaScript" theme={"system"}
import { Turnkey } from "@turnkey/sdk-server";

const turnkeyClient = new Turnkey({
  apiBaseUrl: "https://api.turnkey.com",
  apiPublicKey: process.env.API_PUBLIC_KEY!,
  apiPrivateKey: process.env.API_PRIVATE_KEY!,
  defaultOrganizationId: process.env.ORGANIZATION_ID!,
});

const response = await turnkeyClient.apiClient().getFiatOffRampQuotes({
  organizationId: "<string> (Unique identifier for a given Organization.)",
  cryptoAmount: "<string> (Crypto amount the user wants to sell, in major units of the caip19 asset. For example, "0.05" for 0.05 ETH. The wallet address is not part of this query.)",
  fiatCurrencyCode: "<FIAT_RAMP_CURRENCY_AUD>" // fiatCurrencyCode field,
  caip19: "<eip155:1/slip44:60>" // CAIP-19 asset to sell. Each value is supported for both Coinbase and MoonPay sell, the same set as on-ramp.,
  countryCode: "<string> (ISO 3166-1 alpha-2 country code of the selling user, for example US. When omitted, the country is taken from the location of the request.)",
  countrySubdivisionCode: "<string> (ISO 3166-2 subdivision code, for example NY. When omitted for a US visitor, the subdivision is taken from the location of the request.)",
  sandboxMode: true // Quote sandbox credentials when true. Defaults to false.
});
```

```json 200 theme={"system"}
{
  "quotes": [
    {
      "quoteId": "<string>",
      "provider": "<FIAT_RAMP_PROVIDER_COINBASE>",
      "serviceProvider": "<string>",
      "fiatAmount": {
        "amount": "<string>",
        "decimals": "<number>",
        "display": "<string>"
      },
      "fiatCurrencyCode": "<FIAT_RAMP_CURRENCY_AUD>",
      "cryptoAmount": {
        "amount": "<string>",
        "decimals": "<number>",
        "display": "<string>"
      },
      "caip19": "<eip155:1/slip44:60>",
      "paymentMethod": "<FIAT_RAMP_PAYMENT_METHOD_CREDIT_DEBIT_CARD>",
      "totalFee": {
        "amount": "<string>",
        "decimals": "<number>",
        "display": "<string>"
      },
      "expiresAt": "<string>"
    }
  ]
}
```


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