PayIn Order Query
Use this API to query PayIn order status. It is recommended when no callback is received or status is unclear.
1. Endpoint
| Item | Description |
|---|---|
| HTTP Method | POST |
| URL | /payIn/orders/query |
| Content-Type | application/json |
| Auth | Merchant signature (X-Merchant-Id / X-Timestamp / X-Nonce / X-Sign) |
Signing rules: Signing and Verification.
2. Request
2.1 Top-level fields
| Field | Type | Required | Description |
|---|---|---|---|
merchantOrderNo | String | Yes | Merchant order number |
Example:
json
{
"merchantOrderNo": "M202412220001"
}3. Response
Unified response:
json
{
"success": true,
"data": {
"payNo": "P202412220001",
"merchantOrderNo": "M202412220001",
"tradeNo": "T202412220001",
"status": "SUCCESS",
"amount": 100.00,
"currency": "USD",
"createdAt": 1734921000000,
"updatedAt": 1734921005000,
"expireAt": 1734922800000
},
"errCode": null,
"errMsg": null
}data fields
| Field | Type | Description |
|---|---|---|
payNo | String | Platform order number |
merchantOrderNo | String | Merchant order number |
tradeNo | String | Platform trade number |
status | String | Order status (see below) |
amount | Decimal | Order amount |
currency | String | Currency |
createdAt | Long | Created time (ms timestamp, UTC) |
updatedAt | Long | Updated time (ms timestamp, UTC) |
expireAt | Long | Expire time (ms timestamp, UTC) |
action | Object | Payment action (returned only when payment is in progress and requires redirect/QR) |
Status meanings
| Status | Meaning |
|---|---|
INIT | Order created, not yet in payment flow |
SUCCESS | Payment succeeded |
FAIL | Payment failed |
EXPIRED | Order expired |
CLOSED | Order closed |
USER_PAYING | Payment in progress |
action fields
| Field | Type | Description |
|---|---|---|
type | String | REDIRECT / QR |
url | String | Redirect URL when type=REDIRECT |
qrContent | String | QR content when type=QR |
expiresAt | Long | Expire time (ms timestamp, UTC) |