## Channel exclusive allocation ### 1 WX #### 1.1 QR code no jump mode This mode returns the URL value of WeChat payment collection for parameter return, ask the merchant to convert it into QR code, generate the front interface of payment, and prompt the user to scan the code to pay. Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | -------- | | tradeFrom | String | M | "QRCODE" | Response message: | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | RespCode | String | M | 00 stands for success; 01 stands for fail. | | RespMsg | String | M | Response message | | code_url | String | O | Characters to generate QR code. When RespCode=00 returns it. | #### 1.2 QR code jump mode It's jump mode, open the front-end page provided by GoAllPay, which contains WeChat QR code. Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ------- | | tradeFrom | String | M | "QUICK" | #### 1.3 WeChat Official Accounts payment Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ------- | | tradeFrom | String | M | "JSAPI" | #### 1.4 WeChat Mini Programs payment Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---------- | | tradeFrom | String | M | "APPLET" | | openid | String | M | Wechat openid | Response message: | Parameter | Type | Required | Description | | ---------- | ------ | ---- | ------------------------------------------------------ | | RespCode | String | M | 00 stands for success; 01 stands for fail. | | RespMsg | String | M | Response message | | sdk_params | String | O | Required parameter for Mini Program payment(JSON). When RespCode=00 returns it. | Parameter sdk_params is used to call up the WeChat Mini Programs payment. Please refer to the WeChat Mini Programs integration specification. #### 1.5 APP mode Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "APP" | Response message: | Parameter | Type | Required | Description | | -------- | ------ | ---- | --------------------------------------------------------- | | RespCode | String | M | 00 stands for success; 01 stands for fail. | | RespMsg | String | M | Response message | | tn | String | O | Transaction serial number. Required parameter for Wechat app payment. When RespCode=00 returns it. | After getting tn, call the SDK to pay according to APP document. ### 2 AP #### 2.1 WebSite mode Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "WEB" | #### 2.2 H5 mode Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ------- | | tradeFrom | String | M | "JSAPI" | #### 2.3 APP mode Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "APP" | Response message: | Parameter | Type | Required | Description | | -------- | ------ | ---- | --------------------------------------------------------- | | RespCode | String | M | 00 stands for success; 01 stands for fail. | | RespMsg | String | M | Response message | | tn | String | O | Transaction serial number. Required parameter for Wechat app payment. When RespCode=00 returns it. | After getting tn, call the SDK to pay according to APP document. #### 2.4 QR code no jump mode This mode returns the URL value of WeChat payment collection for parameter return, ask the merchant to convert it into QR code, generate the front interface of payment, and prompt the user to scan the code to pay. Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | -------- | | tradeFrom | String | M | "QRCODE" | Response message: | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | RespCode | String | M | 00 stands for success; 01 stands for fail. | | RespMsg | String | M | Response message | | code_url | String | O | Characters to generate QR code. When RespCode=00 returns it. | #### 2.5 Alipay Mini Programs payment Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---------- | | tradeFrom | String | M | "APPLET" | Response message: | Parameter | Type | Required | Description | | ---------- | ------ | ---- | ------------------------------------------------------ | | RespCode | String | M | 00 stands for success; 01 stands for fail. | | RespMsg | String | M | Response message | | sdk_params | String | O | Required parameter for Mini Program payment(JSON). When RespCode=00 returns it. | Parameter sdk_params is used to call up the Alipay Mini Programs payment. Please refer to the Alipay Mini Programs integration specification. ### 3 UP #### 3.1 H5 mode, adaptive PC and mobile Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---- | | tradeFrom | String | M | "H5" | #### 3.2 APP mode Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "APP" | Response message: | Parameter | Type | Required | Description | | -------- | ------ | ---- | --------------------------------------------------------- | | RespCode | String | M | 00 stands for success; 01 stands for fail. | | RespMsg | String | M | Response message | | tn | String | O | Transaction serial number. Required parameter for Wechat app payment. When RespCode=00 returns it. | After getting tn, call the SDK to pay according to APP document. #### 3.3 QR code no jump mode This mode returns the URL value of WeChat payment collection for parameter return, ask the merchant to convert it into QR code, generate the front interface of payment, and prompt the user to scan the code to pay. Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | -------- | | tradeFrom | String | M | "QRCODE" | Response message: | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | RespCode | String | M | 00 stands for success; 01 stands for fail. | | RespMsg | String | M | Response message | | code_url | String | O | Characters to generate QR code. When RespCode=00 returns it. | ```javascript Test cards: Credit card:6250947000000014 mobile:+852 11112222 cvn2: 123 exp date: month 12 year 33 SMS Code on PC: 111111 SMS Code on Mobile: 123456 Debit card:6223164991230014 mobile:13012345678 PIN: 111111 cvn2: 123 exp date: month 12 year 33 SMS Code on PC:111111 SMS Code on Mobile:123456 Credit card:8171999927660000 mobile:+852 11112222 cvn2: 123 exp date: month 12 year 30 SMS Code on PC: 111111 SMS Code on Mobile: 123456 ``` ### 4 Apple Pay #### 4.1 APP mode Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "APP" | Response message: | Parameter | Type | Required | Description | | -------- | ------ | ---- | --------------------------------------------------------- | | RespCode | String | M | 00 stands for success; 01 stands for fail. | | RespMsg | String | M | Response message | | tn | String | O | Transaction serial number. Required parameter for Wechat app payment. When RespCode=00 returns it. | After getting tn, call the SDK to pay according to APP document. ### 5 CA #### 5.1 APP mode Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "APP" | Response message: | Parameter | Type | Required | Description | | -------- | ------ | ---- | --------------------------------------------------------- | | RespCode | String | M | 00 stands for success; 01 stands for fail. | | RespMsg | String | M | Response message | | tn | String | O | Transaction serial number. Required parameter for CA app payment. When RespCode=00 returns it.| After you get tn,please integrate according to [Android Integration Specification](/v5/android/Android_Integration_Specification_EN.md) ### 6 MIPAY #### 6.1 H5 mode Purchase interface specific fields | Parameter | Type | Required | Description | | ---------- | ------ | ---- | ------------------------------------------------------------ | | tradeFrom | String | M | "H5" | | firstname | String | M | This is name of the customer who is doing the transaction. | | email | String | M | this is email id of the customer who is doing transaction | | phone | String | M | Phone number of the customer | | customerId | String | O | Customer ID, when client register on merchant, merchant distribute it to client. | ```javascript Test environment configuration: Modify the test machine hosts file, add the following two information. 114.80.87.249 account.preview.n.xiaomi.net 114.80.87.249 api.account.preview.n.xiaomi.net Test card: Card number:5123456789012346 Validity period:0520 cvv:123 ``` ### 7 EB #### 7.1 H5 mode Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---------------------------------------------------------- | | tradeFrom | String | M | "H5" | | firstname | String | M | This is name of the customer who is doing the transaction. | | email | String | M | this is email id of the customer who is doing transaction | | phone | String | M | Phone number of the customer | ### 8 PF #### 8.1 H5 mode Purchase interface specific fields | Parameter | Type | Required | Description | | ----------------- | ------ | ---- | --------- | | tradeFrom | String | M | "H5" | | email | String | M | email | | transport_express | String | M | tracking number | ```javascript Test card: Card Number: 4242424242424242 Expriation Date: 1122 CVC: 111 ``` ### 9 APHK #### 9.1 H5 mode Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ------- | | tradeFrom | String | M | "JSAPI" | #### 9.2 QR code no jump mode This mode returns the URL value of WeChat payment collection for parameter return, ask the merchant to convert it into QR code, generate the front interface of payment, and prompt the user to scan the code to pay. Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | -------- | | tradeFrom | String | M | "QRCODE" | Response message: | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | RespCode | String | M | 00 stands for success; 01 stands for fail. | | RespMsg | String | M | Response message | | code_url | String | O | Characters to generate QR code. When RespCode=00 returns it. | #### 9.3 APP mode Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "APP" | Response message: | Parameter | Type | Required | Description | | -------- | ------ | ---- | --------------------------------------------------------- | | RespCode | String | M | 00 stands for success; 01 stands for fail. | | RespMsg | String | M | Response message | | tn | String | O | Transaction serial number. Required parameter for Wechat app payment. When RespCode=00 returns it. | After getting tn, call the SDK to pay according to APP document. ### 10 FC #### 10.1 H5 mode Purchase interface specific fields | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---- | | tradeFrom | String | M | "H5" | ```javascript Test card: Card Number: 4761340000000019 Expiry Date: 1217 CVV2: 830 Card Number: 5204730000002555 Expiry Date: 1225 CVV2: 123 ``` ### 11 RevPay #### 11.1 H5 mode | 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 ``` ### 12 AliPayLocal #### 12.1 H5 mode | Parameter | Type | Required | Description | | --------- | ------ | ---- | ------- | | tradeFrom | String | M | "H5" | | sub_brand_code | String | M | "gcash" or "dana" | ### 13 PO #### 13.1 H5 mode | Parameter | Type | Required | Description | | ----------------- | ------ | ---- | ------------------------------------------------------------ | | 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 | ##### 13.1.1 When tag is paysafecard, you should add the following parameters: | Parameter | Type | Required | Description | | ----------- | ------ | ---- | ------------------------------------------------------------ | | 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: | Parameter | Type | Required | Description | | ----------- | ------ | ---- | ------------------------------------------------------------ | | consumerref | String | M | Unique reference identifying the consumer, has to satisfy the regular expression [A-Za-z0-9.%,&/+*$-]{1,20} | | nationalid | String | M | Consumer’s national id (up to 30 characters) | | email | String | M | RFC compliant email address of the account holder | | address | String | M | Consumer's address | | zipcode | String | M | Consumer's zip/postal code | | dob | String | O | Date of birth, format YYYYMMDD | ##### 13.1.3 When tag is in dragonpay, enets, singpost , you should add the following parameters: | Parameter | Type | Required | Description | | ----- | ------ | ---- | ------------------------------------------------------ | | email | String | M | RFC compliant email address of the account holder | | phone | String | M | Valid international phone number of the account holder | ##### 13.1.4 When tag is in giropay, directpay, you should add the following parameters: | Parameter | Type | Required | Description | | ---- | ------ | ---- | ----------------------------------------------------------- | | bic | String | O | Valid BIC (8 or 11 alphanumeric letters) of consumer’s bank | ##### 13.1.5 When tag is in payu, p24, safetypay, you should add the following parameters: | Parameter | Type | Required | Description | | ----- | ------ | ---- | ------------------------------------------------- | | email | String | M | RFC compliant email address of the account holder | ##### 13.1.6 When tag is qiwi, you should add the following parameters: | Parameter | Type | Required | Description | | ----------- | ------ | ---- | ------------------------------------------------------------ | | mobilephone | String | M | Valid international Russian mobile phone number identifying the QIWI destination account to pay out to (excluding plus sign or any other international prefixes, including a leading 7 for Russia, 11 digits in total, e.g. 71234567890). | | siteid | String | M | Unique site identifier, forwarded to qiwi. Required for clients serving multiple points of sale. | ##### 13.1.7 When tag is skrill, you should add the following parameters: | Parameter | Type | Required | Description | | ------- | ------ | ---- | ------------------------------------------------- | | email | String | O | RFC compliant email address of the account holder | | address | String | O | Consumer's address | | 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: | Parameter | Type | Required | Description | | ----- | ------ | ---- | ------------------------------------------------- | | email | String | M | RFC compliant email address of the account holder | | iban | String | M | Valid IBAN | ##### 13.1.9 When tag is bcmc, you should add the following parameters: | Parameter | Type | Required | Description | | ----- | ------ | ---- | ------------------------------------------------- | | BEPURL | String | O | Trigger URL for mobile payment options in the form BEP://1BC.GIROGATE.DE/BCMC/123456789$ICAE3BUIH5P9U53Y5HKA9CRT (contrived example). | ### 14 India_Netbanking #### 14.1 H5 mode You should add the following parameters: | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---- | | tradeFrom | String | M | "H5" | | bank_code | String | M | [bank list](India_Netbanking_BankCode.md) | | email | String | M | Must contain valid e-mail of customer| | phone | String | M | Must contain valid phone number of customer | | firstname | String | M | Customer first name | | lastname | String | M | Customer last name | | address | String | M | address | | zip_code | String | M | ZIP code | | 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.|