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

# Off-ramp

> Settle a user's crypto to a linked fiat account via a hosted ramp session.

Off-ramp is the crypto-to-fiat direction of the ramp primitive. You create a session with a crypto source and a fiat destination — the user opens the hosted ramp session, the wallet is debited and the fiat payout routed, and the resulting transaction appears on `/v0/ramp/transactions` with `transaction_type` set to `CRYPTO_SELL`.

<Snippet file="product-term-disambiguation.mdx" />

## Prerequisites

* A KYC-verified Sumvin user.
* A funded wallet holding the crypto you want to sell.
* A fiat destination the ramp can pay out to. In practice this is a bank account linked through [Bank linking](/products/ramps/bank-linking), matching the user's country and fiat currency.

Without a linked fiat destination, a quote may return but the session creation will fail or the transaction will stall at the payout step.

## Mechanics

Off-ramp uses the same endpoints as buy and sell:

* `GET /v0/ramp/quotes` — quote a fiat amount you will receive for a given crypto amount.
* `POST /v0/ramp/sessions` — open a hosted widget for the user to authorise and settle.
* `GET /v0/ramp/transactions` — poll for settlement. The `status` lifecycle (`pending` → `processing` → `completed`) is the same as the on-ramp direction.

The [on-ramp quickstart](/guides/quickstarts/onramp-meld) walks the full flow with code samples. For off-ramp, swap `from_asset` and `to_asset` so crypto is the source and fiat the destination; `chain_id` stays the same (it always describes the crypto leg). Pass the user's wallet address as the debit origin.

This direction is in private preview while payout-corridor coverage expands.

## Payment method coverage

Off-ramp payouts run over bank rails, not card rails. Expect `payment_method_type` values along the lines of `ACH`, `SEPA`, `BANK_TRANSFER`, or `LOCAL_BANK_TRANSFER` depending on the user's country. `GET /v0/ramp/quotes` is the authoritative live list — filter with `payment_method_type` to preview what a single rail looks like, or omit it to let Sumvin rank the options.

Service provider coverage differs from on-ramp: the set of providers returned by `service_provider` on a sell quote is typically narrower than on a buy quote. An empty `quotes` response for an off-ramp pair usually means no provider supports that corridor for the user's country right now — widen the country or amount and re-quote.

## Settlement timing

On-chain debit completes in seconds. Fiat payout timing depends on the rail: ACH typically settles 1–3 business days, SEPA same-day to next-day for euro area, local bank transfers vary by country. The ramp transaction stays in `processing` until the payout confirms, then moves to `completed`.

<Note>
  The `meld_status` field on a transaction mirrors provider-side state while the payout leg runs. Surface it when debugging a transaction that has been `processing` longer than expected.
</Note>

## Related

* [On-ramp quickstart](/guides/quickstarts/onramp-meld) — the ramp session flow end-to-end
* [Bank linking](/products/ramps/bank-linking) — set up the fiat destination
* [Buy and sell](/products/ramps/buy-sell) — on-ramp and sell direction
* [Reference](/products/ramps/reference) — error codes for ramp failures
