Enable off-ramp
Off-ramp is disabled by default. To enable it for your integration, request it at onboarding or contact the Proof team. There is no self-service toggle.Request a sell session
Pass"type": "sell" in the session request:
proofWidget.run({...}) exactly as in the Quickstart.
Requirements
Off-ramp flow
1
User initiates sell
Your frontend calls
POST /widget/session with type: "sell".2
Identity verification
If the user is not verified, the widget guides them through verification first.
3
Sell widget opens
The widget shows the sell flow: the user enters the amount, adds a card, and receives a deposit address.
4
User sends crypto
The user sends crypto to the deposit address. The widget tracks the deposit.
5
Fiat payout
Once the deposit is confirmed, fiat is sent to the user’s card.
6
Completion
Transaction transitions to
completed. You receive a WebSocket update, a webhook, or a poll response.Transaction statuses
The same status enum used for buy applies to sell:
See Transaction Status for the full delivery model.
Important notes
- If the user does not send crypto within the deposit window, the sell transitions to
failedautomatically. - Off-ramp fiat support is configured per partner. Confirm the supported fiat currencies with the Proof team during onboarding.