OnlinePay API
  1. API Reference
OnlinePay API
  • Introduction
  • How to start
  • Country Code
  • Currency Code
  • Error Code
  • API Reference
    • Credit Card
      POST
    • Alipay
      POST
    • Union Pay
      POST
    • WeChat
      POST
    • Cryptocurrency Payment
      POST
    • OnlinePay CheckOut
      POST
    • notifyUrl
      POST
    • Refund
      POST
    • Query
      POST
    • QueryOrderList
      POST
  1. API Reference

Credit Card

POST
https://pay.online.ai/payment
Direct mode: PCI compliance is required in this mode. The merchant system can capture the cardholder's card number information and transmit them to OlinePay, then the request is quickly verified and processed, and the payment result is returned directly.
Checkout: When you initiate a payment request, you will receive a checkout URL back from OnlinePay and be redirected to that checkout URL to submit your card number and other information, finally jump to the returnUrl to synchronize your payment results.
3DS: 3DS is designed to reduce the risk of fraud and unauthorized transactions by verifying the identity of the cardholder. When making a 3DS-based payment, it redirects to a secure authentication page that allows the user to perform 3DS authentication.
Note: OnlinePay will obtain the HTTP Header referrer to verify the website source. The website source must be configured by OnlinePay to be verified. If you do not access the interface through a browser, you need to actively add a referer.

Request

Body Params application/json
merNo
integer 
required
Merchant Number, Unique identifier assigned to the merchant by the onlinepay payment platform when registering with onlinepay
merOrderNo
string 
required
Merchant Order Number, Each order must be unique, and each merchant order number can only be submitted once within 1 second
currencyCode
string 
required
Please refer to Currency Code
sourceAmount
string 
required
Total amount of the order, keep two decimals
returnUrl
string 
required
Jump address after payment is completed,
<= 512 characters
notifyUrl
string 
optional
Asynchronous notification address to notify the merchant of the final payment result
<= 512 characters
sign
string 
required
signature, MD5(merNo+merOrderNo+currencyCode+sourceAmount+PrivateKey)
cardNo
string 
required
card number, Checkout mode Can be empty
cardExpireMonth
string 
required
Expiry date of card (month), Checkout mode Can be empty
cardExpireYear
string 
required
Expiry date of card (year), Checkout mode Can be empty
>= 4 characters<= 4 characters
cardSecurityCode
string 
required
CVV2/CSC, Checkout mode Can be empty
billingFirstName
string 
required
First Name
<= 50 characters
billingLastName
string 
required
Last name
<= 50 characters
billingAddress1
string 
required
billing address 1
<= 128 characters
billingAddress2
string 
optional
billing address 2
<= 128 characters
billingCity
string 
required
City of residence (bill)
<= 100 characters
billingState
string 
required
State Name (Bill)
<= 100 characters
billingCountry
string 
required
International ISO country abbreviation, Refer to the Country Code
<= 2 characters
billingZipCode
string 
required
Postal Code
<= 20 characters
billingPhone
string 
required
billing phone
<= 20 characters
billingEmail
string 
required
billing email
<= 100 characters
shippingFirstName
string 
required
Consignee’s first name, Virtual goods do not need to be filled in, physical goods are required
<= 50 characters
shippingLastName
string 
required
Consignee’s last name, UnionPay Can,WeChat,AliPay be empty, Virtual goods do not need to be filled in, physical goods are required
<= 50 characters
shippingAddress1
string 
required
Receiving address details 1, Virtual goods do not need to be filled in, physical goods are required
<= 128 characters
shippingAddress2
string 
required
Receiving address details 2, Virtual goods do not need to be filled in, physical goods are required
<= 128 characters
shippingCity
string 
required
Receiving city, Virtual goods do not need to be filled in, physical goods are required
<= 100 characters
shippingState
string 
required
Receiving continent, province, Virtual goods do not need to be filled in, physical goods are required
<= 100 characters
shippingCountry
string 
required
Receiving country, Refer to the country code table, Virtual goods do not need to be filled in, physical goods are required
<= 2 characters
shippingZipCode
string 
required
Consignee’s zip code, Virtual goods do not need to be filled in, physical goods are required
<= 20 characters
shippingPhone
string 
required
Consignee phone, Virtual goods do not need to be filled in, physical goods are required
<= 20 characters
shippingEmail
string 
required
shilling email, Virtual goods do not need to be filled in, physical goods are required
<= 100 characters
userAgent
string 
required
Cardholder browser UserAgent
<= 128 characters
ipAddress
string 
required
Cardholder IP address
<= 64 characters
productInfoList
array [object {4}] 
required
product list
sku
string 
required
Product ID
<= 64 characters
productName
string 
required
product name
<= 128 characters
price
string 
required
Commodity price
<= 16 characters
quantity
string 
required
quantity of commodity
<= 16 characters
version
string 
required
V3.0.0
Example
{
    "merNo": 111111,
    "merOrderNo": "222222",
    "currencyCode": "USD",
    "sourceAmount": "100.05",
    "returnUrl": "https://example.com",
    "notifyUrl": "https://example.com/notify",
    "sign": "9D6FDF4880B00B002B1F2AB61AE9A721",
    "cardNo":"123456",
    "cardExpireMonth":"01",
    "cardExpireYear":"2022",
    "cardSecurityCode": "335",
    "billFirstName": "Tati",
    "billingLastName": "Moore",
    "billingAddress1": "United States",
    "billingCity": "Westbury",
    "billingState": "New York",
    "billingCountry": "US",
    "billingZipCode": "11590",
    "billingPhone": "3854234144",
    "billingEmail": "example@gmail.com",
    "shippingFirstName": "Tati",
    "shippingLastName": "Moore",
    "shippingAddress1": "United States",
    "shippingCity": "Westbury",
    "shippingState": "New York",
    "shippingCountry": "US",
    "shippingZipCode": "11590",
    "shippingPhone": "3854234144",
    "shippingEmail": "example@gmail.com",
    "userAgent": "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/6.0)",
    "ipAddress": "116.235.134.86",
    "version": "V3.0.0",
    "productInfoList": [
        {
            "sku": "1",
            "productName": "mac pro",
            "price": "12000",
            "quantity": "1"
        },
        {
            "sku": "2",
            "productName": "iphone13",
            "price": "8000",
            "quantity": "1"
        }
    ]
}

Request samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://pay.online.ai/payment' \
--header 'Content-Type: application/json' \
--data-raw '{
    "merNo": 111111,
    "merOrderNo": "222222",
    "currencyCode": "USD",
    "sourceAmount": "100.05",
    "returnUrl": "https://example.com",
    "notifyUrl": "https://example.com/notify",
    "sign": "9D6FDF4880B00B002B1F2AB61AE9A721",
    "cardNo":"123456",
    "cardExpireMonth":"01",
    "cardExpireYear":"2022",
    "cardSecurityCode": "335",
    "billFirstName": "Tati",
    "billingLastName": "Moore",
    "billingAddress1": "United States",
    "billingCity": "Westbury",
    "billingState": "New York",
    "billingCountry": "US",
    "billingZipCode": "11590",
    "billingPhone": "3854234144",
    "billingEmail": "example@gmail.com",
    "shippingFirstName": "Tati",
    "shippingLastName": "Moore",
    "shippingAddress1": "United States",
    "shippingCity": "Westbury",
    "shippingState": "New York",
    "shippingCountry": "US",
    "shippingZipCode": "11590",
    "shippingPhone": "3854234144",
    "shippingEmail": "example@gmail.com",
    "userAgent": "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/6.0)",
    "ipAddress": "116.235.134.86",
    "version": "V3.0.0",
    "productInfoList": [
        {
            "sku": "1",
            "productName": "mac pro",
            "price": "12000",
            "quantity": "1"
        },
        {
            "sku": "2",
            "productName": "iphone13",
            "price": "8000",
            "quantity": "1"
        }
    ]
}'

Responses

🟢200Success
application/json
Body
code
string 
required
If the value is 0000, it will return success, other please refer to Error Code
message
string 
required
Interface returns description
data
object 
optional
Request response data
tradeNo
string 
required
The flow number generated after each order payment (unique marker)
payCode
string 
required
Payment status code(Where: 1 means payment failure, 0 means payment success, 2 means pending)
payUrl
string 
optional
If the paycode is 2, redirect to this address
merOrderNo
string 
required
Corresponds to the [OrderNo] parameter of the order submission parameter
Example
{
    "code": "00000",
    "message": "SUCCESS",
    "data": {
        "payCode": 0,
        "tradeNo": "333333",
        "merOrderNo": "222222",
        "payUrl": "http://abc.com/notify"
    }
}
Modified at 2023-05-05 10:25:01
Previous
Error Code
Next
Alipay
Built with