> For the complete documentation index, see [llms.txt](https://docs.alignlabs.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.alignlabs.dev/align-api/offramp-transfers/create-quote.md).

# Create Quote

## POST /v0/customers/{customer\_id}/offramp-transfer/quote

> Create Offramp Transfer Quote

```json
{"openapi":"3.0.0","info":{"title":"Offramp API","version":"0"},"servers":[{"url":"https://api.alignlabs.dev","description":"Production server"},{"url":"https://api-sandbox.alignlabs.dev","description":"Sandbox server"}],"paths":{"/v0/customers/{customer_id}/offramp-transfer/quote":{"post":{"summary":"Create Offramp Transfer Quote","parameters":[{"name":"customer_id","in":"path","description":"The unique identifier of the customer","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"Api-Key","in":"header","description":"Your secret API key, available in the developer dashboard. Include this header on every request to authenticate your application.","required":true,"schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Unique key to prevent duplicate requests","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["source_token","source_network","destination_currency","destination_payment_rails"],"oneOf":[{"title":"By Source Amount","properties":{"source_amount":{"type":"string","pattern":"^[0-9]+(\\.[0-9]+)?$","description":"The amount of source token to offramp (required when calculating quote from source to destination)"},"source_token":{"type":"string","enum":["usdc","usdt","eurc"],"description":"The token to offramp"},"source_network":{"type":"string","enum":["polygon","ethereum","solana","base","arbitrum"],"description":"The blockchain network for the source token"},"destination_currency":{"type":"string","enum":["usd","eur","aed"],"description":"The fiat currency to receive"},"destination_payment_rails":{"type":"string","enum":["ach","wire","sepa","swift","uaefts"],"description":"The payment rails to use for fiat transfer"},"developer_fee_percent":{"type":"string","pattern":"^[0-9]+(\\.[0-9]+)?$","description":"Custom developer fee percentage for the quote"}}},{"title":"By Destination Amount","properties":{"source_token":{"type":"string","enum":["usdc","usdt","eurc"],"description":"The token to offramp"},"source_network":{"type":"string","enum":["polygon","ethereum","solana","base","arbitrum"],"description":"The blockchain network for the source token"},"destination_amount":{"type":"string","pattern":"^[0-9]+(\\.[0-9]+)?$","description":"The amount of fiat currency to receive (required when calculating quote from destination to source)"},"destination_currency":{"type":"string","enum":["usd","eur","aed"],"description":"The fiat currency to receive"},"destination_payment_rails":{"type":"string","enum":["ach","wire","sepa","swift","uaefts"],"description":"The payment rails to use for fiat transfer"},"developer_fee_percent":{"type":"string","pattern":"^[0-9]+(\\.[0-9]+)?$","description":"Custom developer fee percentage for the quote"}}}],"description":"Either source_amount OR destination_amount must be provided to calculate the quote in the desired direction"}}}},"responses":{"201":{"description":"Quote created successfully","content":{"application/json":{"schema":{"type":"object","required":["quote_id","source_amount","source_token","source_network","destination_currency","destination_payment_rails","destination_amount","exchange_rate","expire_at"],"properties":{"quote_id":{"type":"string","format":"uuid"},"source_amount":{"type":"string","pattern":"^[0-9]+(\\.[0-9]+)?$"},"source_token":{"type":"string"},"source_network":{"type":"string"},"destination_currency":{"enum":["usd","eur"],"type":"string"},"destination_payment_rails":{"type":"string"},"destination_amount":{"type":"string","pattern":"^[0-9]+(\\.[0-9]+)?$"},"fee_amount":{"type":"string"},"exchange_rate":{"type":"string","pattern":"^[0-9]+(\\.[0-9]+)?$"},"expire_at":{"type":"string","format":"date-time","description":"UTC timestamp after which the quote can no longer be used to create a transfer"}}}}}}}}}}}
```
