소스 검색

Merge branch 'master' of https://git.allpayx.com/OpenAPI/common

benson 4 년 전
부모
커밋
2a027db4ea

+ 7 - 7
AllPay_Customs_Integration_Specification_CH.md

@@ -52,10 +52,10 @@
 | name            | String(64)  | M    | 消费者姓名                                                   |
 | IDCard          | String(32)  | M    | 消费者身份证号                                               |
 | customerAccount | String(64)  | M    | 消费者在商家的注册帐号                                       |
-| businessType    | String(2)   | O    | 保税进口:1,直邮进口:2。如果不填,默认为1保税进口,视申报海关需要填写 |
+| businessType    | String(2)   | O    | 保税进口:1<br>直邮进口:2<br>如果不填,默认为1保税进口,视申报海关需要填写 |
 | merID           | String(15)  | M    | 商户 ID,由GoAllPay 分配                                       |
 | acqID           | String(11)  | M    | 收单行 ID "99020344"                                         |
-| paymentSchema   | String(10)  | M    | 渠道代码。银联:UP,微信:WX,支付宝:AP/APMP                |
+| paymentSchema   | String(10)  | M    | 渠道代码。银联:UP,微信:WX,支付宝:AP                |
 | transTime       | String(14)  | M    | 交易时间,格式:"yyyyMMddHHmmss"                               |
 | signType        | String(10)  | M    | MD5或SHA256                                                  |
 | signature       | String(32)  | M    | 采用 MD5或SHA256 签名                                         |
@@ -77,7 +77,7 @@
 | schemaTransId  | String(64)  | M    | 支付渠道的交易ID。<br/>注:银联报关需要用该字段作为物流单以及销售单的报关单号 |
 | merID          | String(15)  | M    | 商户 ID,由GoAllPay 分配                        |
 | acqID          | String(11)  | M    | 收单行 ID "99020344"                          |
-| paymentSchema  | String(10)  | M    | 渠道代码。银联:UP,微信:WX,支付宝:AP/APMP |
+| paymentSchema  | String(10)  | M    | 渠道代码。银联:UP,微信:WX,支付宝:AP |
 | transTime      | String(14)  | M    | 交易时间,格式:"yyyyMMddHHmmss"              |
 | signType       | String(10)  | M    | MD5或SHA256                                   |
 | signature      | String(32)  | M    | 采用 MD5或SHA256 签名                         |
@@ -94,7 +94,7 @@
 | orderNum      | String(60) | M    | 交易ID                                        |
 | merID         | String(15) | M    | 商户 ID,由GoAllPay 分配                        |
 | acqID         | String(11) | M    | 收单行 ID "99020344"                          |
-| paymentSchema | String(10) | M    | 渠道代码。银联:UP,微信:WX,支付宝:AP/APMP |
+| paymentSchema | String(10) | M    | 渠道代码。银联:UP,微信:WX,支付宝:AP |
 | transTime     | String(14) | M    | 交易时间,格式:"yyyyMMddHHmmss"                |
 | signType      | String(10) | M    | MD5或SHA256                                   |
 | signature     | String(32) | M    | 采用 MD5或SHA256 签名                        |
@@ -116,7 +116,7 @@
 | schemaTransId  | String(64)  | M    | 支付渠道的交易ID。 |
 | merID          | String(15)  | M    | 商户 ID,由 GoAllPay 分配                        |
 | acqID          | String(11)  | M    | 收单行 ID "99020344"                          |
-| paymentSchema  | String(10)  | M    | 渠道代码。银联:UP,微信:WX,支付宝:AP/APMP |
+| paymentSchema  | String(10)  | M    | 渠道代码。银联:UP,微信:WX,支付宝:AP |
 | transTime      | String(14)  | M    | 交易时间,格式:"yyyyMMddHHmmss"              |
 | signType       | String(10)  | M    | MD5或SHA256                                  |
 | signature      | String(32)  | M    | 采用 MD5或SHA256 签名                     |
@@ -146,7 +146,7 @@
 | businessType    | String(2)   | O    | 保税进口:1,直邮进口:2。如果不填,默认为1保税进口,视申报海关需要填写 |
 | merID           | String(15)  | M    | 商户 ID,由GoAllPay 分配                                       |
 | acqID           | String(11)  | M    | 收单行 ID "99020344"                                         |
-| paymentSchema   | String(10)  | M    | 渠道代码。银联:UP,微信:WX,支付宝:AP/APMP                |
+| paymentSchema   | String(10)  | M    | 渠道代码。银联:UP,微信:WX,支付宝:AP |
 | transTime       | String(14)  | M    | 交易时间,格式:"yyyyMMddHHmmss"                              |
 | signType        | String(10)  | M    | MD5或SHA256                                                  |
 | signature       | String(32)  | M    | 采用 MD5或SHA256 签名                                        |
@@ -168,7 +168,7 @@
 | schemaTransId  | String(64)  | M    | 支付渠道的交易ID                              |
 | merID          | String(15)  | M    | 商户 ID,由GoAllPay 分配                        |
 | acqID          | String(11)  | M    | 收单行 ID "99020344"                          |
-| paymentSchema  | String(10)  | M    | 渠道代码。银联:UP,微信:WX,支付宝:AP/APMP |
+| paymentSchema  | String(10)  | M    | 渠道代码。银联:UP,微信:WX,支付宝:AP |
 | transTime      | String(14)  | M    | 交易时间,格式:"yyyyMMddHHmmss"              |
 | signType       | String(10)  | M    | MD5或SHA256                                   |
 | signature      | String(32)  | M    | 采用 MD5或SHA256 签名                         |

+ 248 - 0
AllPay_Customs_Integration_Specification_EN.md

@@ -0,0 +1,248 @@
+# GoAllPay customs declaration interface specification document V5.0.0
+[Shanghai GoAllPay Technology Co., Ltd.](https://www.goallpayx.com)
+
+* Version: English V5.0.0
+* Update Time: 2020/07
+
+## 1.Overview
+
+This document specifies the message interface used for online transactions of customs declaration products between merchants and GoAllPay.
+
+## 2.Description of verifying the signature 
+
+```
+1.For the request message sent to the GoAllPay system, in which all incoming parameters (except signature parameters) according to the field name of ASCII smallest sequence (dictionary), using the format of the URL key/value pair (key1 = value1 & key2 = value2... ) spliced into a string String1.
+
+2.At the end of String1, the signature Key (assigned at GoAllPay upon access) agreed by both parties is spliced directly (no need to connect with "&"), resulting in a stringSignTemp string, and an encryption on stringSignTemp to get the value of signature.
+
+3.Sample signature string:  IDCard=411422199808080415&acqID=99020344&charSet=UTF-8&customerAccount=ab123456&customs_code=3302462548&customs_name=AAAA&customs_place=CUSTOMSHEADOFFICE&merID=000000000000015&merReserve=dd&name=shi kai feng&orderCurrency=CNY&orderNum=kfvWipRWHEboJPh71m7lXkUILutt&origOrderNum=VzVJhPdX18tDu3vgGfNOIgh71LjY&paymentSchema=UP&productPrice=80&signType=MD5&transTime=20181229171552&transType=DECL&transportPrice=10&version=VER0000000052f2c77e3718c47cfb47a89a6fbc9d361
+```
+
+## 3.API description 
+
+GoAllPay Customs declaration-related APIs, including declaration, declaration query, and declaration update.
+
+### 3.1 General API access URL 
+
+| Interface Name | Test URL | Production URL |
+| ------- | -------------- | ---------- |
+| Declaration | https://testapi.allpayx.com/custom/declare | https://api.allpayx.com/custom/declare |
+| Declaration Query | https://testapi.allpayx.com/custom/query   | https://api.allpayx.com/custom/query |
+| Declaration Update | https://testapi.allpayx.com/custom/update | https://api.allpayx.com/custom/update |
+
+### 3.2 Declaration Interface
+
+**1.Request parameters**
+
+| parameter | Type | Required | Description |
+| --------------- | ----------- | ---- | --------------------- |
+| version       | String(12)   | M    | "VER000000005" |
+| charSet       | String(6)    | M    | "UTF-8" |
+| transType       | String(4)   | M    | Transaction type: "DECL"  |
+| customsDeclarationNo | String(60)  | O    | The customs declaration order number is defined by the merchant. <br>Note: Alipay and WeChat can choose to send this field, but UnionPay cannot send this field. If Alipay and WeChat do not send this field, they will use orderNum as the customs declaration order number. |
+| orderNum        | String(60)  | M    | Transaction ID: defined by the merchant, it is necessary to ensure that the transaction ID under the same merchant number cannot be repeated. |
+| origOrderNum    | String(60)  | M    | Order number for successful payment |
+| productPrice    | String(12)  | M    | Commodity amount: such as 100CNY, expressed as 100 or 100.00 |
+| transportPrice  | String(12)  | M    | Shipping amount:such as 100CNY, expressed as 100 or 100.00 |
+| tarPrice        | String(12)  | M    | Tariff amount:such as 100CNY, expressed as 100 or 100.00 |
+| orderCurrency   | String(3)   | M    | Currency of the order: ISO standard, such as RMB filling in "CNY", us dollar filling in "USD"  |
+| customs_code    | String(64)  | M    | Merchant Customs Record Code |
+| customs_name    | String(128) | M    | Merchant Customs Record Name |
+| customs_place   | String(128) | M    | Customs code, see Annex 1 Customs List for details |
+| name            | String(64)  | M    | Consumer name |
+| IDCard          | String(32)  | M    | Consumer ID number |
+| customerAccount | String(64)  | M    | Consumer's registered account at the merchant |
+| businessType    | String(2)   | O    | Bonded import: 1<br>Direct import: 2<br>If you don’t fill in, the default is 1 Bonded Import. |
+| merID           | String(15)  | M    | Merchant ID, assigned by GoAllPay |
+| acqID           | String(11)  | M    | Acquiring Bank ID: "99020344" |
+| paymentSchema   | String(10)  | M    | Channel ID.<br>UnionPay:UP<br>WeChat Pay:WX<br>Alipay:AP |
+| transTime       | String(14)  | M    | Transaction time, format :" yyyyMMddHHmmss" |
+| signType        | String(10)  | M    | "MD5" or "SHA256" |
+| signature       | String(32)  | M    | MD5 or SHA256 signature |
+
+**2.Response parameters**
+
+| Parameter          | Type         | Required | Description          |
+| -------------- | ----------- | ---- | --------------------------------------------- |
+| version       | String(12)   | M    | "VER000000005" |
+| charSet       | String(6)    | M    | "UTF-8" |
+| transType      | String(4)   | M    | "DECL" |
+| orderNum       | String(60)  | M    | Transaction ID  |
+| RespCode       | String(2)   | M    | Response Code. "00" stands for success. See Annex 2 for details.  |
+| RespMsg        | String(128) | M    | Response Message. |
+| customs_code   | String(64)  | M    | Merchant Customs Record Code |
+| customs_name   | String(128) | M    | Merchant Customs Record Name |
+| customs_place  | String(128) | M    | Customs code, see Annex 1 Customs List for details. |
+| allpayOrderNum | String(64)  | M    | Conversion merchant order number of GoAllPay system. |
+| schemaTransId  | String(64)  | M    | The transaction ID of the payment channel.<br/>Note: UnionPay customs declaration needs to use this field as the customs declaration number of the logistics and sales orders. |
+| merID          | String(15)  | M    | Merchant ID, assigned by GoAllPay |
+| acqID          | String(11)  | M    | Acquiring Bank ID: "99020344" |
+| paymentSchema   | String(10)  | M    | Channel ID.<br>UnionPay:UP<br>WeChat Pay:WX<br>Alipay:AP |
+| transTime       | String(14)  | M    | Transaction time, format :" yyyyMMddHHmmss" |
+| signType        | String(10)  | M    | "MD5" or "SHA256" |
+| signature       | String(32)  | M    | MD5 or SHA256 signature |
+
+### 3.3 Declaration Query Interface
+
+**1.Request parameters**
+
+| Parameter | Type | Required | Description |
+| ------------- | ---------- | ---- | --------------------------------------------- |
+| version       | String(12)   | M    | "VER000000005" |
+| charSet       | String(6)    | M    | "UTF-8" |
+| transType     | String(4)  | M    | Transaction type: "INQY"  |
+| orderNum      | String(60) | M    | Transaction ID |
+| merID         | String(15) | M    | Merchant ID, assigned by GoAllPay. |
+| acqID         | String(11) | M    | Acquiring Bank ID: "99020344" |
+| paymentSchema   | String(10)  | M    | Channel ID.<br>UnionPay:UP<br>WeChat Pay:WX<br>Alipay:AP |
+| transTime       | String(14)  | M    | Transaction time, format :" yyyyMMddHHmmss" |
+| signType        | String(10)  | M    | "MD5" or "SHA256" |
+| signature       | String(32)  | M    | MD5 or SHA256 signature |
+
+**2.Response parameters**
+
+| Parameter  | Type | Required | Description |
+| ------------- | ----------- | ---- | --------------------- |
+| version       | String(12)   | M    | "VER000000005" |
+| charSet       | String(6)    | M    | "UTF-8" |
+| transType      | String(4)   | M    | "DECL"|
+| orderNum       | String(60)  | M    | Transaction ID |
+| RespCode       | String(2)   | M    | Response Code. "00" stands for success. See Annex 2 for details. |
+| RespMsg        | String(128) | M    | Response Message. |
+| customs_code   | String(64)  | M    | Merchant Customs Record Code |
+| customs_name   | String(128) | M    | Merchant Customs Record Name |
+| customs_place  | String(128) | M    | Customs code, see Annex 1 Customs List for details. |
+| allpayOrderNum | String(64)  | M    | Conversion merchant order number of GoAllPay system. |
+| schemaTransId  | String(64)  | M    | The transaction ID of the payment channel. |
+| merID          | String(15)  | M    | Merchant ID, assigned by GoAllPay. |
+| acqID          | String(11)  | M    | Acquiring Bank ID: "99020344" |
+| paymentSchema   | String(10)  | M    | Channel ID.<br>UnionPay:UP<br>WeChat Pay:WX<br>Alipay:AP |
+| transTime       | String(14)  | M    | Transaction time, format :" yyyyMMddHHmmss" |
+| signType        | String(10)  | M    | "MD5" or "SHA256" |
+| signature       | String(32)  | M    | MD5 or SHA256 signature |
+
+### 3.4 Declaration Update Interface
+
+**1.Request parameters**
+
+| Parameter | Type | Required | Description |
+| ----------- | ----------- | ---- | ----------- |
+| version | String(12)   | M    | "VER000000005" |
+| charSet | String(6)    | M    | "UTF-8" |
+| transType | String(4)   | M    | Transaction type: "DECL"  |
+| customsDeclarationNo | String(60)  | O    | The customs declaration order number is defined by the merchant. <br>Note: Alipay and WeChat can choose to send this field, but UnionPay cannot send this field. If Alipay and WeChat do not send this field, they will use orderNum as the customs declaration order number. |
+| orderNum        | String(60)  | M    | Transaction ID in the declaration interface. |
+| origOrderNum    | String(60)  | M    | Order number for successful payment |
+| productPrice    | String(12)  | M    | Commodity amount: such as 100CNY, expressed as 100 or 100.00 |
+| transportPrice  | String(12)  | M    | Shipping amount:such as 100CNY, expressed as 100 or 100.00 |
+| tarPrice        | String(12)  | M    | Tariff amount:such as 100CNY, expressed as 100 or 100.00 |
+| orderCurrency   | String(3)   | M    | Currency of the order: ISO standard, such as RMB filling in "CNY", us dollar filling in "USD"  |
+| customs_code    | String(64)  | M    | Merchant Customs Record Code |
+| customs_name    | String(128) | M    | Merchant Customs Record Name |
+| customs_place   | String(128) | M    | Customs code, see Annex 1 Customs List for details |
+| name            | String(64)  | M    | Consumer name |
+| IDCard          | String(32)  | M    | Consumer ID number |
+| customerAccount | String(64)  | M    | Consumer's registered account at the merchant |
+| businessType    | String(2)   | O    | Bonded import: 1<br>Direct import: 2<br>If you don’t fill in, the default is 1 Bonded Import. |
+| merID           | String(15)  | M    | Merchant ID, assigned by GoAllPay |
+| acqID           | String(11)  | M    | Acquiring Bank ID: "99020344" |
+| paymentSchema   | String(10)  | M    | Channel ID.<br>UnionPay:UP<br>WeChat Pay:WX<br>Alipay:AP |
+| transTime       | String(14)  | M    | Transaction time, format :" yyyyMMddHHmmss" |
+| signType        | String(10)  | M    | "MD5" or "SHA256" |
+| signature       | String(32)  | M    | MD5 or SHA256 signature |
+
+**2.Response parameters**
+
+| Parameter          | Type         | Required | Description          |
+| -------------- | ----------- | ---- | -------------------------- |
+| version       | String(12)   | M    | "VER000000005" |
+| charSet       | String(6)    | M    | "UTF-8" |
+| transType      | String(4)   | M    | "DECL" |
+| orderNum       | String(60)  | M    | Transaction ID |
+| RespCode       | String(2)   | M    | Response Code. "00" stands for success. See Annex 2 for details. |
+| RespMsg        | String(128) | M    | Response Message. |
+| customs_code   | String(64)  | M    | Merchant Customs Record Code |
+| customs_name   | String(128) | M    | Merchant Customs Record Name |
+| customs_place  | String(128) | M    | Customs code, see Annex 1 Customs List for details. |
+| allpayOrderNum | String(64)  | M    | Conversion merchant order number of GoAllPay system. |
+| schemaTransId  | String(64)  | M    | The transaction ID of the payment channel. |
+| merID          | String(15)  | M    | Merchant ID, assigned by GoAllPay. |
+| acqID          | String(11)  | M    | Acquiring Bank ID: "99020344" |
+| paymentSchema   | String(10)  | M    | Channel ID.<br>UnionPay:UP<br>WeChat Pay:WX<br>Alipay:AP |
+| transTime       | String(14)  | M    | Transaction time, format :" yyyyMMddHHmmss" |
+| signType        | String(10)  | M    | "MD5" or "SHA256" |
+| signature       | String(32)  | M    | MD5 or SHA256 signature |
+
+## 4.Annex 1 Customs List
+
+### 4.1 Alipay customs list
+
+| Customs name | Customs code |
+| ---------- | ------------- |
+| General Administration of Customs | ZONGSHU |
+| Hangzhou | HANGZHOU_ZONGSHU |
+| Henan Bonded Logistics Center | ZHENGZHOU |
+| Xinzheng Comprehensive Bonded Zone (Airport) (Push HENAN first, then ZONGSHU) | HENAN |
+| Ningbo | NINGBO |
+| Shanghai | SHANGHAI_CBT |
+| Nansha National Inspection | NANSHAGJ |
+| Tianjin (first push TIANJIN, then ZONGSHU) | TIANJIN |
+| Guangzhou (Airport) (Need to fill in the company's filing information in Guangzhou Electronic Port) | GUANGZHOU_AIRPORT |
+| Guangzhou (Nansha) (Need to fill in the company's filing information in Guangzhou Electronic Port)| GUANGZHOU_NANSHA |
+| Guangzhou (Huangpu) (Need to fill in the company's filing information in Guangzhou Electronic Port)| GUANGZHOU_HUANGPU |
+| Guangzhou (Shatian) (Need to fill in the company's filing information in Guangzhou Electronic Port)| GUANGZHOU_SHATIAN |
+
+### 4.2 WeChat Pay customs list
+
+| Customs name | Customs code |
+| ----------- | -------- |
+| Guangzhou (General Administration Edition) | GUANGZHOU_ZS |
+| Guangzhou Huangpu National Inspection (Orders pushed to Huangpu National Inspection need to be pushed to Guangzhou (General Administration version) and Guangzhou Huangpu National Inspection respectively, that is, two customs declaration interfaces need to be requested) | GUANGZHOU_HP_GJ |
+| Guangzhou Nansha National Inspection (Orders pushed to Nansha National Inspection need to be pushed to Guangzhou (General Administration version) and Guangzhou Nansha National Inspection respectively, that is, two customs declaration interfaces need to be requested) | GUANGZHOU_NS_GJ |
+| Hangzhou (General Administration Edition) | HANGZHOU_ZS |
+| Ningbo | NINGBO |
+| Zhengzhou (Bonded Logistics Center) | ZHENGZHOU_BS |
+| Chongqing | CHONGQING |
+| Shanghai (General Administration Edition) | SHANGHAI_ZS |
+| Shenzhen | SHENZHEN |
+| Zhengzhou Comprehensive Insurance (General Administration Edition) | ZHENGZHOU_ZH_ZS |
+| Tianjin | TIANJIN |
+
+### 4.3 UnionPay customs list
+
+| Customs name | Customs code |
+| ----------- | -------- |
+| General Administration of Customs | CUSTOMSHEADOFFICE |
+| Beijing | CUSTOMSHEADOFFICE |
+| Guangzhou | GUANGZHOU |
+| Ningbo | NINGBO |
+| Shanghai | SHANGHAI |
+
+The above list of customs is the customs that supports customs declaration through API for each payment channel. The actual support situation is subject to the update of each payment channel.
+
+## 5.Annex 2 Response code
+
+| RespCode | Description      |
+| ------ | --------- |
+| 00     | Success |
+| 01     | Fail |
+| 04     | Processing |
+| 61     | Exceed the limit |
+| U1     | Merchant ID is not exsit |
+| U2     | Signature is not correct |
+| U3     | Message is tampered |
+| U4     | Missing parameter   |
+| U5     | Invalid parameter |
+| U6     | Repeat order number |
+| U7     | Order is not exist  |
+| U8     | Parameter is null   |
+| U9     | System error   |
+| P1     | Channel is not setted  |
+| P2     | Currency is not setted  |
+| E1     | Identity information does not match |
+
+***Note: If the response code is 04 when using Unionpay custom declaration, it means the declaration is still processing now. Merchant needs to to call the declaration query API to get the final status later.**
+
+## 6.Technical support
+
+If you have problems with debugging, please contact us: support@allpayx.com

+ 8 - 9
AllPay_Integration_Specification_CH.md

@@ -72,7 +72,7 @@ GoAllPay 为客户提供统一的API接入,以帮助客户实现快速、安
 
 **3.跳转型消费接口响应报文**
 
-  商户需要提供一个 http/https 协议的接口,包含在参数里传递给GoAllPay,即 backURL。GoAllPay 服务器在支付完成后,会以 Post 方式调用 backURL,通知支付结果(JSON)。商户在接收到通知后,需响应字符串“OK”。
+  商户需要提供一个 http/https 协议的接口,包含在参数里传递给GoAllPay,即 backURL。GoAllPay 服务器在支付完成后,会以 POST 方式调用 backURL,通知支付结果(JSON)。商户在接收到通知后,需响应字符串“OK”。
 
   如果没有收到商户返回“OK”,GoAllPay将会过一段时间后重新推送,时间间隔为[15, 15, 30, 180, 1800, 3600, 7200, 14400, 14400],单位为秒。
 
@@ -280,7 +280,7 @@ GoAllPay 为客户提供统一的API接入,以帮助客户实现快速、安
 
 **3.响应报文**
 
-  商户需要提供一个 http/https 协议的接口,包含在参数里传递给GoAllPay,即 backURL。GoAllPay 服务器在支付完成后,会以 Post 方式调用 backURL,通知支付结果(JSON)。商户在接收到通知后,需响应字符串“OK”。
+  商户需要提供一个 http/https 协议的接口,包含在参数里传递给GoAllPay,即 backURL。GoAllPay 服务器在支付完成后,会以 POST 方式调用 backURL,通知支付结果(JSON)。商户在接收到通知后,需响应字符串“OK”。
 
   如果没有收到商户返回“OK”,GoAllPay将会过一段时间后重新推送,时间间隔为[15, 15, 30, 180, 1800, 3600, 7200, 14400, 14400],单位为秒。
 
@@ -454,7 +454,7 @@ GoAllPay 为客户提供统一的API接入,以帮助客户实现快速、安
 
 **1.接口功能说明** 
 
-​  为用户提供绑卡功能,适用于外卡交易。
+​  为用户提供绑卡功能,适用于外卡和银联卡交易。
 
 **2.请求报文格式** 
 
@@ -463,13 +463,13 @@ GoAllPay 为客户提供统一的API接入,以帮助客户实现快速、安
 | version       | String(12)  | M    | 统一填写为“VER000000005”                                   |
 | transType     | String(10)  | M    | 绑卡 "BIND"                                                |
 | orderNum      | String(60)  | M    | 绑卡订单号:商户自行定义,需保证同一商户号下订单号不能重复 |
-| orderCurrency | String(3)   | M    | 订单币种:ISO标准 如:人民币填写“CNY”,美元填写"USD"        |
 | customerId    | String(60)  | M    | 用户ID:  商户自行定义,需保证同一商户号下不同用户不能重复  |
 | frontURL      | String(400) | M    | 绑定结果前端跳转地址                                       |
 | backURL       | String(400) | M    | 绑定成功后异步通知到该地址                                 |
 | merID         | String(15)  | M    | 商户 ID,由 GoAllPay 分配                                  |
 | paymentSchema | String(10)  | M    | 渠道ID:[点击这里](paymentSchema.md) |
 | transTime     | String(14)  | M    | 交易时间,格式:"yyyyMMddHHmmss"                           |
+| tradeFrom     | String(20)  | M    | 场景,绑卡:"PAN-BINGDING"                           |
 | signType      | String(10)  | M    | MD5或SHA256                                                |
 | signature     | String(32)  | M    | 采用 MD5或SHA256 签名                                      |
 
@@ -506,12 +506,12 @@ GoAllPay 为客户提供统一的API接入,以帮助客户实现快速、安
 | version       | String(12) | M    | 统一填写为“VER000000005”                                   |
 | transType     | String(10) | M    | 绑卡 "UNBIND"                                              |
 | orderNum      | String(60) | M    | 解绑订单号:商户自行定义,需保证同一商户号下订单号不能重复 |
-| orderCurrency | String(3)  | M    | 订单币种:ISO标准 如:人民币填写“CNY”,美元填写"USD"        |
 | customerId    | String(60) | M    | 用户ID:  商户自行定义,需保证同一商户号下不同用户不能重复  |
 | token         | String(32) | M    | 绑卡时返回的token                                          |
 | merID         | String(15) | M    | 商户 ID,由 GoAllPay 分配                                  |
 | paymentSchema | String(10) | M    | 渠道ID:[点击这里](paymentSchema.md) |
 | transTime     | String(14) | M    | 交易时间,格式:"yyyyMMddHHmmss"                           |
+| tradeFrom     | String(20)  | M    | 场景,绑卡:"PAN-BINGDING"                           |
 | signType      | String(10) | M    | MD5或SHA256                                                |
 | signature     | String(32) | M    | 采用 MD5或SHA256 签名                                      |
 
@@ -543,9 +543,7 @@ GoAllPay 为客户提供统一的API接入,以帮助客户实现快速、安
 
 **2.请求报文格式** 
 
-  由通用字段和渠道专属字段组成。凡是上送字段都需参与签名。
-
-  *渠道专属字段:*[点击查看](bindCardPayExclusive_CH.md)
+ 
 
   *通用字段:*
 
@@ -565,13 +563,14 @@ GoAllPay 为客户提供统一的API接入,以帮助客户实现快速、安
 | paymentSchema | String(10)   | M    | 渠道ID:[点击这里](paymentSchema.md) |
 | detailInfo    | String(400)  | M    | 商品明细。格式:[{"goods_name":"iPhone X","quantity":"2"},{"goods_name":"iPhone 8","quantity":"4"}],需对该字段进行base-64编码后签名上送。 |
 | transTime     | String(14)   | M    | 交易时间,格式:"yyyyMMddHHmmss"                             |
+| tradeFrom     | String(20)  | M    | 场景,绑卡:"PAN-BINGDING"                           |
 | merReserve    | String(1024) | O    | 商户预留内容,可传任意内容,如购买商品信息、员号等,但不要传特殊符号,如逗号等。 |
 | signType      | String(10)   | M    | MD5或SHA256                                                  |
 | signature     | String(32)   | M    | 采用 MD5或SHA256 签名                                        |
 
 **3.响应报文**
 
-  商户需要提供一个 http/https 协议的接口,包含在参数里传递给GoAllPay,即 backURL。GoAllPay 服务器在支付完成后,会以 Post 方式调用 backURL,通知支付结果(JSON)。商户在接收到通知后,需响应字符串“OK”。
+  商户需要提供一个 http/https 协议的接口,包含在参数里传递给GoAllPay,即 backURL。GoAllPay 服务器在支付完成后,会以 POST 方式调用 backURL,通知支付结果(JSON)。商户在接收到通知后,需响应字符串“OK”。
 
   如果没有收到商户返回“OK”,GoAllPay将会过一段时间后重新推送,时间间隔为[15, 15, 30, 180, 1800, 3600, 7200, 14400, 14400],单位为秒。
 

+ 46 - 46
AllPay_Integration_Specification_EN.md

@@ -10,7 +10,7 @@ GoAllPay provides customers with unified API access to help them implement fast,
 ![image](https://git.allpayx.com/OpenAPI/b2c/raw/master/images/pc_flowsheet.png)
 ## 3.Description of verifying the signature 
 ```
-1.For a POST request message sent to the GoAllPay system, in which all incoming parameters (except signature parameters) according to the field name of ASCII smallest sequence (dictionary), using the format of the URL key/value pair (key1 = value1 & key2 = value2... ) spliced into a string String1.
+1.For the request message sent to the GoAllPay system, in which all incoming parameters (except signature parameters) according to the field name of ASCII smallest sequence (dictionary), using the format of the URL key/value pair (key1 = value1 & key2 = value2... ) spliced into a string String1.
 
 2.At the end of String1, the signature Key (assigned at GoAllPay upon access) agreed by both parties is spliced directly (no need to connect with "&"), resulting in a stringSignTemp string, and an encryption on stringSignTemp to get the value of signature.
 
@@ -20,7 +20,7 @@ GoAllPay provides customers with unified API access to help them implement fast,
 
 Common interface includes notification, asynchronous notification of transactions, transaction inquiry, refund, refund inquiry interface.
 
-### 4.1 General API access address 
+### 4.1 General API access URL 
 
 | Interface Name | Test URL                                 | Production URL                             |
 | ------- | ------------------------------------------- | --------------------------------------- |
@@ -42,7 +42,7 @@ Common interface includes notification, asynchronous notification of transaction
 
 This interface provides the function of purchase transaction for access merchants.
 
-**2.Request message format**
+**2.Request parameters**
 
 It consists of general fields and channel-specific fields. All upload fields must be signed. The consumption interface is divided into a jump type and a parameter return type. The default is a jump type, and the parameter return type will be described in the channel-specific field.
 
@@ -56,7 +56,7 @@ It consists of general fields and channel-specific fields. All upload fields mus
 | charSet       | String(6)    | M    | "UTF-8" |
 | transType     | String(4)    | M    | "PURC" |
 | orderNum      | String(60)   | M    | Order number: it is defined by the merchant itself, and the order number must not be repeated for the same merchant number       |
-| orderAmount   | String(12)   | M    | Order amount: if 100 yuan, it will be 100 or 100.00                    |
+| orderAmount   | String(12)   | M    | Order amount: if 100CNY, it will be 100 or 100.00                    |
 | orderCurrency | String(3)    | M    | Currency of the order: ISO standard, such as RMB filling in "CNY", US dollar filling in "USD" |
 | frontURL      | String(400)  | M    | When the payment is complete, jump to the address               |
 | backURL       | String(400)  | M    | Payment results are asynchronously notified to this address     |
@@ -72,7 +72,7 @@ It consists of general fields and channel-specific fields. All upload fields mus
 
 **3.Jump transformation Purchase interface response message**
 
-  The merchant needs to provide an HTTP/HTTPS protocol interface that is included in the parameters passed to the SDK, the backURL. After the payment is complete, the GoAllPay server will call the backURL as a POST, informing the payment result (JSON). When merchant receive the notification, the merchant is required to response String "OK".
+  The merchant needs to provide an HTTP/HTTPS protocol interface that is included in the parameters passed to the SDK, the backURL. After the payment is complete, the GoAllPay server will call the backURL by POST method, informing the payment result (JSON). When merchant receive the notification, the merchant is required to response String "OK".
 
   If we didn't receive "OK" from merchant,GoAllPay will resend the response message to merchant.Time interval is[15, 15, 30, 180, 1800, 3600, 7200, 14400, 14400], the unit is second.
 
@@ -84,10 +84,10 @@ Parameters as follows:
 | charSet       | String(6)    | M    | "UTF-8" |
 | transType     | String(4)    | M    | "PURC" |
 | orderNum      | String(60)   | M    | Order number |
-| orderAmount   | String(12)   | M    | Order amount: if 100 yuan, it will be 100 or 100.00                    |
+| orderAmount   | String(12)   | M    | Order amount: if 100CNY, it will be 100 or 100.00                    |
 | orderCurrency | String(3)    | M    | Currency of the order: ISO standard, such as RMB filling in "CNY", us dollar filling in "USD"        |
-| merID         | String(15)   | M    | Merchant ID, assigned by GoAllPay                                      |
-| acqID         | String(11)   | M    | "99020344"                                 |
+| merID         | String(15)   | M    | Merchant ID, assigned by GoAllPay |
+| acqID         | String(11)   | M    | "99020344" |
 | paymentSchema | String(10)   | M    | Channel ID |
 | RespCode      | String(2)    | M    | 00 stands for success; 01 stands for fail. See Chapter 6 Response Codes in this document for details. |
 | RespMsg       | String(20)   | M    | Response message |
@@ -95,8 +95,8 @@ Parameters as follows:
 | GWTime        | String(14)   | M    | yyyyMMddHHmmss this should be a GWtime, currently is local transaction time. |
 | transTime     | String(14)   | M    | Transaction time, format :" yyyyMMddHHmmss"                             |
 | merReserve    | String(1024) | O    | Merchant reserved content, can pass any content, such as purchase information, account number, etc., but do not pass special symbols, such as commas. |
-| signType      | String(10)   | M    | "MD5" or "SHA256"                                                  |
-| signature     | String(32)   | M    | MD5 or SHA256 signature                                        |
+| signType      | String(10)   | M    | "MD5" or "SHA256" |
+| signature     | String(32)   | M    | MD5 or SHA256 signature |
 
 ### 4.3 Inqiury interface 
 
@@ -112,7 +112,7 @@ Parameters as follows:
  ![](https://allpayfile-hd2.oss-cn-shanghai.aliyuncs.com/git/b2c/15665470156706.jpg)
 </div>
 
-**2.Request message format** 
+**2.Request parameters** 
 
 | Parameter          | Type       | Required | Description                                        |
 | ------------- | ---------- | ---- | ------------------------------------------------------------ |
@@ -127,7 +127,7 @@ Parameters as follows:
 | signType      | String(10) | M    | "MD5" or "SHA256"                                                          |
 | signature     | String(32) | M    | MD5 or SHA256 signature                                                |
 
-**3.Response message format**
+**3.Response parameters**
 
 | Parameter          | Type       | Required | Description                                         |
 | ------------- | ---------- | ---- | ------------------------------------------------------------ |
@@ -162,7 +162,7 @@ Parameters as follows:
  ![](https://allpayfile-hd2.oss-cn-shanghai.aliyuncs.com/git/b2c/15665469966231.jpg)
  </div>
 
-**2.Request message format** 
+**2.Request parameters** 
 
 | Parameter          | Type       | Required | Description |
 | ------------- | ---------- | ---- | ------------------------------------------------------------ |
@@ -171,7 +171,7 @@ Parameters as follows:
 | transType     | String(4)  | M    | "REFD" |
 | orderNum      | String(60) | M    | Refund order number: it is defined by the merchant, and the refund order number under the same merchant number cannot be repeated |
 | origOrderNum  | String(60) | M    | Original trade order number                                                 |
-| returnAmount  | String(12) | M    | Refund amount: if 100 yuan, it is 100 or 100.00                    |
+| returnAmount  | String(12) | M    | Refund amount: if 100CNY, it is 100 or 100.00                    |
 | orderCurrency | String(3)  | M    | Currency of the order: ISO standard, such as RMB filling in "CNY", us dollar filling in "USD"          |
 | merID         | String(15) | M    | Merchant ID, assigned by GoAllPay                                       |
 | paymentSchema | String(10) | M    | Channel ID:[Click Here](paymentSchema.md) |
@@ -180,7 +180,7 @@ Parameters as follows:
 | signType      | String(3)  | M    | "MD5" or "SHA256" |
 | signature     | String(32) | M    | MD5 or SHA256 signature |
 
-**3.Response message format**
+**3.Response parameters**
 
 | Parameter      | Type       | Required | Description |
 | --------- | ---------- | ---- | ---------------------------------------------- |
@@ -213,7 +213,7 @@ Parameters as follows:
  ![](https://allpayfile-hd2.oss-cn-shanghai.aliyuncs.com/git/b2c/15665470092257.jpg)
  </div>
 
-**2.Request message format** 
+**2.Request parameters** 
 
 | Parameter          | Type       | Required | Description                                         |
 | ------------- | ---------- | ---- | ------------------------------------------------------------ |
@@ -228,10 +228,10 @@ Parameters as follows:
 | signType      | String(10) | M    | "MD5" or "SHA256" |
 | signature     | String(32) | M    | MD5 or SHA256 signature |
 
-**3.Response message format**
+**3.Response parameters**
 
-| Parameter          | Type       | Required | Description                                         |
-| ------------- | ---------- | ---- | ------------------------------------------------------------ |
+| Parameter | Type | Required | Description |
+| ------------- | ---------- | ---- | ------------------ |
 | version       | String(12) | M    | "VER000000005" |
 | charSet       | String(6)  | M    | "UTF-8" |
 | transType     | String(4)  | M    | "RFQY" |
@@ -242,8 +242,8 @@ Parameters as follows:
 | paymentSchema | String(10) | M    | Channel ID |
 | RespCode      | String(2)  | M    | 00 stands for success; 01 stands for fail. See Chapter 6 Response Codes in this document for details. |
 | RespMsg       | String(20) | M    | Response message |
-| transTime     | String(14) | M    | Transaction time, format :" yyyyMMddHHmmss"                             |
-| GWTime        | String(14) | M    | yyyyMMddHHmmss this should be a GWtime, currently is local transaction time               |
+| transTime     | String(14) | M    | Transaction time, format :" yyyyMMddHHmmss" |
+| GWTime        | String(14) | M    | yyyyMMddHHmmss this should be a GWtime, currently is local transaction time |
 | signType      | String(10) | M    | "MD5" or "SHA256" |
 | signature     | String(32) | M    | MD5 or SHA256 signature |
 
@@ -253,7 +253,7 @@ Parameters as follows:
 
  The pre-authorization interface is applicable to foreign card (including VISA, MasterCard, JCB and other card brands) and UnionPay card transactions. Pre-authorized transactions will not participate in liquidation, and the issuing bank will temporarily freeze user funds.
 
-**2.Request message format**
+**2.Request parameters**
 
  It consists of general fields and channel-specific fields. All upload fields must be signed.
 
@@ -267,7 +267,7 @@ Parameters as follows:
 | charSet       | String(6)    | M    | "UTF-8" |
 | transType     | String(4)    | M    | "PAUT" |
 | orderNum      | String(60)   | M    | Order number: it is defined by the merchant itself, and the order number must not be repeated for the same merchant number |
-| orderAmount   | String(12)   | M    | Order amount: if 100 yuan, it will be 100 or 100.00 |
+| orderAmount   | String(12)   | M    | Order amount: if 100CNY, it will be 100 or 100.00 |
 | orderCurrency | String(3)    | M    | Currency of the order: ISO standard, such as RMB filling in "CNY", US dollar filling in "USD" |
 | frontURL      | String(400)  | M    | When the payment is complete, jump to the address |
 | backURL       | String(400)  | M    | Payment results are asynchronously notified to this address |
@@ -283,7 +283,7 @@ Parameters as follows:
 
 **3.Response message**
 
-  The merchant needs to provide an HTTP/HTTPS protocol interface that is included in the parameters passed to the SDK, the backURL. After the payment is complete, the GoAllPay server will call the backURL as a POST, informing the payment result (JSON). When merchant receive the notification, the merchant is required to response String "OK".
+  The merchant needs to provide an HTTP/HTTPS protocol interface that is included in the parameters passed to the SDK, the backURL. After the payment is complete, the GoAllPay server will call the backURL by POST method, informing the payment result (JSON). When merchant receive the notification, the merchant is required to response String "OK".
 
   If we didn't receive "OK" from merchant,GoAllPay will resend the response message to merchant.Time interval is[15, 15, 30, 180, 1800, 3600, 7200, 14400, 14400], the unit is second.
 
@@ -295,7 +295,7 @@ Parameters as follows:
 | charSet       | String(6)    | M    | "UTF-8" |
 | transType     | String(4)    | M    | "PAUT" |
 | orderNum      | String(60)   | M    | Order number |
-| orderAmount   | String(12)   | M    | Order amount: if 100 yuan, it will be 100 or 100.00 |
+| orderAmount   | String(12)   | M    | Order amount: if 100CNY, it will be 100 or 100.00 |
 | orderCurrency | String(3)    | M    | Currency of the order: ISO standard, such as RMB filling in "CNY", US dollar filling in "USD" |
 | merID         | String(15)   | M    | Merchant ID, assigned by GoAllPay |
 | acqID         | String(11)   | M    | "99020344" |
@@ -325,7 +325,7 @@ Parameters as follows:
  ![](https://allpayfile-hd2.oss-cn-shanghai.aliyuncs.com/git/b2c/15665464464405.jpg)
  </div>
 
-**2.Request message format**
+**2.Request parameters**
 
 | Parameter          | Type       | Required | Description |
 | ------------- | ---------- | ---- | ------------------------------------------------------ |
@@ -334,7 +334,7 @@ Parameters as follows:
 | transType     | String(4)  | M    | "PAUC" |
 | orderNum      | String(60) | M    | Order number: it is defined by the merchant itself, and the order number must not be repeated for the same merchant number |
 | origOrderNum  | String(60) | M    | Pre-authorized order number |
-| orderAmount   | String(12) | M    | Order amount: if 100 yuan, it will be 100 or 100.00 |
+| orderAmount   | String(12) | M    | Order amount: if 100CNY, it will be 100 or 100.00 |
 | orderCurrency | String(3)  | M    | Currency of the order: ISO standard, such as RMB filling in "CNY", US dollar filling in "USD"  |
 | merID         | String(15) | M    | Merchant ID, assigned by GoAllPay |
 | acqID         | String(11) | M    | "99020344" |
@@ -343,7 +343,7 @@ Parameters as follows:
 | signType      | String(10) | M    | "MD5" or "SHA256" |
 | signature     | String(32) | M    | MD5 or SHA256 signature |
 
-**3.Response message format**
+**3.Response parameters**
 
 | Parameter          | Type       | Required | Description |
 | ------------- | ---------- | ---- | ---------------------------------------------- |
@@ -377,10 +377,10 @@ Parameters as follows:
  ![](https://allpayfile-hd2.oss-cn-shanghai.aliyuncs.com/git/b2c/15665464582903.jpg)
  </div>
 
-**2.Request message format**
+**2.Request parameters**
 
 | Parameter          | Type       | Required | Description |
-| ------------- | ---------- | ---- | ------------------------------------------------------------ |
+| ------------- | ---------- | ---- | ---------- |
 | version       | String(12) | M    | "VER000000005" |
 | charSet       | String(6)  | M    | "UTF-8" |
 | transType     | String(4)  | M    | "VOID" |
@@ -393,10 +393,10 @@ Parameters as follows:
 | signType      | String(10) | M    | "MD5" or "SHA256" |
 | signature     | String(32) | M    | MD5 or SHA256 signature |
 
-**3.Response message format**
+**3.Response parameters**
 
 | Parameter          | Type       | Required | Description |
-| ------------- | ---------- | ---- | ---------------------------------------------- |
+| ------------- | ---------- | ---- | --------------- |
 | version       | String(12) | M    | "VER000000005" |
 | charSet       | String(6)  | M    | "UTF-8" |
 | transType     | String(4)  | M    | "VOID" |
@@ -418,7 +418,7 @@ Parameters as follows:
 
 To refund the transaction before 90 days, the merchant can't process the online refund interface, but need to call the interface to initiate the refund application. After the application is successful, our business staff will handle it manually. The processing period is about 3 to 5 working days. The refund application transaction will be successfully refunded after manual processing, and the transaction will be liquidated.
 
-**2.Request message format** 
+**2.Request parameters** 
 
 | Parameter          | Type       | Required | Description                                         |
 | ------------- | ---------- | ---- | ------------------------------------------------------------ |
@@ -427,7 +427,7 @@ To refund the transaction before 90 days, the merchant can't process the online
 | transType     | String(4)  | M    | "REFDREQ" |
 | orderNum      | String(60) | M    | Refund order number: it is defined by the merchant, and the refund order number under the same merchant number cannot be repeated |
 | origOrderNum  | String(60) | M    | Original trade order number                                                 |
-| returnAmount  | String(12) | M    | Refund amount: if 100 yuan, it is 100 or 100.00                    |
+| returnAmount  | String(12) | M    | Refund amount: if 100CNY, it is 100 or 100.00                    |
 | orderCurrency | String(3)  | M    | Currency of the order: ISO standard, such as RMB filling in "CNY", us dollar filling in "USD"          |
 | merID         | String(15) | M    | Merchant ID, assigned by GoAllPay                                       |
 | paymentSchema | String(10) | M    | Channel ID: [Click Here](paymentSchema.md) |
@@ -436,7 +436,7 @@ To refund the transaction before 90 days, the merchant can't process the online
 | signType      | String(3)  | M    | "MD5" or "SHA256" |
 | signature     | String(32) | M    | MD5 or SHA256 signature |
 
-**3.Response message format**
+**3.Response parameters**
 
 | Parameter      | Type       | Required | Description |
 | --------- | ---------- | ---- | ---------------------------------------------- |
@@ -461,7 +461,7 @@ To refund the transaction before 90 days, the merchant can't process the online
 
 ​    Provide users with card binding function, suitable for foreign card transactions.
 
-**2.Request message format** 
+**2.Request parameters** 
 
 | Parameter          | Type       | Required | Description                                         |
 | ------------- | ----------- | ---- | ---------------------------------------------------------- |
@@ -478,7 +478,7 @@ To refund the transaction before 90 days, the merchant can't process the online
 | signType      | String(10)  | M    | "MD5" or "SHA256"                                                |
 | signature     | String(32)  | M    | MD5 or SHA256 signature |
 
-**3.Response message format**
+**3.Response parameters**
 
 | Parameter      | Type       | Required | Description                                           |
 | ------------- | ---------- | ---- | ---------------------------------------------------------- |
@@ -504,7 +504,7 @@ To refund the transaction before 90 days, the merchant can't process the online
 
    Unbound card
 
-**2.Request message format** 
+**2.Request parameters** 
 
 | Parameter          | Type       | Required | Description                                         |
 | ------------- | ---------- | ---- | ---------------------------------------------------------- |
@@ -520,7 +520,7 @@ To refund the transaction before 90 days, the merchant can't process the online
 | signType      | String(10) | M    | "MD5" or "SHA256" |
 | signature     | String(32) | M    | MD5 or SHA256 signature |
 
-**3.Response message format**
+**3.Response parameters**
 
 | Parameter      | Type       | Required | Description                                           |
 | ------------- | ---------- | ---- | ---------------------------------------------------------- |
@@ -546,7 +546,7 @@ To refund the transaction before 90 days, the merchant can't process the online
 
    Card-tied consumer payment, debits the user based on the token returned when the card was tied.
 
-**2.Request message format** 
+**2.Request parameters** 
 
   It consists of general fields and channel-specific fields. All upload fields must be signed.
 
@@ -560,7 +560,7 @@ To refund the transaction before 90 days, the merchant can't process the online
 | charSet       | String(6)    | M    | "UTF-8" |
 | transType     | String(4)    | M    | "PURC" |
 | orderNum      | String(60)   | M    | Order number: it is defined by the merchant itself, and the order number must not be repeated for the same merchant number |
-| orderAmount   | String(12)   | M    | Order amount: if 100 yuan, it will be 100 or 100.00 |
+| orderAmount   | String(12)   | M    | Order amount: if 100CNY, it will be 100 or 100.00 |
 | orderCurrency | String(3)    | M    | Currency of the order: ISO standard, such as RMB filling in "CNY", us dollar filling in "USD" |
 | backURL       | String(400)  | M    | Payment results are asynchronously notified to this address |
 | customerId    | String(60)   | M    | User ID: It is defined by the merchant, and it cannot be repeated under the same merchant number. |
@@ -574,21 +574,21 @@ To refund the transaction before 90 days, the merchant can't process the online
 | signType      | String(10)   | M    | "MD5" or "SHA256" |
 | signature     | String(32)   | M    | MD5 or SHA256 signature |
 
-**3.Response message format**
+**3.Response parameters**
 
-  The merchant needs to provide an HTTP/HTTPS protocol interface that is included in the parameters passed to the SDK, the backURL. After the payment is complete, the GoAllPay server will call the backURL as a POST, informing the payment result (JSON). When merchant receive the notification, the merchant is required to response String "OK".
+  The merchant needs to provide an HTTP/HTTPS protocol interface that is included in the parameters passed to the SDK, the backURL. After the payment is complete, the GoAllPay server will call the backURL by POST method, informing the payment result (JSON). When merchant receive the notification, the merchant is required to response String "OK".
 
   If we didn't receive "OK" from merchant,GoAllPay will resend the response message to merchant.Time interval is[15, 15, 30, 180, 1800, 3600, 7200, 14400, 14400], the unit is second.
 
 Parameters as follows:
 
-| Parameter      | Type       | Required | Description                                           |
-| ------------- | ------------ | ---- | ------------------------------------------------------------ |
+| Parameter      | Type       | Required | Description |
+| ------------- | ------------ | ---- | ---------- |
 | version       | String(12)   | M    | "VER000000005" |
 | charSet       | String(6)    | M    | "UTF-8" |
 | transType     | String(4)    | M    | "PURC" |
 | orderNum      | String(60)   | M    | Order number: it is defined by the merchant itself, and the order number must not be repeated for the same merchant number |
-| orderAmount   | String(12)   | M    | Order amount: if 100 yuan, it will be 100 or 100.00 |
+| orderAmount   | String(12)   | M    | Order amount: if 100CNY, it will be 100 or 100.00 |
 | orderCurrency | String(3)    | M    | Currency of the order: ISO standard, such as RMB filling in "CNY", us dollar filling in "USD" |
 | merID         | String(15)   | M    | Merchant ID, assigned by GoAllPay |
 | acqID         | String(11)   | M    | "99020344"                                         |

+ 6 - 1
countrycode.md

@@ -18,10 +18,15 @@ p24|Przelewy24 only works for the countrycode "PL" and currencies "PLN" and "EUR
 safetypay|SafetyPay only works for country codes "AT", "BE", "BR", "CL", "CR", "DE", "EC", "ES", "MX", "NL", "PE" and currencies "EUR", "USD".
 qiwi|QIWI Payout only works for the countrycodes "RU", "KZ" and "UA", and - depending on your contract - currency "RUB" , "EUR" ,"KZT" and "USD".
 sepaddmodela|SEPA Direct Debit works for all SEPA countries and currency EUR.
-skrill|Skrill works for worldwide and currency EUR. In addition, the account holder name passed in the request has to be in the format <firstname><space><lastname>, with lastname having a minimum length of two characters and the total string a minimum length of five. Multiple first names are ok, valid examples are “John Dorian”, “William Charles Dickinson”. If these conditions are not met, the system will not accept the request.
+skrill|Skrill works for worldwide and currency EUR. In addition, the account holder name passed in the request has to be in the format <firstname><space><lastname>, with lastname having a minimum length of two characters and the total string a minimum length of five. Multiple first names are ok, valid examples are "John Dorian", "William Charles Dickinson". If these conditions are not met, the system will not accept the request.
 eps|eps only works for the countrycode "AT" and currency "EUR".
 ideal|iDEAL only works for the countrycode "NL" and currency "EUR".
 mybank|MyBank only works for the country code IT and currency EUR.
 poli|POLi only works for the countrycode/currency combinations "NZ"/"NZD" and "AU"/"AUD".
 trustpay|TrustPat is only available for currency EUR and country code CZ, SK.
 bcmc|Bancontact is available for currency EUR and country code BE.
+santander|Santander (Argentina) is available for currency USD and country code AR.
+pagofacil|Pago Facil (Argentina) is available for currency USD and country code AR.
+rapipago|Rapi Pago (Argentina) is available for currency USD and country code AR.
+konbini|Konbini only works for country code "JP" and currency "JPY".
+payeasy|Pay-easy only works for country code "JP" and currency "JPY".

+ 43 - 14
payExclusive_CH.md

@@ -193,6 +193,17 @@
 | RespMsg  | String | M    | 应答消息                           |
 | code_url | String | O    | 二维码字符串。应答码为00返回该字段 |
 
+#### 3.4 Express Pay
+
+ 消费接口专属字段
+
+| 参数      | 类型   | 属性 | 描述     |
+| --------- | ------ | ---- | -------- |
+| tradeFrom | String | M    | "PAN-PRESENT" |
+| cardno | String | M    | 卡号 |
+| cvv | String | M    | cvv2 |
+| expired | String | M    | 有效期 YYMM |
+
 
 ```javascript
 测试卡:
@@ -311,7 +322,9 @@ cvv:123
 | ------------ | ------ | ---- | ------------------------------------------------------------ |
 | tradeFrom    | String | M    | "H5"                                                         |
 | showShipAddr | String | M    | "1":显示账单填写表单, "0":不显示账单填写表单                 |
-| shipAddr     | String | O    | shipAddr=base64(json) <br>{"first_name":"wei","last_name":"wei","street":"address_line1","house_number":"address_line2","address_city":"new york","address_state":"new york","country_id":"us","address_zip":"10022","phone_num":"13512345678","email_address":"123@126.com"} |
+| shipAddr     | String | O    | base64_encode(json_encode(str))
+举例
+{"first_name":"","last_name":"","street":"address_line1","house_number":"address_line2","address_city":"new york","address_state":"new york","country_id":"us","address_zip":"10022","phone_num":"13512345678","email_address":"dd@126.com"}|
 
 ```javascript
 测试卡:
@@ -398,17 +411,7 @@ CVV2: 123
 | 参数      | 类型   | 属性 | 描述     |
 | --------- | ------ | ---- | -------- |
 | tradeFrom | String | M    | "H5"     |
-| bankCode  | String | M    | 银行代码。测试环境填写TEST0021,生产环境[点击此处查看详情](RevPayBankCode.md) |
-
-```javascript
-测试卡信息:
-FPX Test Card
-Payment ID : 3
-Bank Code : TEST0021
-Bank Name : SBI Bank A
-User Id : 1234
-Password : 1234
-```
+| Payment_ID  | String | M | Axiata Boost: 11<br>Grab Pay: 17<br>Touch ’n Go: 28<br>Maybank QR: 12 |
 
 ### 12 AliPayLocal渠道
 
@@ -432,7 +435,7 @@ Password : 1234
 | tradeFrom         | String | M    | "H5"                                                         |
 | countrycode       | String | M    | The 2-letter ISO country code of the country in which the payment instrument is issued/operated (e.g. DE). For details see [payment method specific documentation](countrycode.md). |
 | accountholdername | String | M    | The account holder - minimum of 3 characters, up to 100 charac- ters. |
-| tag               | String | M    | 取值如下:directpay, boleto, webpay, trustpay, skrill, singpost, sepaddmodela, safetypay, qiwi, p24, poli, paysafecard, mybank, itau, ideal, hipercard, giropay, eps, enets, dragonpay, bancodobrasil, baloto, aura, payu, bcmc |
+| tag               | String | M    | 取值如下:directpay, boleto, webpay, trustpay, skrill, singpost, sepaddmodela, safetypay, qiwi, p24, poli, paysafecard, mybank, itau, ideal, hipercard, giropay, eps, enets, dragonpay, bancodobrasil, baloto, aura, payu, bcmc, santander, pagofacil, rapipago, konbini, payeasy |
 
 ##### 13.1.1 当 tag 为 paysafecard 时,还需另外增加下面字段
 
@@ -499,6 +502,22 @@ Password : 1234
 | ----- | ------ | ---- | ------------------------------------------------- |
 | BEPURL | String | O    | Trigger URL for mobile payment options in the form BEP://1BC.GIROGATE.DE/BCMC/123456789$ICAE3BUIH5P9U53Y5HKA9CRT (contrived example). |
 
+##### 13.1.10 当 tag 为 santander, pagofacil, rapipago 时,还需另外增加下面字段
+
+| 参数  | 类型   | 属性 | 描述                                              |
+| ----- | ------ | ---- | ------------------------------------------------- |
+| nationalid | String | M    | Consumer’s national id (up to 30 characters) |
+| consumerref  | String | O    | Unique reference identifying the consumer, has to satisfy the following regular expression: [A-Za-z0-9.%,&/+*$-]{1,20} |
+| email  | String | M    | RFC compliant email address of the account holder      |
+
+##### 13.1.11 当 tag 为 konbini, payeasy 时,还需另外增加下面字段
+
+| 参数  | 类型   | 属性 | 描述                                              |
+| ----- | ------ | ---- | ------------------------------------------------- |
+| phone | String | M    | Consumer phone number without hyphens, country code or other characters (single-byte alphanumeric; must be between 10-11 digits) |
+| email | String | M    | RFC compliant email address of the account holder|  
+| iteminfo | String | M    | Information about the item(s) being purchased, displayed on the payment page (up to 22 characters) |          
+
 ### 14 India_Netbanking渠道
 
 #### 14.1 H5支付
@@ -518,4 +537,14 @@ Password : 1234
 | city | String | M    | City |
 | country | String | M    |Country code in ISO 3166|
 | state | String | M    | State code in ISO 3166-2, required for USA and Canada |
-| document_id | String | M    | Document ID of the consumer.|
+| document_id | String | M    | Document ID of the consumer.|
+
+### 15 PAYPAL渠道
+
+#### 15.1 H5支付
+
+ 消费接口专属字段
+
+| 参数      | 类型   | 属性 | 描述 |
+| --------- | ------ | ---- | ---- |
+| tradeFrom | String | M    | "H5" |

+ 41 - 14
payExclusive_EN.md

@@ -193,6 +193,17 @@ Response message:
 | RespMsg  | String | M    | Response message        |
 | code_url | String | O    | Characters to generate QR code. When RespCode=00 returns it. |
 
+#### 3.4 Express Pay
+
+ Purchase interface specific fields
+
+| Parameter | Type   | Required | Description     |
+| --------- | ------ | ---- | -------- |
+| tradeFrom | String | M    | "PAN-PRESENT" |
+| cardno | String | M    | UnionPay card number |
+| cvv | String | M    | cvv2 |
+| expired | String | M    | Expiry Date YYMM |
+
 ```javascript
 Test cards:
 
@@ -395,17 +406,7 @@ CVV2: 123
 | Parameter      | Type   | Required | Description     |
 | --------- | ------ | ---- | -------- |
 | tradeFrom | String | M    | "H5"     |
-| bankCode  | String | M    | Bank Code. Test environment filled in TEST0021, production environment [click here for details](RevPayBankCode.md) |
-
-```javascript
-Test card:
-FPX Test Card
-Payment ID : 3
-Bank Code : TEST0021
-Bank Name : SBI Bank A
-User Id : 1234
-Password : 1234
-```
+| Payment_ID  | String | M | Axiata Boost: 11<br>Grab Pay: 17<br>Touch ’n Go: 28<br>Maybank QR: 12 |
 
 ### 12 AliPayLocal
 
@@ -425,7 +426,7 @@ Password : 1234
 | tradeFrom         | String | M    | "H5"                                                         |
 | countrycode       | String | M    | The 2-letter ISO country code of the country in which the payment instrument is issued/operated (e.g. DE). For details see [payment method specific documentation](countrycode.md). |
 | accountholdername | String | M    | The account holder - minimum of 3 characters, up to 100 charac- ters. |
-| tag               | String | M    | Value:directpay, boleto, webpay, trustpay, skrill, singpost, sepaddmodela, safetypay, qiwi, p24, poli, paysafecard, mybank, itau, ideal, hipercard, giropay, eps, enets, dragonpay, bancodobrasil, baloto, aura, payu, bcmc |
+| tag               | String | M    | Value:directpay, boleto, webpay, trustpay, skrill, singpost, sepaddmodela, safetypay, qiwi, p24, poli, paysafecard, mybank, itau, ideal, hipercard, giropay, eps, enets, dragonpay, bancodobrasil, baloto, aura, payu, bcmc, santander, pagofacil, rapipago, konbini, payeasy |
 
 ##### 13.1.1 When tag is paysafecard, you should add the following parameters:
 
@@ -433,7 +434,7 @@ Password : 1234
 | ----------- | ------ | ---- | ------------------------------------------------------------ |
 | consumerref | String | M    | Unique reference identifying the consumer, has to satisfy the regular expression [A-Za-z0-9.%,&/+*$-]{1,20} |
 
-##### 13.1.2 When tag is in aura, baloto, bancodobrasil, boleto, hipercard, itau, webpay , you should add the following parameters:
+##### 13.1.2 When tag is in aura, baloto, bancodobrasil, boleto, hipercard, itau, webpay, you should add the following parameters:
 
 | Parameter      | Type   | Required | Description     |
 | ----------- | ------ | ---- | ------------------------------------------------------------ |
@@ -479,7 +480,7 @@ Password : 1234
 | zipcode | String | O    | Consumer's zip/postal code                        |
 | city    | String | O    | Consumer’s city                                   |
 
-##### 13.1.8 When tag is is sepaddmodela, you should add the following parameters:
+##### 13.1.8 When tag is sepaddmodela, you should add the following parameters:
 
 | Parameter      | Type   | Required | Description     |
 | ----- | ------ | ---- | ------------------------------------------------- |
@@ -492,6 +493,22 @@ Password : 1234
 | ----- | ------ | ---- | ------------------------------------------------- |
 | BEPURL | String | O    | Trigger URL for mobile payment options in the form BEP://1BC.GIROGATE.DE/BCMC/123456789$ICAE3BUIH5P9U53Y5HKA9CRT (contrived example). |
 
+##### 13.1.10 When tag is in santander, pagofacil, rapipago, you should add the following parameters:
+
+| Parameter      | Type   | Required | Description     |
+| ----- | ------ | ---- | ------------------------------------------------- |
+| nationalid | String | M    | Consumer’s national id (up to 30 characters) |
+| consumerref  | String | O    | Unique reference identifying the consumer, has to satisfy the following regular expression: [A-Za-z0-9.%,&/+*$-]{1,20} |
+| email  | String | M    | RFC compliant email address of the account holder      |
+
+##### 13.1.11 When tag is in konbini, payeasy, you should add the following parameters:
+
+| Parameter      | Type   | Required | Description     |
+| ----- | ------ | ---- | ------------------------------------------------- |
+| phone | String | M    | Consumer phone number without hyphens, country code or other characters (single-byte alphanumeric; must be between 10-11 digits) |
+| email | String | M    | RFC compliant email address of the account holder|  
+| iteminfo | String | M    | Information about the item(s) being purchased, displayed on the payment page (up to 22 characters) |
+
 ### 14 India_Netbanking
 
 #### 14.1 H5 mode
@@ -512,3 +529,13 @@ You should add the following parameters:
 | country | String | M    |Country code in ISO 3166|
 | state | String | M    | State code in ISO 3166-2, required for USA and Canada |
 | document_id | String | M    | Document ID of the consumer.|
+
+### 15 PAYPAL
+
+#### 15.1 H5 mode
+
+You should add the following parameters:
+
+| Parameter      | Type   | Required | Description     |
+| --------- | ------ | ---- | ---- |
+| tradeFrom | String | M    | "H5" |

+ 1 - 0
paymentSchema.md

@@ -15,4 +15,5 @@ RevPay |RevPay
 AliPayLocal |AliPayLocal
 PO |PO
 India_Netbanking |India_Netbanking
+PayPal|PAYPAL