Changelog
No change log
FAQ
No faq
Signature Rules
To ensure that the data is not tampered with during transmission, the system requires you to sign the payment parameter data and send the data signature along with the payment request
The MD5 Signature
- The signature mode of all interfaces in the system is MD5. For details about the signature field, see the signature parameter remarks of each interface
- Verify the signature, you can to MD5 signature string 123456 signature string E10ADC3949BA59ABBE56E057F20F883E result, can think the signature right
- Signature rule: Concatenates the fields to be signed in the specified order, and converts all the characters after the signature to uppercase after the MD5 signature
- The merchant key can be obtained from the merchant background after the merchant is successfully registered and approved
Payment API
Request Parameters
- Request URL:
- production: https://pay.online.ai/payment
- Request Type: POST
- Request Header: Content-Type:application/json
- Request Header Parameters:
Parameter name | Required | Type | Explain | Length | Remark |
---|---|---|---|---|---|
paymentType | Yes | String | Payment Type | 15 | default is Empty is Credit Card Pay UnionPay :UNIONPAY WeChat : WECHAT AliPay: ALIPAY |
- Body Parameters:
Body Parameters
{
"merNo": 123455,
"merOrderNo": "1641972507000",
"currencyCode": "CNY",
"sourceAmount": "100.05",
"returnUrl": "http://baidu.com",
"sign": "9D6FDF4880B00B002B1F2AB61AE9A721",
"cardNo": "6011200081728932",
"cardExpireMonth": "06",
"cardExpireYear": "2020",
"cardSecurityCode": "361",
"billFirstName": "san",
"billingLastName": "zhang",
"billingAddress1": "China",
"billingCity": "shanghai",
"billingState": "shanghai",
"billingCountry": "CN",
"billingZipCode": "200000",
"billingPhone": "13688888888",
"shippingFirstName": "san",
"shippingLastName": "zhang",
"shippingAddress1": "China",
"shippingCity": "shanghai",
"shippingState": "shanghai",
"shippingCountry": "CN",
"shippingZipCode": "200000",
"shippingPhone": "13688888888",
"userAgent": "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/6.0)",
"ipAddress": "116.235.134.86",
"version": "V3.0.0",
"userId": "329627618558021",
"email": "[email protected]",
"osType": "ANDROID",
"terminal":"WAP",
"productInfo": [
{
"sku": "1",
"productName": "mac pro",
"price": "12000",
"quantity": "1"
},
{
"sku": "2",
"productName": "iphone13",
"price": "8000",
"quantity": "1"
}
]
}
Parameter name | Required | Type | Explain | Length | Remark |
---|---|---|---|---|---|
merNo | Yes | Integer | Merchant Number | 10 | Unique identifier assigned to the merchant by the onlinepay payment platform when registering with onlinepay |
merOrderNo | Yes | String | Merchant Order Number | 32 | Each order must be unique, and each merchant order number can only be submitted once within 1 second |
currencyCode | Yes | String | Currency | 3 | |
sourceAmount | Yes | String | Total amount of the order | 12 | keep two decimals |
returnUrl | Yes | String | Jump address after payment is completed | 512 | |
notifyUrl | No | String | Asynchronous notification address | 512 | The asynchronous notification address is used when check out mode or 3DS pays or UnionPay scanning code,WeChat,AliPay pay to receive onlinepay to push payment results to merchants |
sign | Yes | String | signature | 32 | (merNo、merOrderNo、currencyCode、sourceAmount、Merchant key) Please refer to See signature for details |
cardNo | Yes | String | card number | 16 | check out mode Can be empty,UnionPay Can be empty |
cardExpireMonth | Yes | String | Expiry date of card (month) | 2 | check out mode Can be empty,UnionPay ,WeChat,AliPay Can be empty |
cardExpireYear | Yes | String | Expiry date of card (year) | 4 | check out mode Can be empty,UnionPay ,WeChat,AliPay Can be empty |
cardSecurityCode | Yes | String | CVV2/CSC | 3 | check out mode Can be empty,UnionPay ,WeChat,AliPay Can be empty |
billingFirstName | Yes | String | First Name | 50 | UnionPay ,WeChat,AliPay Can be empty |
billingLastName | Yes | String | Last name | 50 | UnionPay Can,WeChat,AliPay be empty |
billingAddress1 | Yes | String | billing address 1 | 128 | UnionPay ,WeChat,AliPay Can be empty |
billingAddress2 | No | String | billing address 2 | 128 | UnionPay ,WeChat,AliPay Can be empty |
billingCity | Yes | String | City of residence (bill) | 100 | UnionPay ,WeChat,AliPayCan be empty |
billingState | Yes | String | State Name (Bill) | 100 | UnionPay ,WeChat,AliPay Can be empty |
billingCountry | Yes | String | International ISO country abbreviation | 2 | Refer to the country code table,UnionPay ,WeChat,AliPay Can be empty |
billingZipCode | Yes | String | Postal Code | 20 | UnionPay ,WeChat,AliPay Can be empty |
billingPhone | Yes | String | billing phone | 20 | UnionPay ,WeChat,AliPay Can be empty |
billingEmail | Yes | String | billing email | 100 | UnionPay ,WeChat,AliPay Can be empty |
shippingFirstName | Yes | String | Consignee’s first name | 50 | UnionPay ,WeChat,AliPay Can be empty |
shippingLastName | Yes | String | Consignee’s last name | 50 | UnionPay Can,WeChat,AliPay be empty |
shippingAddress1 | Yes | String | Receiving address details 1 | 128 | UnionPay ,WeChat,AliPay Can be empty |
shippingAddress2 | No | String | Receiving address details 2 | 128 | UnionPay ,WeChat,AliPay Can be empty |
shippingCity | Yes | String | Receiving city | 100 | UnionPay ,WeChat,AliPay Can be empty |
shippingState | Yes | String | Receiving continent, province | 100 | UnionPay ,WeChat,AliPay Can be empty |
shippingCountry | Yes | String | Receiving country | 2 | Refer to the country code table,UnionPay ,WeChat,AliPay Can be empty |
shippingZipCode | Yes | String | Consignee’s zip code | 20 | UnionPay ,WeChat,AliPay Can be empty |
shippingPhone | Yes | String | Consignee phone | 20 | UnionPay ,WeChat,AliPay Can be empty |
shippingEmail | Yes | String | shilling email | 100 | UnionPay ,WeChat,AliPay Can be empty |
userAgent | Yes | String | Cardholder browser UserAgent | 128 | check out mode Can be empty,UnionPay ,WeChat,AliPay Can be empty |
ipAddress | Yes | String | Cardholder IP address | 64 | |
productInfoList | Yes | List |
product list | 1000 | Can be empty in UnionPay and Alipay and WeChat mode |
version | Yes | String | version | 6 | default:V3.0.0 |
userId | No | String | unique user ID | 255 | This parameter is required for virtual product customers |
No | String | 255 | This parameter is required for virtual product customers | ||
osType | No | String | Mobile system | 255 | Mobile system IOS or ANDROID |
terminal | No | String | terminal | 255 | WEB: indicates that a PC browser is used.WAP: indicates that a mobile browser is used.APP: indicates that a mobile app is used.MINI_APP: indicates that a mini program is used |
- Item parameters in the item list
Parameter name | Required | Type | Explain | Length | Remark |
---|---|---|---|---|---|
sku | Yes | String | Product ID | 64 | |
productName | Yes | String | product name | 128 | |
price | Yes | String | Commodity price | 16 | |
quantity | Yes | String | quantity of commodity | 16 |
Sample request
public class Test{
public static void main(String[] args){
JSONObject jsonObject = new JSONObject();
jsonObject.put("merNo", "123455");
jsonObject.put("merOrderNo", "1641972507000");
jsonObject.put("currencyCode", "CNY");
//.....All body parameters except the sign
//sign
String sign = MD5(merNo+merOrderNo+currencyCode+sourceAmount+MerchantKey);
jsonObject.put("sign", sign.toUpperCase());
//Credit Card Pay
String url = "https://pay.online.ai/payment";
HttpResponse httpResponse = HttpRequest.post(url)
.body(jsonObject.toJSONString(), "application/json")
.execute();
int status = httpResponse.getStatus();
if(status == HttpStatus.HTTP_OK){
String content = httpResponse.body();
}
//UnionPay
HttpResponse httpResponse = HttpRequest.post(url)
.header("paymentType", "UNIONPAY")
.body(jsonObject.toJSONString(), "application/json")
.execute();
int status = httpResponse.getStatus();
if(status == HttpStatus.HTTP_OK){
String content = httpResponse.body();
}
}
}
Response Parameters
Response Success Example
{
"code": "00000",
"message": "SUCCESS",
"data": {
"payCode": 0,
"tradeNo": "SN2201111806024151",
"merOrderNo": "1641972507000",
"payUrl": "http://abc.com/notify"
}
}
Response Failure Example
{
"code": "10004",
"message": "The merchant number does not exist"
}
Parameter name | Required | Type | Explain |
---|---|---|---|
code | Yes | String | error code(Refer to the error code table) |
message | Yes | String | error description |
data | No | T | Request response data |
- Return Parameters description
Parameter name | Required | Type | Explain |
---|---|---|---|
tradeNo | Yes | String | The flow number generated after each order payment (unique marker) |
payCode | Yes | Integer | Payment status code(Where: 1 means payment failure, 0 means payment success, 2 means pending) |
payUrl | No | String | This parameter is mandatory for 3D or check out mode payment (the merchant needs to redirect to this link) . ,UnionPay(the merchant needs to redirect to this link) , WeChat(the merchant needs to redirect to this link), AliPay (the merchant needs to redirect to this link) |
merOrderNo | Yes | String | Corresponds to the [OrderNo] parameter of the order submission parameter |
Cash Register Mode
- Request URL:
- production: https://pay.online.ai/cashier/checkStand
- Request Type: POST
Request Header: Content-Type:application/json
Body Parameters:
Body Parameters
{
"merNo": 123455,
"merOrderNo": "1641972507000",
"currencyCode": "CNY",
"sourceAmount": "100.05",
"returnUrl": "http://baidu.com",
"sign": "9D6FDF4880B00B002B1F2AB61AE9A721",
"billFirstName": "san",
"billingLastName": "zhang",
"billingAddress1": "China",
"billingCity": "shanghai",
"billingState": "shanghai",
"billingCountry": "CN",
"billingZipCode": "200000",
"billingPhone": "13688888888",
"shippingFirstName": "san",
"shippingLastName": "zhang",
"shippingAddress1": "China",
"shippingCity": "shanghai",
"shippingState": "shanghai",
"shippingCountry": "CN",
"shippingZipCode": "200000",
"shippingPhone": "13688888888",
"userAgent": "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/6.0)",
"ipAddress": "116.235.134.86",
"version": "V3.0.0",
"productInfo": [
{
"sku": "1",
"productName": "mac pro",
"price": "12000",
"quantity": "1"
},
{
"sku": "2",
"productName": "iphone13",
"price": "8000",
"quantity": "1"
}
]
}
Parameter name | Required | Type | Explain | Length | Remark |
---|---|---|---|---|---|
merNo | Yes | Integer | Merchant Number | 10 | Unique identifier assigned to the merchant by the onlinepay payment platform when registering with onlinepay |
merOrderNo | Yes | String | Merchant Order Number | 32 | Each order must be unique, and each merchant order number can only be submitted once within 1 second |
currencyCode | Yes | String | Currency | 3 | |
sourceAmount | Yes | String | Total amount of the order | 12 | keep two decimals |
returnUrl | Yes | String | Jump address after payment is completed | 512 | |
notifyUrl | No | String | Asynchronous notification address | 512 | When making payment, it is used to receive payment results pushed by onlinepay to the merchant |
sign | Yes | String | signature | 32 | (merNo、merOrderNo、currencyCode、sourceAmount、Merchant key) Please refer to See signature for details |
billingFirstName | Yes | String | First Name | 50 | |
billingLastName | Yes | String | Last name | 50 | |
billingAddress1 | Yes | String | billing address 1 | 128 | |
billingAddress2 | No | String | billing address 2 | 128 | |
billingCity | Yes | String | City of residence (bill) | 100 | |
billingState | Yes | String | State Name (Bill) | 100 | |
billingCountry | Yes | String | International ISO country abbreviation | 2 | Refer to the country code table |
billingZipCode | Yes | String | Postal Code | 20 | |
billingPhone | Yes | String | billing phone | 20 | |
billingEmail | Yes | String | billing email | 100 | |
shippingFirstName | Yes | String | Consignee’s first name | 50 | |
shippingLastName | Yes | String | Consignee’s last name | 50 | |
shippingAddress1 | Yes | String | Receiving address details 1 | 128 | |
shippingAddress2 | No | String | Receiving address details 2 | 128 | |
shippingCity | Yes | String | Receiving city | 100 | |
shippingState | Yes | String | Receiving continent, province | 100 | |
shippingCountry | Yes | String | Receiving country | 2 | Refer to the country code table |
shippingZipCode | Yes | String | Consignee’s zip code | 20 | |
shippingPhone | Yes | String | Consignee phone | 20 | |
shippingEmail | Yes | String | shilling email | 100 | |
userAgent | Yes | String | Cardholder browser UserAgent | 128 | check out mode Can be empty |
ipAddress | Yes | String | Cardholder IP address | 64 | |
productInfoList | Yes | List |
product list | ||
version | Yes | String | version | 6 | default:V3.0.0 |
- Item parameters in the item list
Parameter name | Required | Type | Explain | Length | Remark |
---|---|---|---|---|---|
sku | Yes | String | Product ID | 64 | |
productName | Yes | String | product name | 128 | |
price | Yes | String | Commodity price | 16 | |
quantity | Yes | String | quantity of commodity | 16 |
Sample request
public class Test{
public static void main(String[] args){
JSONObject jsonObject = new JSONObject();
jsonObject.put("merNo", "123455");
jsonObject.put("merOrderNo", "1641972507000");
jsonObject.put("currencyCode", "CNY");
//.....All body parameters except the sign
//sign
String sign = MD5(merNo+merOrderNo+currencyCode+sourceAmount+MerchantKey);
jsonObject.put("sign", sign.toUpperCase());
//Credit Card Pay
String url = "https://pay.online.ai/payment";
HttpResponse httpResponse = HttpRequest.post(url)
.body(jsonObject.toJSONString(), "application/json")
.execute();
int status = httpResponse.getStatus();
if(status == HttpStatus.HTTP_OK){
String content = httpResponse.body();
}
//UnionPay
HttpResponse httpResponse = HttpRequest.post(url)
.header("paymentType", "UNIONPAY")
.body(jsonObject.toJSONString(), "application/json")
.execute();
int status = httpResponse.getStatus();
if(status == HttpStatus.HTTP_OK){
String content = httpResponse.body();
}
}
}
Response Parameters
- Responsive body type:Content-Type: text/html
Sample response
java <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Response Title</title> </head> <body> ... </body> </html>
async notify
- If the notifyurl parameter is not passed during payment, onlinepay will not notify the merchant system after the channel party notifies onlinepay
Request Parameters
Body Parameters
{
"tradeNo": "SN2201111806024151",
"merOrderNo": "1641972507000",
"code": "0",
"message": "SUCCESS"
}
- Request URL:Address of notifyUrl parameter passed when payment is made
- Request Type:POST
- Request Header:Content-Type:application/x-www-form-urlencoded
- Body Parameters:
- Asynchronous callback only informs payment status and result description
Parameter name | Required | Type | Explain |
---|---|---|---|
tradeNo | Yes | String | The flow number generated after each order payment (unique marker) |
merOrderNo | Yes | String | Corresponds to the [OrderNo] parameter of the order submission parameter |
code | Yes | String | error code(Only notify payment status 0 success 1 failure) |
message | Yes | String | Description of Payment Result |
Query API
Request Parameters
- Request URL:
- production: https://pay.online.ai/order/query
- Request Type: POST
- Request Header:Content-Type:application/json
- Body Parameters:
Refund Query Parameters
{
"merNo":"104001001",
"merOrderNo":"asdfghjkl",
"version":"V3.0.0",
"sign":"9D6FDF4880B00B002B1F2AB61AE9A721",
"operationType":"query",
"queryType":"refund",
"tradeNo": "SN13576867867",
"refundNo": "1232324324"
}
Transaction Order Query Parameters
{
"merNo":"104001001",
"merOrderNo":"asdfghjkl",
"version":"V3.0.0",
"sign":"9D6FDF4880B00B002B1F2AB61AE9A721",
"operationType":"query",
"tradeNo": "SN13576867867",
"queryType":"sales"
}
Parameter name | Required | Type | Explain | Length | Remark |
---|---|---|---|---|---|
merNo | Yes | Integer | Merchant Number | 10 | Unique identifier assigned to the merchant by the onlinepay payment platform when registering with onlinepay |
merOrderNo | Yes | String | Merchant Order Number | 32 | |
sign | Yes | String | signature | 32 | (merNo,merOrderNo,tradeNo,Merchant Key) Please refer to See signature for details |
operationType | Yes | String | Operation Type | 10 | default:query |
version | Yes | String | version | 6 | default:V3.0.0 |
tradeNo | Yes | String | transaction serial number | 50 | |
queryType | Yes | String | query type | 16 | Refund the query: refund; Transaction Order query: sales |
refundNo | No | String | A unique refund number generated by the onlinepay system | 50 | Refund enquiries must be sent |
Sample request
public class Test{
public static void main(String[] args){
JSONObject jsonObject = new JSONObject();
jsonObject.put("merNo", "123455");
jsonObject.put("merOrderNo", "1641972507000");
//.....All body parameters except the sign
//sign
String sign = MD5(merNo+merOrderNo+tradeNo+MerchantKey);
jsonObject.put("sign", sign.toUpperCase());
String url = "https://pay.online.ai/order/query";
HttpResponse httpResponse = HttpRequest.post(url)
.body(jsonObject.toJSONString(), "application/json")
.execute();
int status = httpResponse.getStatus();
if(status == HttpStatus.HTTP_OK){
String content = httpResponse.body();
}
}
}
Response parameter
Transaction Order Query Response Success Example
{
"code": "00000",
"message": "SUCCESS",
"data": {
"tradeNo": "SN2202101809494673",
"merOrderNo": "1644487789447",
"merNo": 104001002,
"state": "3"
}
}
Refund Query Response Success Example
json { "code": "00000", "message": "SUCCESS", "data": { "tradeNo": "SN2202101809494673", "merOrderNo": "1644487789447", "refundNo": "202202101820320002", "merNo": 104001002, "refundCurrency": "CNY", "state": "6", "refundAmount": "5.00" } }
Response Failure Example
{
"code": "10004",
"message": "The merchant number does not exist"
}
Parameter name | Required | Type | Explain |
---|---|---|---|
code | Yes | String | error code(Refer to the error code table) |
message | Yes | String | error description |
data | No | T | Request response data |
- Refund Query Return parameter description
Parameter name | Required | Type | Explain |
---|---|---|---|
state | Yes | Integer | 4: Refund Processing ; 5: Refund failure; 6: Refund Success |
refundNo | Yes | String | |
refundAmount | Yes | String | |
refundCurrency | Yes | String | |
tradeNo | Yes | String | |
merNo | Yes | String | |
merOrderNo | Yes | String |
- Transaction Order Query Return parameter description
Parameter name | Required | Type | Explain |
---|---|---|---|
state | Yes | Integer | 1: Transaction Processing; 2: Transaction Failure; 3: Transaction Success |
tradeNo | Yes | String | |
merNo | Yes | String | |
merOrderNo | Yes | String |
Refund API
Request Parameters
- Request URL:
- production: https://pay.online.ai/refund/apply
- Request Type: POST
- Request Header: Content-Type:application/json
- Body Parameters:
{
"merNo":"104001001",
"merOrderNo":"asdfghjkl",
"amount":"10",
"version":"V3.0.0",
"tradeNo":"SN1234567890000",
"sign":"9D6FDF4880B00B002B1F2AB61AE9A721",
"notifyUrl":"https://www.test.com",
"remark":"12323425345",
"operationType":"refund"
}
Parameter name | Required | Type | Explain | Length | Remark |
---|---|---|---|---|---|
merNo | Yes | Integer | Merchant Number | 10 | Unique identifier assigned to the merchant by the onlinepay payment platform when registering with onlinepay |
merOrderNo | Yes | String | Merchant Order Number | 32 | |
amount | Yes | String | refund amount | 12 | keep two decimals |
notifyUrl | No | String | Asynchronous notification address | 512 | Used to receive onlinepay to push refund results to merchants |
sign | Yes | String | signature | 32 | (merNo,merOrderNo,amount,tradeNo,Merchant Key) Please refer to See signature for details |
operationType | Yes | String | Operation Type | 10 | default:refund |
version | Yes | String | version | 6 | default:V3.0.0 |
tradeNo | Yes | String | transaction serial number | 50 | The order number generated by the platform when the merchant pays |
remark | No | String | remark | 1000 |
Sample request
public class Test{
public static void main(String[] args){
JSONObject jsonObject = new JSONObject();
jsonObject.put("merNo", "123455");
jsonObject.put("merOrderNo", "1641972507000");
//.....All body parameters except the sign
//sign
String sign = MD5(merNo+merOrderNo+amount+tradeNo+MerchantKey);
jsonObject.put("sign", sign.toUpperCase());
String url = "https://pay.online.ai/refund/apply";
HttpResponse httpResponse = HttpRequest.post(url)
.body(jsonObject.toJSONString(), "application/json")
.execute();
int status = httpResponse.getStatus();
if(status == HttpStatus.HTTP_OK){
String content = httpResponse.body();
}
}
}
Response parameter
Response Success Example
{
"code": "00000",
"message": "SUCCESS",
"data": {
"refundNo": "12312432423",
"tradeNo": "SN1234567890123",
"merNo": "104001001",
"merOrderNo": "abc12323424234",
"refundAmount": "10",
"refundCurrency": "CNY"
}
}
Response Failure Example
{
"code": "10004",
"message": "The merchant number does not exist"
}
Parameter name | Required | Type | Explain |
---|---|---|---|
code | Yes | String | error code(Refer to the error code table) |
message | Yes | String | error description |
data | No | T | Request response data |
- Return parameter description
Parameter name | Required | Type | Explain |
---|---|---|---|
refundNo | Yes | String | Unique ID generated for successful refund application |
tradeNo | Yes | String | |
merNo | Yes | String | |
merOrderNo | Yes | String | |
refundAmount | Yes | String | |
refundCurrency | Yes | String |
Asynchronous refund notification
- If the notifyUrl parameter is not passed at the time of refund,onlinepay will not notify the merchant system after the channel party notifies onlinepay
- If the merchant system does not return the SUCCESS(case sensitive) string after receiving the onlinepay notification,onlinepay will consider the merchant system has not received the notification and onlinepay will initiate the notification again after 1,2,4,8,16,32,64,128 minutes. onlinepay will initiate a total of 9 notifications. If the merchant system does not return SUCCESS in all 9 notifications, onlinepay will not initiate another notification.
Request Parameters
Body Parameters:
{
"tradeNo": "SN2201111806024151",
"merOrderNo": "1641972507000",
"refundNo": "1641972507000",
"state": 0,
"message": "SUCCESS",
"refundAmount": "10",
"refundCurrency": "CNY"
}
- Request URL: Address of notifyUrl parameter passed when refund
- Request Type: POST
- Request Header: Content-Type:application/json
- Body Parameters:
Parameter name | Required | Type | Explain |
---|---|---|---|
tradeNo | Yes | String | The flow number generated after each order payment (unique marker) |
merOrderNo | Yes | String | Corresponds to the [OrderNo] parameter of the order submission parameter |
refundNo | Yes | String | Unique refund number to initiate refund generation to onlinepay |
state | Yes | Integer | 0: Refund Success ; 1: Refund Failure |
message | Yes | String | Refund Result Description |
refundAmount | Yes | String | |
refundCurrency | Yes | String |
Sample request
public class Test{
public static void main(String[] args){
JSONObject jsonObject = new JSONObject();
jsonObject.put("tradeNo", "SN2201111806024151");
jsonObject.put("merOrderNo", "1641972507000");
jsonObject.put("refundNo", "2334543543534");
jsonObject.put("code", 0);
jsonObject.put("message", "SUCCESS");
jsonObject.put("refundAmount", "10");
jsonObject.put("refundCurrency", "CNY");
String url = "Address of notifyUrl parameter passed when refund";
HttpResponse httpResponse = HttpRequest.post(url)
.body(jsonObject.toJSONString(), "application/json")
.execute();
int status = httpResponse.getStatus();
if(status == HttpStatus.HTTP_OK){
String content = httpResponse.body();
if("SUCCESS".equals(content)){
//Notify the successful
} else{
//Notify the failure
}
} else{
//Notify the failure
}
}
}
Country Code
Code | Country |
---|---|
AF | Afghanistan |
AX | √Öland Islands |
AL | Albania |
DZ | Algeria |
AS | American Samoa |
AD | AndorrA |
AO | Angola |
AI | Anguilla |
AQ | Antarctica |
AG | Antigua and Barbuda |
AR | Argentina |
AM | Armenia |
AW | Aruba |
AU | Australia |
AT | Austria |
AZ | Azerbaijan |
BS | Bahamas |
BH | Bahrain |
BD | Bangladesh |
BB | Barbados |
BY | Belarus |
BE | Belgium |
BZ | Belize |
BJ | Benin |
BM | Bermuda |
BT | Bhutan |
BO | Bolivia |
BA | Bosnia and Herzegovina |
BW | Botswana |
BV | Bouvet Island |
BR | Brazil |
IO | British Indian Ocean Territory |
BN | Brunei Darussalam |
BG | Bulgaria |
BF | Burkina Faso |
BI | Burundi |
KH | Cambodia |
CM | Cameroon |
CA | Canada |
CV | Cape Verde |
KY | Cayman Islands |
CF | Central African Republic |
TD | Chad |
CL | Chile |
CN | China |
CX | Christmas Island |
CC | Cocos (Keeling) Islands |
CO | Colombia |
KM | Comoros |
CG | Congo |
CD | Congo, The Democratic Republic of the |
CK | Cook Islands |
CR | Costa Rica |
CI | Cote D'Ivoire |
HR | Croatia |
CU | Cuba |
CY | Cyprus |
CZ | Czech Republic |
DK | Denmark |
DJ | Djibouti |
DM | Dominica |
DO | Dominican Republic |
EC | Ecuador |
EG | Egypt |
SV | El Salvador |
GQ | Equatorial Guinea |
ER | Eritrea |
EE | Estonia |
ET | Ethiopia |
FK | Falkland Islands(Malvinas) |
FO | Faroe Islands |
FJ | Fiji |
FI | Finland |
FR | France |
GF | French Guiana |
PF | French Polynesia |
TF | French Southern Territories |
GA | Gabon |
GM | Gambia |
GE | Georgia |
DE | Germany |
GH | Ghana |
GI | Gibraltar |
GR | Greece |
GL | Greenland |
GD | Grenada |
GP | Guadeloupe |
GU | Guam |
GT | Guatemala |
GG | Guernsey |
GN | Guinea |
GW | Guinea-Bissau |
GY | Guyana |
HT | Haiti |
HM | Heard Island and Mcdonald Islands |
VA | Holy See (Vatican City State) |
HN | Honduras |
HK | Hong Kong |
HU | Hungary |
IS | Iceland |
IN | India |
ID | Indonesia |
IR | Iran, Islamic Republic Of |
IQ | Iraq |
IE | Ireland |
IM | Isle of Man |
IL | Israel |
IT | Italy |
JM | Jamaica |
JP | Japan |
JE | Jersey |
JO | Jordan |
KZ | Kazakhstan |
KE | Kenya |
KI | Kiribati |
KP | Korea, Democratic People'S Republic of |
KR | Korea, Republic of |
KW | Kuwait |
KG | Kyrgyzstan |
LA | Lao People'S Democratic Republic |
LV | Latvia |
LB | Lebanon |
LS | Lesotho |
LR | Liberia |
LY | Libyan Arab Jamahiriya |
LI | Liechtenstein |
LT | Lithuania |
LU | Luxembourg |
MO | Macao |
MK | Macedonia, The Former Yugoslav Republic of |
MG | Madagascar |
MW | Malawi |
MY | Malaysia |
MV | Maldives |
ML | Mali |
MT | Malta |
MH | Marshall Islands |
MQ | Martinique |
MR | Mauritania |
MU | Mauritius |
YT | Mayotte |
MX | Mexico |
FM | Micronesia,Federated States of |
MD | Moldova, Republic of |
MC | Monaco |
MN | Mongolia |
MS | Montserrat |
MA | Morocco |
MZ | Mozambique |
MM | Myanmar |
NA | Namibia |
NR | Nauru |
NP | Nepal |
NL | Netherlands |
AN | Netherlands Antilles |
NC | New Caledonia |
NZ | New Zealand |
NI | Nicaragua |
NE | Niger |
NG | Nigeria |
NU | Niue |
NF | Norfolk Island |
MP | Northern Mariana Islands |
NO | Norway |
OM | Oman |
PK | Pakistan |
PW | Palau |
PS | Palestinian Territory, Occupied |
PA | Panama |
PG | Papua New Guinea |
PY | Paraguay |
PE | Peru |
PH | Philippines |
PN | Pitcairn |
PL | Poland |
PT | Portugal |
PR | Puerto Rico |
QA | Qatar |
RE | Reunion |
RO | Romania |
RU | Russian Federation |
RW | RWANDA |
SH | Saint Helena |
KN | Saint Kitts and Nevis |
LC | Saint Lucia |
PM | Saint Pierre and Miquelon |
VC | Saint Vincent and the Grenadines |
WS | Samoa |
SM | San Marino |
ST | Sao Tome and Principe |
SA | Saudi Arabia |
SN | Senegal |
ME | Montenegro |
SC | Seychelles |
SL | Sierra Leone |
SG | Singapore |
SK | Slovakia |
SI | Slovenia |
SB | Solomon Islands |
SO | Somalia |
ZA | South Africa |
GS | South Georgia and the South Sandwich Islands |
ES | Spain |
LK | Sri Lanka |
SD | Sudan |
SR | Suriname |
SJ | Svalbard and Jan Mayen |
SZ | Swaziland |
SE | Sweden |
CH | Switzerland |
SY | Syrian Arab Republic |
TW | Taiwan, Province of China |
TJ | Tajikistan |
TZ | Tanzania, United Republic of |
TH | Thailand |
TL | Timor-Leste |
TG | Togo |
TK | Tokelau |
TO | Tonga |
TT | Trinidad and Tobago |
TN | Tunisia |
TR | Turkey |
TM | Turkmenistan |
TC | Turks and Caicos Islands |
TV | Tuvalu |
UG | Uganda |
UA | Ukraine |
AE | United Arab Emirates |
GB | United Kingdom |
US | United States |
UM | United States Minor Outlying Islands |
UY | Uruguay |
UZ | Uzbekistan |
VU | Vanuatu |
VE | Venezuela |
VN | Viet Nam |
VG | Virgin Islands, British |
VI | Virgin Islands, U.S. |
WF | Wallis and Futuna |
EH | Western Sahara |
YE | Yemen |
ZM | Zambia |
ZW | Zimbabwe |
RS | Serbia |
Error Code
State Code | Description |
---|---|
00000 | SUCCESS |
10000 | Payment method cannot be empty |
10001 | Payment method does not exist |
10002 | The parameter cannot be empty |
10003 | The same order of the same merchant number cannot be submitted repeatedly within the same time |
10004 | The merchant number does not exist |
10005 | Merchant not active |
10006 | Referer cannot be empty |
10007 | Source url does not comply with relevant regulations |
10008 | Merchant Url Restriction |
10009 | Duplicate merchant order number |
10010 | Merchant does not set transaction currency |
10011 | The channel is not open |
10012 | The card type is not bound |
10013 | Banks don't exist |
10014 | Currency conversion rate does not exist |
10015 | Signature error |
10016 | Exceed daily transaction limit |
10017 | Exceed monthly transaction limit |
10018 | Currency cannot be empty |
10019 | Currency is not open or currency incoming is wrong |
10020 | There is no single transaction limit |
10021 | There is no daily trading limit |
10022 | There is no monthly trading limit |
10023 | Merchant reaches single transaction limit |
10024 | Merchants have reached their daily transaction limit |
10025 | Merchants have reached their monthly transaction limit |
99996 | Data type conversion exception |
99997 | The parameter is missing or does not meet the restriction |
99998 | Channel payment failure |
99995 | The payment channel connection has timed out |
10026 | The transaction does not exist or cannot match the original transaction |
10027 | The order is not confirmed. |
10028 | The order is being processed for refund |
10029 | Insufficient refund amount |
10031 | The query type does not exist |
10032 | The card type was not recognized |
10033 | Merchant does not set card discount rate |
10034 | Merchant does not set margin deduction rate |
10035 | All quotas have been used up |
10036 | The channel is disabled. |
10037 | Transactions with this card are not supported |
10038 | Success limit |
10039 | Failed times exceed the set maximum allowed failed times (cardholder) |
10040 | Block rule block |
10041 | Blacklist blocking |
10042 | Element is limited |
99994 | The request mode is incorrect |
99995 | The payment channel connection has timed out |
99996 | Data type conversion exception |
99997 | The parameter is missing or does not meet the restriction |
99998 | Channel payment failure |
99999 | System Exception |
Currency
code | name |
---|---|
CNY | Chinese Renmenbi |
USD | United States dollar |
GBP | Pound sterling |
HKD | Hong Kong dollar |
CHF | Swiss franc |
SGD | Singapore dollar |
SEK | Swedish krona |
DKK | Danish krone |
NOK | Norwegian krone |
JPY | Japanese yen |
CAD | Canadian dollar |
AUD | Australian dollar |
EUR | Euro |
MOP | Macao Pataca |
PHP | Philippine peso |
THB | Thai baht |
NZD | New Zealand dollar |
KRW | South Korean won |
RUB | Russian ruble |
MYR | Malaysian ringgit |
TWD | New Taiwan dollar |
INR | India rupee |