Skip to content

Query Refund Order ​

Updated: 9/16/26, 11:08:10 AM

Description ​

Query refund order details by refund number, including amount, status, and finish time. This is an open Payment API (RSA signature); local data only — no channel call, use Refund Sync for real-time channel status.

Request ​

POST /unipay/query/refund-order

  • Auth: RSA signature (@PaymentVerify)
  • Response: DaxResult<RefundOrderResult>

Parameters ​

Common params same as Pay - Common Parameters. Business parameters:

ParameterTypeRequiredMaxDescription
refundNostringNo*100Platform refund number
bizRefundNostringNo*100Merchant refund number

*At least one required. Priority: refundNo > bizRefundNo

Example ​

json
{
  "mchNo": "M200000001",
  "appId": "APP001",
  "reqId": "REQ20241201033",
  "reqTime": "2024-12-01 12:33:00",
  "sign": "Base64Signature",
  "refundNo": "R2024120112345700001"
}

Response ​

DaxResult<RefundOrderResult>, data fields (public slim version):

FieldTypeDescription
refundNostringPlatform refund number
bizRefundNostringMerchant refund number
tradeNostringOriginal payment fund trade number
bizOrderNostringOriginal payment merchant order number
outRefundNostringChannel refund transaction number
amountlongRefund amount (cents)
orderAmountlongOriginal order amount (cents)
statusstringRefund status (RefundOrderStatusEnum: progress / success / fail / close)
reasonstringRefund reason
finishTimestringRefund finish time (Beijing time, yyyy-MM-dd HH:mm:ss)
errorMsgstringError message

Example ​

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "refundNo": "R2024120112345700001",
    "bizRefundNo": "REFUND20241201001",
    "tradeNo": "T2024120112345700001",
    "bizOrderNo": "ORDER20241201001",
    "outRefundNo": "5000050xxxxxxxxxxxx",
    "amount": 100,
    "orderAmount": 100,
    "status": "success",
    "reason": "Customer requested refund",
    "finishTime": "2024-12-01 14:00:00"
  },
  "sign": "Base64Signature",
  "resTime": "2024-12-01 12:33:00",
  "reqId": "REQ20241201033"
}

Usage Tips ​

  • Query is idempotent and returns locally persisted data only; prefer Refund Sync for real-time channel status.