## Channel exclusive fields ### 1. WX #### 1.1 QR code no jump mode This mode returns the QR code string, and merchants need to generate the QR code themselves. **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | -------- | | tradeFrom | String | M | "QRCODE" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | code_url | String | O | QR code string | #### 1.2 QR code jump mode This mode will redirect to the QR code page generated by GoAllPay. **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ------- | | tradeFrom | String | M | "QUICK" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | #### 1.3 WeChat Official Accounts payment **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ------- | | tradeFrom | String | M | "JSAPI" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Payment URL | #### 1.4 WeChat Mini Programs payment **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---------- | | tradeFrom | String | M | "APPLET" | | openid | String | M | Wechat openid | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | ---------- | ------ | ---- | ------------------------------------------------------ | | sdk_params | Object | O | Required parameter for Mini Program payment. | 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 **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "APP" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | --------------------------------------------------------- | | tn | String | O | Transaction serial number. Required parameter for Wechat app payment. | After getting tn, call the SDK to pay according to APP document. ### 2. AP #### 2.1 WebSite mode **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "WEB" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | #### 2.2 H5 mode **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ------- | | tradeFrom | String | M | "JSAPI" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Payment URL | #### 2.3 APP mode **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "APP" | Response message: | Parameter | Type | Required | Description | | -------- | ------ | ---- | --------------------------------------------------------- | | tn | String | O | Transaction serial number. Required parameter for Alipay app payment. | After getting tn, call the SDK to pay according to APP document. #### 2.4 QR code no jump mode This mode returns the QR code string, and merchants need to generate the QR code themselves. **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | -------- | | tradeFrom | String | M | "QRCODE" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | code_url | String | O | QR code string | #### 2.5 Alipay Mini Programs payment **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---------- | | tradeFrom | String | M | "APPLET" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | ---------- | ------ | ---- | ------------------------------------------------------ | | sdk_params | String | O | Required parameter for Mini Program payment. | 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 **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---- | | tradeFrom | String | M | "H5" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | #### 3.2 APP mode **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "APP" | Response message: | Parameter | Type | Required | Description | | -------- | ------ | ---- | --------------------------------------------------------- | | tn | String | O | Transaction serial number. Required parameter for app payment. | After getting tn, call the SDK to pay according to APP document. #### 3.3 QR code no jump mode This mode returns the QR code string, and merchants need to generate the QR code themselves. **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | -------- | | tradeFrom | String | M | "QRCODE" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | code_url | String | O | QR code string | #### 3.4 Express Pay **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | -------- | | tradeFrom | String | M | "PAN-PRESENT" | | cardno | String | M | UnionPay card number | | cvv | String | M | cvv2 | | expired | String | M | Expiry Date. Format: YYMM | ```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 **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "APP" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | tn | String | O | Transaction serial number. Required parameter for Apple Pay. | After getting tn, call the SDK to pay according to APP document. ### 5. FC #### 5.1 H5 mode ##### 5.1.1 CIL international card **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---- | | tradeFrom | String | M | "H5" | ```javascript CIL test card Card Number: 4761340000000019 Expiry Date: 1217 CVV2: 830 Card Number: 5204730000002555 Expiry Date: 1225 CVV2: 123 ``` ##### 5.1.2 SN international card **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---- | | tradeFrom | String | M | "H5" | | billCountry | String | O | Billing country/region, 2-digit country code, such as: US | | billState | String | O | Billing state/province/state, 2-digit code, such as: CA | | billCity | String | O | Billing city | | billStreet | String | O | Billing address | | billEmail | String | O | Billing email | | billPostalCode | String | O | Billing zip code | | logisticsCountry | String | O | Logistics country/region, 2-digit country code, such as: US | | logisticsState | String | O | Logistics state/province/state, 2-digit code, such as: CA | | logisticsCity | String | O | Logistics city | | logisticsStreet | String | O | Logistics address | | logisticsPostalCode | String | O | Logistics zip code | | logisticsEmail | String | O | Logistics email | ```javascript SN test card Card Number: 5309289710447190 Expiry Date: 0825 CVV2: 900 ``` ##### 5.1.3 TL international card **Request parameters** | Parameter | Type | Required | Description | | ------------------- | ------ | ---- | -------------------------------- | | tradeFrom | String | M | "H5" | | email | String | O | Cardholder email | | logisticsCountry | String | M | Logistics country/region, 2-digit country code, such as: US | | logisticsState | String | M | Logistics state/province/state, 2-digit code, such as: CA | | logisticsCity | String | M | Logistics city | | logisticsStreet | String | M | Logistics address | | logisticsPostalCode | String | M | Logistics zip code | | logisticsPhone | String | M | Logistics phone number | ```javascript TL test card Card Number: 4012001037141112 Expiry Date: 1227 CVV2: 212 Card Number: 5204740000001002 Expiry Date: 1227 CVV2: 212 ``` ##### 5.1.4 ICBC international card **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ------------------------------------------------------------ | | tradeFrom | String | M | "H5" | | ieu | String | M | Language identification.
Portuguese: pt-BR
English: en-US
Chinese (simplified) : zh-CN
Chinese (traditional) : zh-TW
Please post these parameters strictly according to the document. | **ICBC test card** Click the card number to get the SMS verification code.
Card 1: [4574108900117879](https://gwinternet.icbcmo.site/sms-inq-svc/v1/inqByCardNo?cardNo=4574108900117879)
Card 2: [4377651201379895](https://gwinternet.icbcmo.site/sms-inq-svc/v1/inqByCardNo?cardNo=4377651201379895)
Card 3: [5440163901773005](https://gwinternet.icbcmo.site/sms-inq-svc/v1/inqByCardNo?cardNo=5440163901773005)
Card 4: [5305063800002981](https://gwinternet.icbcmo.site/sms-inq-svc/v1/inqByCardNo?cardNo=5305063800002981)
Card 5: [5305066800004683](https://gwinternet.icbcmo.site/sms-inq-svc/v1/inqByCardNo?cardNo=5305066800004683)
Card 6: [5305063800001223](https://gwinternet.icbcmo.site/sms-inq-svc/v1/inqByCardNo?cardNo=5305063800001223) ##### 5.1.5 RDP international card **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---- | | tradeFrom | String | M | "H5" | ```javascript RDP test card Card Number: 4111111111111111 Expiry Date: 122027 CVV2: 123 Card Number: 5200000900007102 Expiry Date: 122027 CVV2: 123 ``` ##### 5.1.6 VT international card **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---- | | tradeFrom | String | M | "H5" | ```javascript VT test card Card Number: 4111111111111111 Expiry Date: 1227 CVV2: 123 ``` **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | #### 5.2 Background mode (Applicable to SN and TL international card) **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---- | | tradeFrom | String | M | "API" | | cardNo | String | M | Card Number | | expDate | String | M | Expiry Date. Format: MMYY | | cvnCode | String | M | CVN | | lastName | String | M | Last Name | | firstName | String | M | First Name | | billCountry | String | O | Billing country/region, 2-digit country code, such as: US | | billState | String | O | Billing state/province/state, 2-digit code, such as: CA | | billCity | String | O | Billing city | | billStreet | String | O | Billing address | | billEmail | String | O | Billing email | | billPostalCode | String | O | Billing zip code | | billPhone | String | O | Billing phone | | logisticsCountry | String | O | Logistics country/region, 2-digit country code, such as: US | | logisticsState | String | O | Logistics state/province/state, 2-digit code, such as: CA | | logisticsCity | String | O | Logistics city | | logisticsStreet | String | O | Logistics address | | logisticsPostalCode | String | O | Logistics zip code | | logisticsEmail | String | O | Logistics email | | logisticsPhone | String | O | Logistics phone | | pcToken2 | String | O | Device fingerprint | | forterTokenCookie | String | O | Client buried point | | userIP | String | O | User IP | ### 6. RevPay #### 6.1 H5 mode **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | -------- | | tradeFrom | String | M | "H5" | | Payment_ID | String | M | Axiata Boost: 11
Grab Pay: 17
Touch ’n Go: 28
Maybank QR: 12 | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | ### 7. AliPayLocal #### 7.1 H5 mode **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ------- | | tradeFrom | String | M | "H5" | | sub_brand_code | String | M | "gcash", "dana", "kakaopay", "alipay_hk" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | ### 8. PO #### 8.1 H5 mode **Request parameters** | Parameter | Type | Required | Description | | ----------------- | ------ | ---- | ------------------------------------------------------------ | | tradeFrom | String | M | "H5" | | tag | String | M | Value:directpay, boleto, webpay, trustpay, skrill, sepaddmodela, safetypay, qiwi, p24, poli, paysafecard, mybank, itau, ideal, hipercard, giropay, eps, enets, dragonpay, bancodobrasil, baloto, aura, payu, bcmc, santander, pagofacil, rapipago, konbini, payeasy, doku, ovo, grabpayotp | | 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 characters. | ##### 8.1.1 When tag is paysafecard, you should add the following parameters: | Parameter | Type | Required | Description | | ----------- | ------ | ---- | ------------------------------------------------------------ | | consumerref | String | O | Unique reference identifying the consumer, has to satisfy the regular expression [A-Za-z0-9.%,&/+*$-]{1,20} | ##### 8.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 | ##### 8.1.3 When tag is in dragonpay, enets, 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 | ##### 8.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 | ##### 8.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 | ##### 8.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. | ##### 8.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 | ##### 8.1.8 When tag 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 | ##### 8.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). | ##### 8.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 | ##### 8.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) | ##### 8.1.12 When tag is in doku, ovo, you should add the following parameters: | Parameter | Type | Required | Description | | ---------- | ------ | ---- | ------------------------------------------------------------ | | email | String | M | RFC compliant email address of the account holder | | orderitems | String | M | The list of purchased items.
Make sure you follow the following format for the orderitems parameter: "<item_description>,<unit_price_with_two_decimal_places>,<quantity>,<total_cost_per_item_with_two_decimal_places>". Use commas to separate each field and semicolon to separate each item. The only allowed characters in the item description are alphanumeric, blank space, hyphen, and dot. Ensure that the total cost of all items equals the transaction amount. If the format or the total cost of the items are not correct, the order details do not show on payment page.

Example:
"table,1000.00,2,2000.00;Laptop 2.0,15000.00,2,30000.00"

In the example above, there are two items in the basket:
1. Item 1
  • Description: table
  • Unit price: 1000.00
  • Quantity: 2
  • Total cost: 2000.00
2. Item 2
  • Description: Laptop 2.0
  • Unit price: 15000.00
  • Quantity: 2
  • Total cost: 30000.00
The total transaction amount is 32000.00 | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | ### 9. India_Netbanking #### 9.1 H5 mode **Request 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(2) | M |Country code in ISO 3166. Example: IN| | document_id | String | M | Consumer's Indian PAN. Must be string with 10 alphanumeric letters. 5 letters, followed by 4 numbers, followed by 1 letter or number. Example: ABCDE1234F| **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | ### 10. PAYPAL #### 10.1 H5 mode **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---- | | tradeFrom | String | M | "H5" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | ### 11. Neosurf #### 11.1 H5 mode **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---- | | tradeFrom | String | M | "H5" | | 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(2) | M |Country code in ISO 3166. Example: DE| **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | ```javascript Test Pincode: 2639777698 ``` ### 12. DNC #### 12.1 H5 mode **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ---- | | tradeFrom | String | M | "H5" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | #### 12.2 Background mode **Request parameters** | Parameter | Type | Required | Description | | ---------- | ------ | ---- | ------------------ | | tradeFrom | String | M | "API" | | cardno | String | M | Card number. Encrypted with RSA public key | | ExpiryDate | String | M | Expiry date. Format: MM/YY. Encrypted with RSA public key | | cvv2 | String | M | CVV2. Encrypted with RSA public key | ```javascript Test card Card Number: 5204730000002555 Expiry Date: 1225 CVV2: 123 ``` ### 13. AliPayPlus #### 13.1 H5 mode **Request parameters** | Parameter | Type | Required | Description | | -------------- | ------ | ---- | ------------------------------------------------------------ | | tradeFrom | String | M | "H5" | | OsType | String | M | "IOS", "ANDROID" | | sub_brand_code | String | M | "gcash", "dana", "kakaopay", "alipay_hk", "truemoney", "tng" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | #### 13.2 WebSite mode **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | ----- | | tradeFrom | String | M | "WEB" | | sub_brand_code | String | M | "gcash", "dana", "kakaopay", "alipay_hk", "truemoney", "tng" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | payUrl | String | O | Cashier URL | #### 13.3 QR code no jump mode This mode returns the QR code string, and merchants need to generate the QR code themselves. **Request parameters** | Parameter | Type | Required | Description | | --------- | ------ | ---- | -------- | | tradeFrom | String | M | "QRCODE" | | sub_brand_code | String | M | "gcash", "kakaopay", "alipay_hk", "tng" | **Response parameter "parameter" details** | Parameter | Type | Required | Description | | -------- | ------ | ---- | ------------------------------- | | code_url | String | O | QR code string |