Skip to main content
POST
/
open
/
otc
/
api
/
recharge
Create OTC Deposit Order
curl --request POST \
  --url https://openplatform.gateapi.io/open/otc/api/recharge \
  --header 'Content-Type: application/json' \
  --header 'X-GatePay-Certificate-ClientId: <x-gatepay-certificate-clientid>' \
  --header 'X-GatePay-Nonce: <x-gatepay-nonce>' \
  --header 'X-GatePay-Signature: <x-gatepay-signature>' \
  --header 'X-GatePay-Timestamp: <x-gatepay-timestamp>' \
  --data '
{
  "quoteToken": "qt_01JXYZABCDEF",
  "bankAccountId": "ba_123456789",
  "cryptoCurrency": "USDT",
  "fiatCurrency": "USD",
  "cryptoAmount": "1088.42",
  "fiatAmount": "1000",
  "type": "BUY",
  "clientOrderId": "merchant-otc-deposit-20260415-001"
}
'
{
  "code": "0",
  "message": "success",
  "status": "success",
  "data": {
    "orderId": "71347515709194240",
    "status": "PENDING",
    "createTime": 1768973860523,
    "clientOrderId": "merchant-otc-deposit-20260415-001",
    "promoCode": "",
    "gate_bank_info": {
      "bankName": "Bank of Example",
      "bankAccountName": "Gate Pay OTC Collection",
      "countryId": 44,
      "country_name": "United Kingdom",
      "address": "1 Example Street, London",
      "iban": "GB11AAAA22223333444455",
      "swift": "ABCDEFGHXXX",
      "remittanceLineNumber": "021000021",
      "agentBankName": "",
      "agentBankSwift": "",
      "transfer_remark": "ORDER 71347515709194240"
    }
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.gate.com/llms.txt

Use this file to discover all available pages before exploring further.

Overview

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

Notes

Usage Guidance

  • Call this endpoint only after a valid OTC quote has been obtained.
  • Persist both clientOrderId and orderId for later reconciliation.
  • The returned bank information should be treated as settlement instructions and stored together with the order snapshot.
  • Do not treat order creation itself as payment completion. The actual fiat remittance and confirmation step still need to happen.

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

Unix timestamp used for replay protection and signature verification.

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

Merchant bank account ID used for remittance.

cryptoCurrency
string
required

Cryptocurrency to receive. Currently supported: USDT, USDC.

fiatCurrency
string
required

Fiat currency to remit. Currently supported: USD.

cryptoAmount
string
required

Cryptocurrency amount to be credited.

fiatAmount
string
required

Fiat amount to be paid.

type
string
required

Order type. Use BUY for on-ramp.

clientOrderId
string
required

Merchant-defined unique order ID.

promCode
string

Optional promotion code.

Response

200 - application/json

Success

code
string

Business response code.

message
string

Business response message.

status
string

Top-level request status.

data
object

Deposit order payload.