arrow-right-arrow-leftOff Ramp

Off-ramp operations (crypto to fiat) — sell crypto and receive fiat

Get off-ramp price estimate

post
/api/v1/partner/offramp/estimate

Get indicative off-ramp pricing (crypto to fiat) without creating a quote. This endpoint is lightweight and does not reserve liquidity.

Use this when you need quick pricing discovery before calling /partner/offramp/quote. Optional filters: payment_method_slug, payment_network_slug, provider_scope, country_code. This endpoint is indicative and does not apply user/payment-details ownership checks; for executable pricing use quote.

Authorizations
X-API-KeystringRequired

Partner API key for authentication. Required for all partner account endpoints.

Body
anyOptional
or
anyOptional
Responses
chevron-right
200

Estimate retrieved successfully

application/json
post
/api/v1/partner/offramp/estimate

Get off-ramp quote

post
/api/v1/partner/offramp/quote

Get a price quote for an off-ramp operation (crypto to fiat). Returns the exchange rate, amounts, and a quote ID that can be used to initiate the order. Quotes expire after 60 seconds.

The user_id is the internal integer user ID returned by POST /partner/users (in the internal_id field). The payment_details_id is the ID of a previously created payment profile for the user.

Fee structure: The fee_breakdown object shows all fee components transparently: platform_fee (our fee in crypto), partner_fee (partner's markup, currently 0, configurable via dashboard in a future release), and total_fee (sum of both).

Authorizations
X-API-KeystringRequired

Partner API key for authentication. Required for all partner account endpoints.

Body
user_idinteger · int64Required

Internal user ID (integer, from POST /partner/users response internal_id field)

Example: 12345
payment_details_idinteger · int64Required

ID of a previously created payment profile for the user

Example: 987
crypto_currencystringRequired

Cryptocurrency code (e.g., USDT, USDC)

Example: USDT
crypto_amountstringRequired

Amount of crypto to sell (standard units, e.g., "100.00" for 100 USDT)

Example: 100.00
fiat_currencystringRequired

Target fiat currency code (e.g., NGN, USD, EUR)

Example: NGN
railstringOptional

Optional rail hint; must be compatible with payment details if provided

Example: Bank Transfer
routestringOptional

Optional route hint; must be compatible with payment details if provided

Example: Instant Transfer
provider_scopestring · enumOptional

Optional provider scope filter; defaults to all

Example: allPossible values:
Responses
chevron-right
200

Quote retrieved successfully

application/json
post
/api/v1/partner/offramp/quote

Initiate off-ramp order

post
/api/v1/partner/offramp/initiate

Initiate an off-ramp order using a previously obtained quote. The quote must still be active (not expired or already used). The system refreshes the price and checks slippage tolerance before creating the order.

If the price has moved beyond the slippage tolerance, a PRICE_CHANGED_REQUOTE error is returned with details about the old and new rates, so the partner can request a new quote.

On success, returns the created order with status awaiting_liquidity_provider.

Authorizations
X-API-KeystringRequired

Partner API key for authentication. Required for all partner account endpoints.

Body
quote_idstring · uuidRequired

Quote ID from the quote endpoint. Payment details are taken from the quote.

Example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
Responses
post
/api/v1/partner/offramp/initiate

Last updated