交易下单接口
通过此接口发起交易下单请求,请求成功后会返回对应电子钱包的支付链接,并通过H5、PC、APP等支付方式来完成钱包支付功能。
业务请求参数
字段名称 | 字段key | 必填 | 格式 | 备注 |
---|---|---|---|---|
功能码 | funcode | M | String(1,32) | 固定值:order |
版本号 | version | M | String(1,8) | 固定值:1.0.0 |
应用编号 | appId | M | String(1,32) | 商户后台创建的应用ID |
商户订单号 | orderId | M | String(1,40) | 保持全局唯一 |
商户订单名称 | orderName | M | String(1,128) | |
订单详情 | orderDetail | M | String(1,1000) | |
订单金额 | orderAmount | M | Number(1,22) | 取值币种的最小货币单位 |
商品列表 | orderProducts | C | String(1,1000) | 参见 商品列表参数 |
支付币种 | payCurrency | M | String(3) | 参见 货币列表 |
结算币种 | settleCurrency | M | String(3) | USD 或 HKD 默认结算币种:USD |
Api模式 | apiMode | O | String(1,10) | 参见 Api模式 |
支付方式 | payMethod | M | Array | 参见 支付方式 ,当Api模式为direct时,只能传入一种支付方式 |
支付模式 | payMode | C | String(1,10) | 当支付方式为CARD时,即信用卡支付时需要上送,默认为payment, 参见 支付模式 |
支付场景 | payScene | M | String(1,10) | 参见 支付场景 |
操作系统类型 | osType | C | String(1,10) | 参见 操作系统 当支付场景为非WEB时,必填 |
商户后台通知地址 | serverNotifyUrl | M | String(1,256) | 交易结果后台通知地址 |
商户前台回调地址 | frontNotifyUrl | O | String(1,256) | 前端页面回调,当支付成功后会向该地址进行跳转 |
商户订单超时时间 | orderTimeout | O | Number(4) | 单位:秒,默认3600秒;订单超时时间最短不能小于300秒,最大不能超过30天 |
客户端设备IP | clientIp | M | String(1,10) | 客户端设备IP |
商品列表OrderProducts参数
字段名称 | 字段key | 必填 | 类型 | 备注 |
---|---|---|---|---|
商品ID | productId | M | String(1,30) | 商品ID |
商品名称 | name | M | String(1,30) | 商品名称,需传递真实产品名称。 |
单价 | price | M | Number(10) | 格式与总金额保持一致,此项为单个商品的价格。需保留两位小数 |
数量 | quantity | M | Number(10) | 商品数量,正整数 |
描述 | desc | O | String(64) | 商品描述,不允许包含”’等特殊字符 |
商品分类 | category | O | String(1,30) | 商品分类 |
商品sku | sku | C | String(1,30) | 商品sku, 信用卡支付必填。 |
商品网址 | url | C | String(1,30) | 商品网址,支付方式为国际信用卡时必须。 |
物流供应商 | provider | O | String(1,30) | 物流供应商,没有物流供应商填写"other"。 |
商品列表Json数组示例
json
[{
"productId": "pid0001",
"name": "nike",
"price": 300,
"quantity": 1,
"desc": "nike",
"category": "clothes",
"sku": "sku123",
"url": "https://www.baidu.com",
"provider": "other"
}, {
"productId": "pid0002",
"name": "gola",
"price": 300,
"quantity": 1,
"desc": "adidas",
"category": "clothes",
"sku": "sku123",
"url": "https://www.baidu.com",
"provider": "other"
}]
请求示例报文
json
{
"appId": "000110011816681",
"funcode": "order",
"version": "1.0.0",
"orderId": "768a8AdD-cB8b-084A-C689-dcEFbC3D9F65",
"orderName": "test order",
"payCurrency": "INR",
"orderAmount": "227833",
"orderDetail": "this is a test order~",
"settleCurrency": "USD",
"serverNotifyUrl": "http://127.0.0.1:10800/testNotify",
"payWallet": "INDIA",
"payMethod": "H5",
"frontNotifyUrl": "http://127.0.0.1/frontNotify",
"payerId": "710000200603181124",
"payerName": "Mary Martinez",
"payerMobile": "+917452258986",
"payerEmail": "q.lxtfitti@dbsrqbo.in",
"orderTimeout": "3600",
"osType": "ANDROID"
}
接口同步返回
字段名称 | 字段key | 必填 | 类型 | 备注 |
---|---|---|---|---|
功能码 | funcode | M | String(1,40) | 固定值:order |
版本号 | version | M | String(1,8) | 固定值:1.0.0 |
应用编号 | appId | M | String(1,32) | 商户后台创建的应用ID |
商户订单号 | orderId | M | String(1,40) | |
平台订单号 | transId | O | String(1,40) | 下单成功时返回 |
订单金额 | orderAmount | M | Number(22) | 支付单金额,取值币种的最小货币单位 |
支付币种 | payCurrency | M | String(3) | 参见 货币列表 |
交易状态 | orderStatus | O | String(14) | 下单成功时返回 参见 交易状态 |
支付链接 | payUrl | O | String(64) | 当支付场景为WEB、H5、JSAPI时或为收银台模式时,下单成功时返回 |
支付参数 | payParams | O | String(64) | 当支付方式为MINI或拉起客户端需要时,下单成功时返回 |
商户订单开始时间 | orderStartTime | O | String(64) | 下单成功时返回 |
商户订单过期时间 | orderExpireTime | O | String(64) | 下单成功时返回,过期后订单会自动关单 |
响应时间 | responseTime | M | String(4) | 示例:20240108111043 |
响应码 | responseCode | M | String(1,16) | 参见 交易响应码 |
响应信息 | responseMsg | M | String(1,200) | 参见 交易响应码 |
错误码 | errorCode | O | String(1,16) | 请求失败时返回 参见 交易错误码 |
错误信息 | errorMsg | O | String(200) | 请求失败时返回 参见 交易错误码 |
注意
- 商户订单号与APPID组成唯一约束。
- payUrl为调用钱包短链接。
- 用户支付成功后通过异步通知、交易查询接口获取支付状态。
返回示例报文
json
{
"appId": "000110011816681",
"funcode": "order",
"orderAmount": "227833",
"orderExpireTime": "20240108121042",
"orderId": "768a8AdD-cB8b-084A-C689-dcEFbC3D9F65",
"orderStartTime": "20240108111042",
"orderStatus": "pending",
"payCurrency": "INR",
"payUrl": "https://checkout.paymeta.co.in/v4/#/?orderId=2024010811GN5BQF&amount=2278.3300",
"responseCode": "success",
"responseMsg": "请求成功",
"responseTime": "20240108111043",
"transId": "2401081110426512201",
"version": "1.0.0"
}