代收接口 API(Payin API)
▶️ 创建订单 / Create Payment Order
参数 / Request Parameters
| 参数名 | 类型 | 必填 | 示例 | 描述 / Description |
|---|---|---|---|---|
| mchId | string | ✅ | Letest067 | 商户号 / 注意:商户号不为商户ID |
| mchOrderNo | string | ✅ | 202503110001 | 商户订单号 |
| amount | int | ✅ | 10000 | 金额(分)必须为100的正整数倍 / Amount,实际金额100,这里需要传10000 |
| currency | string | ✅ | INR | 币种 |
| phoneNumber | String(30) | ❌ | 6888889999 | 手机号,[6-9]开头10位 |
| payerEmail | String | ❌ | 123@gmail.com | 标准的邮箱格式必须包括@和.其中@之前至少2个字符 |
| accountName | string | ❌ | 用户名,2-48个字符内 | |
| notifyUrl | string | ✅ | https://merchant.com/notify | 回调地址 |
| sign | string | ✅ | 5E0AA05D… | 签名值 / Signature |
| remark | string | ❌ | 备注 | |
| returnUrl | string | ❌ | https://merchant.com/return | 前端跳转 |
请求示例 / Request Example
jsx
POST /api/pay/neworder
mchId="运营提供的商户号"
mchOrderNo="202503110001"
amount=10000
currency="INR"
phoneNumber="6888889999"
payerEmail="123@test.com"
accountName="12312312"
remark="123123"
notifyUrl="http://localhost:8081/api/pay/notifyUrl"
returnUrl="http://www.baidu.com/return.htm"
sign="79B1E1C4F3290FBB6CB2FA2CAE2BA67C"返回示例 / Response Example
jsx
{
"retCode": "SUCCESS", // 返回码
"retMsg": "OK", // 返回信息
"payOrderId": "Le20250311182001",
"payParams": {
"payMethod": "urlJump", // 支付方式
"payUrl": "https://checkout.lemonpayment.com/#/checkout/100010/checkoutorderId=Le20250311182001", // 收银台地址
"qrString": "00020101021226820014br.gov.bcb.pix2560qrcode.pagsm.com.br/pix/24998ae7-43f8-4dc4-9b07-c53cf2c61deb5204000053039865802BR5907EASYPAY6008SaoPaulo62070503***63047216", // 二维码字符串
"url": null, // 深链(qrString 或 url 必有一个)
"upi": "test123@test123" // upi
},
"sign": "ABCD1234..." // 签名
}⚠️ SUCCESS 表示订单创建成功,非支付成功。
▶️ 查询支付订单 / Query Payment Order
| 参数名 | 类型 | 必填 | 示例 | 描述 / Description |
|---|---|---|---|---|
| mchId | string | ✅ | LEtest067 | 商户号 / 注意:商户号不为商户ID |
| payOrderId | String(30) | ✅ | Le20250311182001 | 交易中心生成的订单号,与mchOrderNo二者传一即可 |
| mchOrderNo | String(30) | ✅ | 20160427210604000490 | 商户生成的订单号,与payOrderId二者传一即可 |
| executeNotify | Boolean | ✅ | true | 是否执行回调,如果为true,则交易中心会再次向商户发起一次回调,如果为false则不会发起 |
| sign | String(32) | ✅ | C380BEC2BFD727A4B68 45133519F3AD6 | 签名值,详见签名算法 |
请求示例 / Request Example
jsx
POST /api/pay/orderquery
mchId="LEtest067"
payOrderId="Le20250311182001"
mchOrderNo="20160427210604000490"
executeNotify=true
sign="C380BEC2BFD727A4B6845133519F3AD6"返回示例
jsx
{
"retCode": "SUCCESS", // 返回码
"retMsg": "返回信息", // 返回信息
"status": 2, // 支付状态
"productId": "8001", // 产品ID
"amount": 10000, // 金额
"channelPayNo": "testutr13", // UTR
"currency": "INR", // 币种
"mchOrderNo": "20160427210604000490", // 商户订单号
"payOrderId": "Le20250311182001", // 平台订单号
"errorMessage": "error message", // 错误信息(失败时)
"paySuccTime": 1730111845123 // 支付成功时间(毫秒时间戳)
}▶️ 支付结果通知 / Payment Callback
jsx
notify?payOrderId=test1997967825452457986&paySuccTime=1768445162000&amount=20000&mchId=ydsh1073&mchOrderNo=Test17651876220001&channelPayNo=12300000000&sign=31415C93341312BE0B8724C7B7D465A2&backType=2&channelCode=10024&status=2&errorMessage=Rejected after secondary review商户收到后需验证签名并返回 "success"。
未返回或签名错误将重试(60/120/180/240/300 秒间隔)。
💡
参数说明
| 参数名 | 类型 | 描述 / Description |
|---|---|---|
| payOrderId | string | 订单号 |
| paySuccTime | string | 支付成功时间 |
| amount | string | 金额 |
| mchId | string | 商户号 |
| mchOrderNo | string | 商户订单号 |
| channelPayNo | string | utr |
| backType | string | 通知类型 |
| channelCode | string | 渠道编号 |
| status | string | 订单状态 |
| errorMessage | string | 错误信息:订单失败情况下会返回 |
| sign | string | 签名值 |
