|
@@ -0,0 +1,109 @@
|
|
|
|
+# 支付
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+## 接口说明 <!-- {docsify-ignore} -->
|
|
|
|
+
|
|
|
|
+ 接口为商家提供线上支付功能,适用于银联、支付宝及A+、微信支付等付款方式。
|
|
|
|
+
|
|
|
|
+## 请求路径 <!-- {docsify-ignore} -->
|
|
|
|
+
|
|
|
|
+> `POST` /api/v5/createorder
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+## 请求参数 <!-- {docsify-ignore} -->
|
|
|
|
+
|
|
|
|
+ 凡是上送参数都需参与签名。
|
|
|
|
+
|
|
|
|
+ ***通用参数:***
|
|
|
|
+
|
|
|
|
+| 参数 | 类型 | 必填 | 描述 |
|
|
|
|
+| ------------- | ----- | --- | ------------------------------------------------------------ |
|
|
|
|
+| paymentBrand | String|是 | 支付品牌,参考[交易场景和支持品牌](#交易场景和支持品牌)|
|
|
|
|
+| tradeFrom | String|是 | 交易场景,参考[交易场景和支持品牌](#交易场景和支持品牌)|
|
|
|
|
+| orderNum | String|是 | 订单号:商户自行定义,需保证同一商户号下订单号不能重复|
|
|
|
|
+| orderAmount | String|是 | 订单金额:如 100 元,表示为 100 或 100.00 |
|
|
|
|
+| orderCurrency | String|是 | 订单币种:ISO标准。如:人民币填写“CNY”,美元填写"USD" |
|
|
|
|
+| frontURL | String|是 | 支付完成后前端跳转到该URL。GET请求,参数详见[支付结果通知(回调)](/op_api/result_pay) |
|
|
|
|
+| backURL | String|是 | 支付结果异步通知到该URL。支付成功后,GoAllPay 会以 POST JSON 方式调用 backURL 通知支付结果(详见[支付结果通知(回调)](/op_api/result_pay))。商户在接收到通知后,需响应字符串“OK”。<br>如果没有收到商户响应“OK”,GoAllPay将会过一段时间后重新推送,时间间隔为[15, 15, 15, 30, 180, 1800, 3600, 7200, 14400],单位为秒。 |
|
|
|
|
+| merID | String|是 | 商户 ID,由 GoAllPay 分配 |
|
|
|
|
+| goodsInfo | String|是 | 商品信息。注意不要包含特殊符号,如 "#","&","+" 等 |
|
|
|
|
+| detailInfo | String|是 | 商品明细。<br>格式:[{"goods_name":"iPhone X","quantity":"2"},{"goods_name":"iPhone 8","quantity":"4"}],需Base64编码后上送。注意goods_name不要包含特殊符号,如 "#","&","+" 等 |
|
|
|
|
+| transTime | String|是 | 交易时间,格式:"yyyyMMddHHmmss" |
|
|
|
|
+| merReserve | String|否 | 预留内容,商户自定义。注意不要包含特殊符号,如 "#","&","+" 等 |
|
|
|
|
+| osType | String|是 | 用户操作系统类型。<br>"IOS","ANDROID","HARMONYOS","WINDOWS","MAC","OTHER" 选其中一个上送 |
|
|
|
|
+| osVersion | String|否 | 用户操作系统版本。示例:"10.0.19043" |
|
|
|
|
+| userIP | String|是 | 用户IP |
|
|
|
|
+| userID | String|是 | 用户在商家的唯一ID |
|
|
|
|
+| logisticsStreet| String|是 | 收货地址。若为虚拟物品,填写用户邮箱地址 |
|
|
|
|
+| openid | String|否 | 仅适用于微信小程序支付场景 |
|
|
|
|
+| signType | String|是 | SHA256 |
|
|
|
|
+| signature | String|是 | 签名 |
|
|
|
|
+
|
|
|
|
+## 响应参数 <!-- {docsify-ignore} -->
|
|
|
|
+
|
|
|
|
+| 参数 | 类型 | 必填 | 描述 |
|
|
|
|
+| --------- | -------| ---- | ------------------------------------------------------------ |
|
|
|
|
+| respCode | String | 是 | 应答码,00表示请求成功 |
|
|
|
|
+| respMsg | String | 是 | 应答信息 |
|
|
|
|
+| merID | String | 否 | 商户ID |
|
|
|
|
+| orderNum | String | 否 | 订单号 |
|
|
|
|
+| transID | String | 否 | GoAllPay流水号 |
|
|
|
|
+| parameter | Object | 否 | 支付相关参数。RespCode为00且非后台支付模式时返|
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+**响应参数`parameter`说明:**
|
|
|
|
+
|
|
|
|
+(1) H5/WEB/JSAPI交易场景(tradeFrom=`H5`,`WEB`,`JSAPI`)
|
|
|
|
+
|
|
|
|
+| 参数 | 类型 | 必填 | 描述 |
|
|
|
|
+| -------- | ------ | ---- | ------------------------------- |
|
|
|
|
+| payUrl | String | 否 | 支付URL |
|
|
|
|
+
|
|
|
|
+(2) APP交易场景(tradeFrom=`APP`)
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+| 参数 | 类型 | 必填 | 描述 |
|
|
|
|
+| -------- | ------ | ---- | --------------------------------------------------------- |
|
|
|
|
+| tn | String | 否 | 交易流水号,作为调起 sdk 支付的参数 |
|
|
|
|
+
|
|
|
|
+获取到tn后,根据[APP对接文档](AllPay_Integration_Specification_CH.md#6-app模式对接文档)调用SDK进行支付。
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+(3) APPLET交易场景(tradeFrom=`APPLET`)
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+| 参数 | 类型 | 必填 | 描述 |
|
|
|
|
+| ---------- | ------ | ---- | ------------------------------------------------------ |
|
|
|
|
+| sdk_params | Object | 否 | 小程序支付所需参数 |
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+(4) QRCODE交易场景(tradeFrom=`QRCODE`)
|
|
|
|
+
|
|
|
|
+| 参数 | 类型 | 必填 | 描述 |
|
|
|
|
+| -------- | ------ | ---- | ------------------------------- |
|
|
|
|
+| code_url | String | 否 | 二维码字符串 |
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+(5) QUICK交易场景(tradeFrom=`QUICK`)
|
|
|
|
+
|
|
|
|
+| 参数 | 类型 | 必填 | 描述 |
|
|
|
|
+| -------- | ------ | ---- | ------------------------------- |
|
|
|
|
+| payUrl | String | 否 | 收银台URL |
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+## 交易场景和支持品牌 <!-- {docsify-ignore} -->
|
|
|
|
+
|
|
|
|
+tradeFrom|支持paymentBrand列表|交易示例
|
|
|
|
+---|---|---
|
|
|
|
+H5|unionpay,alipay_cn,alipay_hk,...|[报文示例](/examples/examples_op?id=h5-payment)
|
|
|
|
+WEB|alipay_cn,alipay_hk,...|[报文示例](/examples/examples_op?id=web-payment)
|
|
|
|
+APP|unionpay,wechat_pay,alipay_cn,alipay_hk,...|[报文示例](/examples/examples_op?id=app-payment)
|
|
|
|
+JSAPI|wechat_pay,alipay_cn|[报文示例](/examples/examples_op?id=jsapi-payment)
|
|
|
|
+APPLET|wechat_pay,alipay_cn|[报文示例](/examples/examples_op?id=applet-payment)
|
|
|
|
+QRCODE|unionpay,wechat_pay,alipay_cn,....|[报文示例](/examples/examples_op?id=qrcode-payment)
|
|
|
|
+QUICK|wechat_pay|[报文示例](/examples/examples_op?id=quick-payment)
|