Get Quote
Get an indicative quote for an off-ramp conversion. Wraps the upstream provider’s quote API; stateless and not rate-locked.
Authorizations
Bearer authentication with an API token
Query Parameters
Source asset currency. Must be USDC or USDT. Currency of a conversion. The currency can be a stablecoin or a fiat currency.
CONVERSION_CURRENCY_UNSPECIFIED, USDC, USD, MXN, INR, KRW, USDT, GHS, EUR "USDC"
Source blockchain network. e.g., SOLANA_MAINNET, ETHEREUM_MAINNET, BASE_MAINNET. Chain identifier
CHAIN_UNSPECIFIED, ETHEREUM_MAINNET, POLYGON_MAINNET, ETHEREUM_TESTNET, OPTIMISM_SEPOLIA, BASE_MAINNET, BASE_SEPOLIA, OPTIMISM_MAINNET, POLYGON_AMOY, SOLANA_MAINNET, SOLANA_DEVNET "ETHEREUM_MAINNET"
Destination fiat currency. e.g., MXN, INR. Currency of a conversion. The currency can be a stablecoin or a fiat currency.
CONVERSION_CURRENCY_UNSPECIFIED, USDC, USD, MXN, INR, KRW, USDT, GHS, EUR "USDC"
Destination country (ISO 3166-1 alpha-2). Must form a supported corridor with destination_currency and payment_method. ISO 3166-1 alpha-2 country code.
US "US"
Payment rail. Must match an enabled corridor for the destination country. Transfer mechanism for the conversion.
PAYMENT_METHOD_UNSPECIFIED, BLOCKCHAIN, WIRE, SPEI, IMPS_FIRC, BANK_TRANSFER, SEPA "BLOCKCHAIN"
Amount of source currency (USDC or USDT) to convert.
Amount of destination fiat the recipient should receive.
Max all-in source debit (wallet budget). Bastion solves principal + fees.
(OPTIONAL) Override fee model for this quote. Omit to use app config default. Fee model for a conversion.
FEE_MODEL_UNSPECIFIED, INCLUSIVE, DEDUCTED, ON_TOP "INCLUSIVE"
(OPTIONAL) Pin developer fee rate for this quote (e.g. first-remittance promo at 0.00).
(OPTIONAL) Flat developer fee override. Mutually exclusive with developer_fee_percent.
Response
Success
Indicative pricing for an off-ramp conversion. Each quote is persisted and must be referenced by quote_id on submit. Not rate-locked at launch.
FX rate applied.
Per-corridor transaction limits.
Source side of the quote.
Destination side of the quote.
Total fees as a decimal string.
Currency that fees_total is denominated in.
CONVERSION_CURRENCY_UNSPECIFIED, USDC, USD, MXN, INR, KRW, USDT, GHS, EUR "USDC"
Itemized fee breakdown.
Fee model applied to this quote.
FEE_MODEL_UNSPECIFIED, INCLUSIVE, DEDUCTED, ON_TOP "INCLUSIVE"
Bastion quote identifier. Submit as ConversionRequest.quote_id.
When true, exchange_rate and fees_total are guaranteed until expires_at. When false, pricing is indicative only and upstream rates may drift between quote and submit (Walapay/Borderless quotes are typically stable ~5-10 minutes in practice, but Bastion does not enforce a rate lock at launch). Always false at launch. Off-ramp submit requires quote_id with matching source/destination/fee inputs regardless of locked; locked only controls rate/fee guarantee, not whether submit validates quote binding.
Quote expiry (RFC 3339). Submit after this time is rejected with QUOTE_EXPIRED.
Related topics
Off-ramp: Withdraw stablecoin internationallyConversions API overviewSupported off-ramp payout countriesStablecoin on-ramp and off-ramp conversionsGet Conversion