---
api: 'Crypto Ramp API'
---

# Retrieve a sell order

Use this endpoint for the sell (off-ramp) flow.
Retrieve a sell order by the `order_id` provided in the path. This is the same identifier you passed as `orderId` when calling [`/sell`](https://developer.revolut.com/docs/api/crypto-ramp#retrieve-a-sell-redirect-url).

## Endpoint

GET `/sell-orders/{order_id}`

## Parameters

### header parameters

- `X-API-KEY` (any, optional)
  Your API key that you received during integration setup. 
  For more information, see the **Authorization** section.

### path parameters

- `order_id` (string, required)
  The external identifier of the sell order to retrieve.
  Should be either UUID or ULID.

## Returns

### 200

OK

#### Response attributes

- `id` (string, optional)
    Your external identifier for the sell order.
    Returned only if `orderId` was provided when the sell session was created.
- `fiat` (object)
    The fiat amount paid to the customer.
    Until the order is completed, this is the estimated payout amount.
  - `fiat.amount` (number)
      The amount.
  - `fiat.currency` (string)
      The fiat currency [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code.
- `crypto` (object)
    The crypto amount that the customer sells.
  - `crypto.amount` (number)
      The amount.
  - `crypto.currencyId` (string)
      The ID of the currency, obtained from the [`/config`](https://developer.revolut.com/docs/api/crypto-ramp#retrieve-configuration) or [`/sell-config`](https://developer.revolut.com/docs/api/crypto-ramp#retrieve-sell-configuration) endpoint.
- `fees` (object)
    The fees for the sell order.
    Until the order is completed, these are the estimated fees.
  - `fees.ramp_fee` (object)
      Revolut Ramp fee, excluding the partner fee.
    - `fees.ramp_fee.amount` (number)
        The amount.
    - `fees.ramp_fee.currency` (string)
        The fiat currency [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code.
  - `fees.partner_fee` (object, optional)
      Partner fee. Absent if no partner fee applies.
      Unlike the buy flow, the sell flow does not support a per-request fee percentage; the partner fee is determined by your partner configuration agreed with Revolut.
    - `fees.partner_fee.amount` (number)
        The amount.
    - `fees.partner_fee.currency` (string)
        The fiat currency [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code.
- `exchange_rate` (number)
    The crypto-to-fiat exchange rate for the sell order.
    Until the order is completed, this is the estimated exchange rate.
- `payment` (enum)
    The payout method used to receive the fiat proceeds.
    Possible enum values:

    - `revolut`
- `created_at` (string)
    The UTC date and time of sell order creation in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
- `updated_at` (string)
    The UTC date and time of the latest sell order update in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
- `status` (enum)
    The status of a sell order.
    
    - `AWAITING_DEPOSIT`: The order is awaiting the customer's crypto deposit.
    - `PROCESSING`: The crypto deposit was received and the order is being processed.
    - `COMPLETED`: The fiat payout was completed.
    - `FAILED`: The order reached a terminal failure outcome. See `fail_reason` for the public outcome reason.
    Possible enum values:

    - `AWAITING_DEPOSIT`
    - `PROCESSING`
    - `COMPLETED`
    - `FAILED`
- `fail_reason` (enum, optional)
    The public outcome reason returned when the sell order status is `FAILED`.
    
    - `EXPIRED`: The expected crypto deposit was not received in time.
    - `REFUNDED`: The deposited crypto was returned.
    - `FAILED`: The order failed without a more specific public outcome.
    - `CREDITED_AS_CRYPTO`: The order breached the slippage threshold and the customer was credited in crypto.
    Possible enum values:

    - `EXPIRED`
    - `REFUNDED`
    - `FAILED`
    - `CREDITED_AS_CRYPTO`
- `wallet` (string, optional)
    The crypto wallet address from which the customer sends the crypto for the sell order.
- `transaction_hash` (string, optional)
    The blockchain deposit transaction hash.
    Absent if no crypto deposit transaction has been associated with the order yet.
- `fees_partner_currency` (object)
    The fees converted to the partner's currency.
    This object is always returned; it is returned as `{}` when a partner exchange rate is not available.
  - `fees_partner_currency.ramp_fee` (object, optional)
      Revolut Ramp fee in the partner's currency.
    - `fees_partner_currency.ramp_fee.amount` (number)
        The amount.
    - `fees_partner_currency.ramp_fee.currency` (string)
        The fiat currency [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code.
  - `fees_partner_currency.partner_fee` (object, optional)
      Partner fee in the partner's currency.
    - `fees_partner_currency.partner_fee.amount` (number)
        The amount.
    - `fees_partner_currency.partner_fee.currency` (string)
        The fiat currency [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code.

## Error responses

| HTTP status code | Description |
| --- | --- |
| 400 | Bad request  A request parameter is invalid. |
| 401 | Unauthorized |
| 404 | Resource cannot be found |
| 429 | Too Many Requests |
| 500 | Server error  An unexpected error occurred. |
| 503 | The endpoint is disabled by Kill Switch |
