准备工作Setup
接入方需向我方提供以下信息以完成接入配置:
• AES 密钥:用于数据加解密,128 位(Base64 编码)。
• RSA 公钥:用于请求签名验证,2048 位(Base64 编码)。
• 固定出口 IP:用于加强通讯安全。
• PayIn / PayOut 回调地址:用于风控,实际回调以下单时传入的参数为准。
请下载配置模板,填写完成后发送邮件:
• 收件人:[email protected]
• 抄送:[email protected]
• 邮件标题:商户名称 - API Config
The integrating party must provide the following information to complete the integration setup:
• AES Key: for data encryption/decryption, 128-bit (Base64 encoded).
• RSA Public Key: for request signature verification, 2048-bit (Base64 encoded).
• Static egress IP: to enhance communication security.
• PayIn / PayOut callback URLs: for risk control.
Download the configuration template, fill it in, and send an email:
• To: [email protected]
• CC: [email protected]
• Subject: Merchant Name - API Config
我方 RSA 公钥(用于响应验签): Our RSA Public Key (for response signature verification):
概述Overview
请求体与响应体均为 JSON 格式,字符编码统一使用 UTF-8。
所有请求与响应均包含公共参数,分别位于请求头与响应头,详见「公共参数」章节。
所有请求与响应均经过加密与签名处理,详见「加密」与「签名」章节。 All APIs are based on HTTPS. Integrators must call via the POST method.
Request and response bodies are JSON-formatted with UTF-8 encoding.
All requests and responses carry common parameters in their headers — see the Common Parameters section.
All requests and responses are encrypted and signed — see the Encryption and Signature sections.
x-code 为 10000 表示请求成功,业务结果需进一步解析响应体;非 10000 时请从 x-msg 获取失败原因,此时不会返回响应体。• 必须对所有响应及回调的
x-sign 进行验签,确保数据未被篡改。
• A response header x-code of 10000 indicates the request succeeded; check the response body for the business result. For any other value, read the failure reason from x-msg — no response body is returned in this case.• Always verify
x-sign on all responses and callbacks to ensure data integrity.
公共参数Common Parameters
公共请求头Common Request Headers
| 名称Name | 说明Description |
|---|---|
| content-type | 固定为 application/jsonFixed as application/json |
| x-merchant-id | 接入方的 merchantIdIntegrator's merchantId |
| x-request-id | 请求唯一标识,每次请求须生成不同的值Unique request identifier; must be distinct for each request |
| x-timestamp | 请求时间戳Request timestamp |
| x-version | 版本号,固定为 2.0Version, fixed as 2.0 |
| x-sign | RSA 请求签名RSA request signature |
公共响应头Common Response Headers
| 名称Name | 说明Description |
|---|---|
| x-merchant-id | 请求头原路返回Echoed from request header |
| x-request-id | 请求头原路返回Echoed from request header |
| x-timestamp | 响应时间戳Response timestamp |
| x-version | 固定为 2.0Fixed as 2.0 |
| x-sign | RSA 响应签名RSA response signature |
| x-code | 响应码Response code |
| x-msg | 响应消息Response message |
加密Encryption
接入方与我方需使用 AES/GCM/NoPadding 对请求体和响应体进行加密与解密, 加密结果统一采用 Base64 编码。
接入方需提前提供 128 位 AES 密钥(Base64 编码),详见「准备工作」。 To ensure data security, all requests and responses are encrypted.
Both parties use AES/GCM/NoPadding for encryption/decryption, with results encoded in Base64.
Provide a 128-bit AES key (Base64 encoded) in advance — see Setup.
• 算法:
AES-128-GCM,无填充,认证标签长度 128 位(16 字节)。• IV:每次加密须随机生成 12 字节。
• 加密结果结构:将 IV 前置拼接到加密输出,再整体 Base64 编码后作为 payload 传输:
Base64( IV[12字节] + CipherText + AuthTag[16字节] )• 解密时:Base64 解码后,取前 12 字节作为 IV,剩余字节(密文 + Auth Tag)传入解密方法。 ⚠ AES/GCM Implementation Specification
• Algorithm:
AES-128-GCM, no padding, 128-bit (16-byte) authentication tag.• IV: A fresh random 12-byte IV must be generated for every encryption call.
• Encrypted output layout: Prepend the IV to the encrypted output, then Base64-encode the combined bytes for transmission:
Base64( IV[12 bytes] + CipherText + AuthTag[16 bytes] )• Decryption: After Base64-decoding, extract the first 12 bytes as the IV and pass the remaining bytes (ciphertext + auth tag) to the decryption function.
请求体加密Request Body Encryption
原始请求体字段含义详见各 API 说明。 See each API section for original request body field definitions.
接入方处理流程: Integrator workflow:
- 使用 AES 密钥对原始请求体进行加密Encrypt the original request body with the AES key
- 将加密结果进行 Base64 编码Base64-encode the encrypted result
- 编码后的字符串作为
payload字段发送Send the encoded string as thepayloadfield
我方处理流程: Our workflow:
- 对
payload进行 Base64 解码Base64-decode thepayload - 使用 AES 密钥进行解密Decrypt with the AES key
- 得到原始请求体Obtain the original request body
原始请求体示例: Original request body example:
{
"key_1": "value_1",
"key_2": "value_2",
"key_3": "value_3"
}
实际请求体示例: Actual request body example:
{
"payload": "8YryQ8hYkTL3UzzEdvlUGGrL...9lvPN+U0iERGz9wpHtxvA=="
}
响应体加密Response Body Encryption
原始响应体字段含义详见各 API 说明。 See each API section for original response body field definitions.
我方处理流程: Our workflow:
- 对原始响应体进行 AES 加密AES-encrypt the original response body
- 对加密结果进行 Base64 编码Base64-encode the encrypted result
- 编码后的字符串作为
payload返回Return the encoded string aspayload
接入方处理流程: Integrator workflow:
- 对
payload进行 Base64 解码Base64-decode thepayload - 使用 AES 密钥进行解密Decrypt with the AES key
- 得到原始响应体Obtain the original response body
原始响应体示例: Original response body example:
{
"key_1": "value_1",
"key_2": "value_2",
"key_3": "value_3"
}
实际响应体示例: Actual response body example:
{
"payload": "8YryQ8hYkTL3UzzEdvlUGGrL...9lvPN+U0iERGz9wpHtxvA=="
}
签名Signature
双方使用 SHA256withRSA 算法对待签字符串进行签名,签名结果经 Base64 编码后,分别对应请求头与响应头中的
x-sign 字段。整个流程涉及两对 RSA 密钥:我方持有公私钥 T,接入方持有公私钥 U。公钥用于验证签名,私钥用于生成签名。
我方 RSA 公钥 T 详见「准备工作」章节;接入方须提前向我方提供 2048 位 RSA 公钥 U(Base64 编码格式)。 To ensure secure API calls, all requests and responses are authenticated via digital signatures.
Both parties use SHA256withRSA to sign the string-to-sign. The Base64-encoded result is placed in the
x-sign request or response header.The full flow involves two RSA key pairs: our key pair T and your key pair U. Public keys verify signatures; private keys generate signatures.
Our RSA public key T is available in the Setup section. You must provide your 2048-bit RSA public key U (Base64 encoded) in advance.
请求待签字符串Request String-to-Sign
所有字段按如下顺序依次使用 | 符号连接:
Concatenate all fields in the following order using | as the separator:
merchantId|version|requestId|timestamp|payload
- merchantId
- 取自请求头 x-merchant-idFrom request header x-merchant-id
- version
- 取自请求头 x-versionFrom request header x-version
- requestId
- 取自请求头 x-request-idFrom request header x-request-id
- timestamp
- 取自请求头 x-timestampFrom request header x-timestamp
- payload
- 取自请求体 payload 字段(加密后的密文)From request body payload field (encrypted ciphertext)
x-sign 的值。Sign the string-to-sign with private key U, Base64-encode the result, and set it as the x-sign request header.
x-sign 进行 Base64 解码,使用公钥 U 验证签名。Base64-decode the x-sign request header, then verify the signature using public key U.
响应待签字符串Response String-to-Sign
所有字段按如下顺序依次使用 | 符号连接:
Concatenate all fields in the following order using | as the separator:
merchantId|version|requestId|timestamp|payload
- merchantId
- 取自响应头 x-merchant-idFrom response header x-merchant-id
- version
- 取自响应头 x-versionFrom response header x-version
- requestId
- 取自响应头 x-request-idFrom response header x-request-id
- timestamp
- 取自响应头 x-timestampFrom response header x-timestamp
- payload
- 取自响应体 payload 字段(加密后的密文)From response body payload field (encrypted ciphertext)
x-code 为 10000 后,再处理 payload。
Note: Confirm x-code is 10000 before processing the payload.
x-sign 的值。Sign the string-to-sign with private key T, Base64-encode the result, and set it as the x-sign response header.
x-sign 进行 Base64 解码,使用公钥 T 验证签名。Base64-decode the x-sign response header, then verify the signature using public key T.
PayIn
处理查单及回调时,请额外关注
statusRefund 字段——该字段标识风控退款状态,与 tradeStatus 相互独立。当用户拒收付款时,系统将自动发起退款;只要 statusRefund 为 true,即表示该笔资金已退还,与交易状态无关。退款处理存在一定时效,不会即时到账。
This module initiates UPI payment collection and returns a payment link for the user to complete.When processing order queries and callbacks, pay close attention to the
statusRefund field — it reflects the risk-control refund status and is independent of tradeStatus. If a user rejects a payment, the system automatically initiates a refund. Whenever statusRefund is true, the funds have been refunded regardless of the trade status. Refunds are subject to a processing window and are not credited instantly.
生成UPI支付链接Create UPI Payment Link
请求参数Request Parameters
| 字段名Field | 类型Type | 必填Required | 说明Description |
|---|---|---|---|
| mchId | String | 是Y | 商户 IDMerchant ID |
| outTradeNo | String | 是Y | 商户订单号,需保证唯一Merchant order number, must be unique |
| notifyUrl | String | 是Y | 异步回调地址Async callback URL |
| payerIp | String | 是Y | 用户真实 IP,需在下单时动态获取User's real IP, must be dynamically obtained at order time |
| userId | String | 是Y | 用户唯一标识Unique user identifier |
| successfulTopUpTimes | Integer | 是Y | 用户历史充值成功的累计次数User's cumulative successful top-up count |
| tradeAmount | Decimal(8,2) | 是Y | 交易金额Transaction amount |
| phoneNumber | String | 是Y | 用户手机号User's phone number |
| String | 是Y | 用户邮箱User's email |
示例Example
{
"mchId": "20221010100015",
"notifyUrl": "http://localhost/in/resp",
"outTradeNo": "9abe9cbfda7348728cb2364e6c4c9b40",
"payerIp": "127.0.0.1",
"userId": "10001",
"successfulTopUpTimes": 0,
"phoneNumber": "91223211223",
"email": "[email protected]",
"tradeAmount": 1
}
响应字段Response Fields
| 字段名Field | 类型Type | 说明Description |
|---|---|---|
| mchId | String | 商户 IDMerchant ID |
| outTradeNo | String | 商户单号Merchant order No. |
| tradeId | String | 交易 IDTrade ID |
| tradeLink | String | 平台支付网页链接(使用此链接作为付款链接)Payment page link (use this as the payment URL) |
| Response Code | 说明Description |
|---|---|
| 1044 | 上游没有返回 UPI 链接Upstream did not return a UPI link |
| 1042 | 如果您的手机或邮箱被列入黑名单,请更换手机或邮箱Phone or email is blacklisted, please use a different one |
| 2005 | 请求上游错误Upstream request error |
示例Example
{
"code": "10000",
"currentTime": "1676442883367",
"data": {
"code": "10000",
"mchId": "20221010100015",
"msg": "The operation succeeded",
"outTradeNo": "48fd8714bb5e453b9027d2d516a5fe88",
"tradeId": "2023021510000003",
"tradeLink": "https://localhost/trade/link?payNo=20250001"
},
"msg": "The operation succeeded"
}
回调Callback
notifyUrl)发送通知,请对回调请求进行验签。同一通知可能重复推送,请做好幂等处理。
收到通知后,请直接返回纯文本字符串(无需加密或签名):
• 返回
SUCCESS:表示已成功接收,停止后续推送。• 返回
WRONG:表示订单异常(如查不到订单或存在争议),我方将记录并处理。
We will send notifications via POST to the callback URL (notifyUrl) provided at order creation. Please verify the signature on all callback requests.The same notification may be delivered multiple times — implement idempotency handling accordingly.
Respond with a plain-text string (no encryption or signature required):
• Return
SUCCESS: Acknowledges receipt and stops further notifications.• Return
WRONG: Indicates an anomaly (e.g., order not found or disputed); we will log and investigate.
响应字段Response Fields
| 字段名Field | 类型Type | 说明Description | 备注Remarks |
|---|---|---|---|
| tradeAmount | Decimal(8,2) | 交易金额Trade amount | |
| mchId | String | 商户 IDMerchant ID | |
| outTradeNo | String | 商户单号Merchant order No. | |
| tradeId | String | 交易 IDTrade ID | |
| tradeStatus | String | 交易状态Trade status |
CREATE 创建付款链接Payment link created
TIMEOUT 超时Timed out
FAIL 支付失败Payment failed
SUCCESS 支付成功Payment succeeded
|
| statusRefund | Boolean | 收到用户付款后,款项被退还给用户的状态;无论交易状态(tradeStatus)如何,该款项可能并未到账,而是被直接退回 Refund status after receiving payment; regardless of tradeStatus, the funds may have been returned directly | true / false |
| utr | String | UTR | |
| refundMessage | String | 退款原因Refund reason |
示例Example
{
"mchId": "20221010100015",
"nonceStr": "1at0gfk809lukc4tcq7ccn8px0lgs1du",
"accountAmount": 1,
"outTradeNo": "48fd8714bb5e453b9027d2d516a5fe88",
"sign": "27a54fe2cd22dc6183a5c322190564ab",
"timestamp": 1676443961,
"tradeAmount": 1,
"tradeId": "2023021510000003",
"tradeStatus": "SUCCESS",
"statusRefund": false,
"utr": "5500003",
"refundMessage": ""
}
查询状态Query Status
请求参数Request Parameters
| 字段名Field | 类型Type | 说明Description | 必填Required | 备注Remarks |
|---|---|---|---|---|
| tradeId | String | 交易 IDTrade ID | 是(二选一)Yes (one of two) |
tradeId / outTradeNo 二选一必须传其中之一One of these two is required |
| outTradeNo | String | 商户单号Merchant order No. | 是(二选一)Yes (one of two) | |
| mchId | String | 商户 IDMerchant ID | 是Yes |
示例Example
{
"mchId": "20221010100015",
"tradeId": "2023021410000003"
}
响应字段Response Fields
| 字段名Field | 类型Type | 说明Description | 备注Remarks |
|---|---|---|---|
| tradeAmount | Decimal(8,2) | 交易金额Trade amount | |
| outTradeNo | String | 商户单号Merchant order No. | |
| tradeId | String | 交易 IDTrade ID | |
| tradeStatus | String | 交易状态Trade status |
CREATE 创建支付链接Link created
TIMEOUT 超时Timed out
FAIL 支付失败Failed
SUCCESS 支付成功Succeeded
|
| statusRefund | Boolean | 收到用户付款后,款项被退还给用户的状态Refund status after receiving user payment | 注意:无论 tradeStatus 如何,只要为 true,表示款项已退还(可能存在延迟到账) Note: Regardless of tradeStatus, true means funds have been refunded (may be delayed) |
| utr | String | UTR(上游交易流水号)UTR (upstream transaction ref) | |
| refundMessage | String | 退款原因Refund reason | 仅在发生退款时返回Only returned when refund occurs |
示例Example
{
"code": "10000",
"currentTime": "1676444797353",
"data": {
"code": "10000",
"createdAt": "2023-02-15 12:04",
"currency": "INR",
"mchId": "20221010100015",
"msg": "The operation succeeded",
"outTradeNo": "48fd8714bb5e453b9027d2d516a5fe88",
"tradeAmount": 1,
"tradeId": "2023021510000003",
"tradeStatus": "CREATE",
"statusRefund": false,
"utr": "5500003",
"refundMessage": ""
},
"msg": "The operation succeeded"
}
PayOut
tradeMode 仅支持 IMPS。仅当响应体外层与
data 层的 code 均为 10000 时,订单才视为提交成功;其他情况均应视为失败。提交成功后,请根据响应中的
tradeStatus 同步业务状态:•
PAY_ING:处理中•
PAY:支付成功•
PAY_FAIL:支付失败
Currently, tradeMode only supports IMPS.An order is considered successfully submitted only when both the outer
code and the data.code in the response equal 10000; all other cases should be treated as failure.For successfully submitted orders, update your business status based on the returned
tradeStatus:•
PAY_ING: Processing•
PAY: Payment succeeded•
PAY_FAIL: Payment failed
500 或请求超时时,不可直接判定为失败。请求一经发出,须持续轮询订单状态,直至获得明确结果,方可标记订单状态。如长时间无法查询到订单,请联系客服确认。因未及时查询导致的业务损失,我方不承担责任。
Important: An HTTP 500 or request timeout does not indicate failure. Once a request is sent, keep polling the order status until a definitive result is received before marking the order. If the order remains unresolvable, contact support. We are not liable for losses caused by failure to query order status promptly.
发起付款Initiate Payment
请求参数Request Parameters
| 字段名Field | 类型Type | 说明Description | 必填Required | 备注Remarks |
|---|---|---|---|---|
| mchId | String | 商户 IDMerchant ID | 是Y | |
| outTradeNo | String | 商户单号Merchant order No. | 是Y | |
| notifyUrl | String | 回调地址Callback URL | 是Y | |
| tradeAmount | Decimal(8,2) | 交易金额Trade amount | 是Y | |
| Users(支付账户详情,仅支持一条记录) Users (payment account details, only one record supported) | ||||
| amount | Decimal(8,2) | 付款金额Payment amount | 是Y | |
| userId | String | 用户 IDUser ID | 是Y | |
| payerIp | String | 用户 IPUser IP | 是Y | 取玩家游戏中下单时的 IP,必须实时动态获取User's IP at order time, must be dynamically obtained |
| bankAccount | String | 收款人的确切姓名Exact name of the beneficiary | 是Y | |
| bankCardNo | String | UPI 渠道填写 UPI 账号,银行卡渠道填写银行账号UPI address for UPI channel, bank account number for bank channel | 是Y | |
| bankName | String | 银行名称Bank name | 否N | |
| tradeMode | String | 支付方式Payment method | 是Y | IMPS / UPI(当前仅支持 IMPS)IMPS / UPI (currently only IMPS) |
| bankCode | String | IFSC 银行代码IFSC bank code | 否N | 仅银行转账时需要Required only for bank transfer |
| mobileNumber | String | 用户手机号码User's mobile number | 是Y | |
| String | 用户电子邮件User's email | 是Y | ||
| userKey | Integer | Detail identification | 否N | |
| payTime | String | 支付时间(yyyy-MM-dd HH:mm:ss)Payment time (yyyy-MM-dd HH:mm:ss) | 否N | |
示例Example
{
"mchId": "20221010100015",
"notifyUrl": "https://pay.rupetech.net/pay/out/resp",
"outTradeNo": "529d3845c5f74f3bbc932e96750b87b4",
"tradeAmount": 105,
"users": [
{
"userId": "10001",
"payerIp": "0.0.0.0",
"amount": 105,
"bankAccount": "CHAGANTI SURENDER REDDY",
"bankCardNo": "50100562054556",
"bankCode": "HDFC0001639",
"bankName": "HDFC",
"email": "[email protected]",
"mobileNumber": "9097634567",
"tradeMode": "imps",
"userKey": 1
}
]
}
响应字段Response Fields
| 字段名Field | 类型Type | 说明Description | 备注Remarks |
|---|---|---|---|
| outTradeNo | String | 商户单号Merchant order No. | |
| tradeId | String | 交易IDTrade ID | |
| tradeStatus | String | 交易状态Trade status |
PAY_ING 已提交至银行Submitted to bank
PAY 支付完成Payment completed
PAY_FAIL 支付失败Payment failed
|
| payType | String | 上游银行Upstream bank |
示例Example
{
"code": "10000",
"currentTime": "1676445014225",
"data": {
"code": "10000",
"mchId": "20221010100015",
"msg": "The operation succeeded",
"outTradeNo": "377c7115f0064756915b6d3fa35e32ba",
"tradeId": "2023021510000009",
"tradeStatus": "TASK"
},
"msg": "The operation succeeded"
}
回调Callback
notifyUrl)发送通知,请对回调请求进行验签。同一通知可能重复推送,请做好幂等处理。
收到通知后,请直接返回纯文本字符串(无需加密或签名):
• 返回
SUCCESS:表示已成功接收,停止后续推送。• 返回
WRONG:表示订单异常(如查不到订单或存在争议),我方将记录并处理。
We will send notifications via POST to the callback URL (notifyUrl) provided at order creation. Please verify the signature on all callback requests.The same notification may be delivered multiple times — implement idempotency handling accordingly.
Respond with a plain-text string (no encryption or signature required):
• Return
SUCCESS: Acknowledges receipt and stops further notifications.• Return
WRONG: Indicates an anomaly (e.g., order not found or disputed); we will log and investigate.
flowOrderId 和 reversalTime 仅在 reversal = true 时有值。回调逻辑分两类:
- 首次回调:通知支付结果(成功或失败),款项已完成扣款或退款。
- 逆转回调(
reversal = true):表示首次结果已被撤销,需执行反向操作——首次成功(已扣款)则退款,首次失败(已退款)则重新扣款。
flowOrderId and reversalTime are only populated when reversal = true.Callbacks fall into two categories:
- Initial callback: Notifies the payment outcome (success or failure); funds have been deducted or refunded at this point.
- Reversal callback (
reversal = true): The original outcome has been reversed — take the opposite action: if the original was success (deducted), issue a refund; if the original was failure (refunded), re-deduct.
响应字段Response Fields
{
"accountAmount": 509.5,
"mchId": "20221010100015",
"outTradeNo": "9f98a38478c54fd4b9741ee03c8f7e7d",
"payType": "T",
"tradeAmount": 500,
"tradeId": "202407101120000675",
"tradeStatus": "PAY",
"users": [
{
"accountAmount": 509.5,
"bankAccount": "1",
"bankCardNo": "116",
"bankCode": "3",
"bankName": "1",
"flowOrderId": 567135485075525,
"reversal": true,
"reversalTime": "2024-07-24 11:50:05",
"status": "PAY",
"tradeAmount": 500,
"userKey": 1,
"payTime": "2025-01-01 00:00:00",
"utr": "V2pNo0MEA_"
}
]
}
查询状态Query Status
请求参数Request Parameters
| 字段名Field | 类型Type | 说明Description | 必填Required | 备注Remarks |
|---|---|---|---|---|
| tradeId | String | 交易 IDTrade ID | 是(二选一)Yes (one of two) |
tradeId / outTradeNo 二选一必须传其中之一One of these two is required |
| outTradeNo | String | 商户单号Merchant order No. | 是(二选一)Yes (one of two) | |
| mchId | String | 商户 IDMerchant ID | 是Yes |
示例Example
{
"mchId": "20221010100015",
"tradeId": "2023021410000003"
}
响应字段Response Fields
| 字段名Field | 类型Type | 说明Description |
|---|---|---|
| accountAmount | Decimal(8,2) | 账户实际扣款金额Actual account deduction |
| tradeAmount | Decimal(8,2) | 交易金额Trade amount |
| payType | String | 上游银行Upstream bank |
| details | Object | 付款账户详情Payment account details |
| bankAccount | String | 收款人姓名Beneficiary name |
| bankCardNo | String | 收款人账号Beneficiary account |
| payTime | String | 付款时间(yyyy-MM-dd HH:mm)Payment time (yyyy-MM-dd HH:mm) |
| tradeMode | String | upi / imps |
| userKey | Integer | User ID |
| reversal | Boolean | 是否发生逆转(true 是,false 否)Whether reversal occurred (true/false) |
| flowOrderId | Integer | 通过 flowOrderId 可查看扣款、冲销交易记录Use flowOrderId to view deduction/reversal records |
| reversalTime | String | 逆转发生的时间(yyyy-MM-dd HH:mm:ss)Reversal timestamp (yyyy-MM-dd HH:mm:ss) |
| accountAmount | Decimal(8,2) | 账户实际扣款金额Actual account deduction |
| tradeAmount | Decimal(8,2) | 交易金额Trade amount |
| utr | String | UTR |
示例Example
{
"code": "10000",
"currentTime": "1721810396184",
"data": {
"accountAmount": 509.50,
"code": "10000",
"createdAt": "2024-07-10 13:10",
"currency": "INR",
"details": [
{
"bankAccount": "1",
"bankCardNo": "116",
"bankCode": "3",
"bankName": "1",
"flowOrderId": "567135485075525",
"payTime": "2024-07-10 13:10",
"rate": 0.00,
"reversal": true,
"reversalTime": "2024-07-24 11:50:05",
"status": "PAY",
"tradeAmount": 509.50,
"tradeMode": "imps",
"userKey": "1",
"utr": "V2pNo0MEA_"
}
],
"msg": "The operation succeeded",
"nonceStr": "kjvnrocwyokv9qgea3vuggg0h5ukn8g2",
"orderNo": "202407101120000675",
"outTradeNo": "9f98a38478c54fd4b9741ee03c8f7e7d",
"payStatus": "PAY",
"sign": "bf6a7686000d49f57f8fdfd4619d2103",
"timestamp": 1721810396,
"tradeAmount": 500.00
},
"msg": "The operation succeeded"
}
账户查询Account Query
请求参数Request Parameters
| 字段名Field | 类型Type | 说明Description | 备注Remarks |
|---|---|---|---|
| accountType | String | 账户类型Account type |
COLLECTION 代收Collection
PAYMENT_ACCOUNT 代付Payment
默认:
COLLECTIONDefault: COLLECTION |
| mchId | String | 商户IDMerchant ID |
示例Example
{
"mchId": "20221010100015",
"accountType": "COLLECTION"
}
响应字段Response Fields
| 字段名Field | 类型Type | 说明Description |
|---|---|---|
| merchantNo | String | 商户IDMerchant ID |
| notTradeAmount | Decimal(10,2) | 不可交易金额Non-tradable amount |
| tradeAmount | Decimal(10,2) | 可交易金额Tradable amount |
示例Example
{
"code": "10000",
"currentTime": "1676891873065",
"data": {
"code": "10000",
"merchantNo": "20221010100015",
"msg": "The operation succeeded",
"notTradeAmount": 13.26,
"totalAmount": 2504.19,
"tradeAmount": 2435.85
},
"msg": "The operation succeeded"
}