Get Order Details
Retrieve comprehensive information about a specific exchange order
Endpoint
/v1/order/{order_id}This endpoint requires authentication
Order Identification
Orders can be identified using either:
- •Order ID - The full order identifier (e.g.,
MM1234567890) - •Token + ID - Use the token from order creation along with a shorter ID for convenience
Request Example
GET /v1/order/MM1234567890
Content-Type: application/json
X-API-KEY: your_api_key
X-API-SIGN: generated_signature
X-API-TIMESTAMP: 1706284800Response Example
{
"success": true,
"data": {
"order_id": "MM1234567890",
"status": "PENDING",
"deposit_address": "0x9876543210987654321098765432109876543210",
"deposit_currency": "BNB",
"deposit_network": "BEP20",
"deposit_amount": 1.202887,
"deposit_received": 1.202887,
"deposit_confirmations": 3,
"deposit_required_confirmations": 12,
"receive_currency": "USDT",
"receive_network": "ERC20",
"receive_amount": 1000.00,
"receive_final_amount": 1000.00,
"rate": 831.34,
"rate_type": "fixed",
"fee": 10.00,
"destination": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"deposit_tx_hash": "0xabc123...",
"withdraw_tx_hash": null,
"created_at": "2025-01-27T11:25:00Z",
"updated_at": "2025-01-27T11:30:00Z",
"expires_at": "2025-01-27T11:40:00Z",
"completed_at": null
}
}Response Fields
| Field | Description |
|---|---|
| status | Current order status (see statuses below) |
| deposit_received | Amount of deposit received (may be less than deposit_amount if underpaid) |
| deposit_confirmations | Number of blockchain confirmations received |
| deposit_required_confirmations | Required confirmations before processing |
| receive_final_amount | Final amount to be received (may differ for float rates) |
| deposit_tx_hash | Transaction hash of the deposit (null if not received) |
| withdraw_tx_hash | Transaction hash of the withdrawal (null if not sent) |
| completed_at | Order completion timestamp (null if not completed) |
Order Statuses
NEW
Order has been created and is waiting for the user to send funds to the deposit address. No payment has been received yet.
PENDING
Deposit has been received and is waiting for blockchain confirmations. The system is monitoring the transaction until it reaches the required confirmation count.
EXCHANGE
Confirmations complete. The system is now exchanging the funds. This typically happens very quickly but may take a few minutes during high network congestion.
WITHDRAW
Exchange complete. Funds are being sent to the destination address. The withdrawal transaction has been broadcast to the blockchain.
DONE
Order completed successfully. Funds have been sent to the destination address and the transaction has been confirmed on the blockchain.
EXPIRED
Order expired without receiving payment. The deposit address is no longer valid. User must create a new order if they still want to exchange.
EMERGENCY
An unexpected situation occurred that requires user action. The user must choose to continue, refund, or cancel the order. See the Emergency Action endpoint for details.
Polling Model
To track order status, you should poll this endpoint periodically. Here are recommended polling intervals:
- •NEW status: Poll every 10-30 seconds to detect when payment is received
- •PENDING status: Poll every 30-60 seconds to track confirmation progress
- •EXCHANGE/WITHDRAW status: Poll every 15-30 seconds until DONE
- •DONE/EXPIRED/EMERGENCY: No need to poll further (final states)
Best Practice: Instead of polling, use webhooks to receive real-time status updates. This reduces API calls and provides instant notifications. See the Notifications endpoint for setup.
Confirmation Tracking
The deposit_confirmations field shows how many blockchain confirmations have been received. Different networks require different confirmation counts:
| Network | Required Confirmations |
|---|---|
| BTC | 3-6 confirmations |
| ERC20 | 12 confirmations |
| TRC20 | 20 confirmations |
| BEP20 | 12 confirmations |
Transaction Hashes
Transaction hashes allow you to verify transactions on blockchain explorers:
- •deposit_tx_hash - Hash of the transaction where user sent funds (available once payment is detected)
- •withdraw_tx_hash - Hash of the transaction sending funds to destination (available during WITHDRAW status)
Use these hashes to look up transactions on block explorers like Etherscan, BscScan, or Tronscan to verify transaction details independently.
Error Responses
Order Not Found
{
"error": true,
"error_code": "ORDER_NOT_FOUND",
"message": "Order MM1234567890 not found"
}