Skip to main content
POST
Create OTC Withdrawal Order

Overview

This page documents the POST /withdraw/open/otc/api/order/create endpoint. The full schema, parameters, and examples are rendered from the linked OpenAPI definition above.

Notes

Usage Guidance

  • Create the order with a fresh quote token.
  • Make sure the bank account used in the request is already approved and available for settlement.
  • Store the expected fiat amount, trade fee fields, and final settlement information for reconciliation.
  • Use callback plus detail query rather than relying on creation response alone.

Headers

X-GatePay-Certificate-ClientId
string
required

Merchant application client ID used to identify the calling app.

X-GatePay-Signature
string
required

HMAC signature generated from the request according to GatePay signing rules.

X-GatePay-Timestamp
string
required

Millisecond timestamp; the difference from server time must not exceed 30 seconds.

X-GatePay-Nonce
string
required

Random nonce used together with the timestamp to prevent replay attacks.

Body

application/json
quoteToken
string
required

Quote token returned by the quote API.

bankAccountId
string
required

Destination bank account ID for fiat settlement.

cryptoCurrency
string
required

Cryptocurrency being sold. Currently supported: USDT, USDC.

fiatCurrency
string
required

Fiat currency to be settled out. Currently supported: USD.

cryptoAmount
string
required

Crypto amount for the withdrawal order.

fiatAmount
string
required

Expected fiat settlement amount.

type
string
required

Order type. Use SELL for off-ramp.

clientOrderId
string
required

Merchant-defined unique order ID.

Response

200 - application/json

Success

code
string

Business response code.

status
string

Top-level request status.

errorMessage
string

Error message when the request fails.

data
object

Order detail payload.