IPN
Last updated
Last updated
Merchant can get payment result via IPN (Instant Payment Notification).
Merchant needs to build a RESTful API to receive data from NeoX after the transaction is completed. This API must be registered to NeoX before the payment is made
Method: POST
Data refer to NeoX's IPN data.
Merchant has to respond to NeoX following the structure merchant response when receiving IPN.
How to validate neo_SecureHash
Format: hex string, 64 characters, uppercase
Using cryptographic hash function SHA256
Input is all parameters on PaymentURL or ReturnURL.
Only use parameters that start with prefix neo_.
String must be sorted in alphabetical order base on parameter name.
NeoX will provide a Secret Key to merchant to hash.
Merchant needs to build a hashed string follow above guide and compare to received neo_SecureHash parameter
neo_MerchantCode
String
The merchant code is provided by NeoX.
neo_Locale
String
The language will use on payment page, support: “vi”, “en".
neo_Version
String
Payment gateway version, “1” as default
neo_Command
String
"PAY" as default.
neo_Amount
Number
Order amount.
neo_MerchantTxnID
String
Transaction ID is provided by merchant, it must be unique on merchant’s system and on each request, accept only characters, numerics and list of symbols: “-”, “_”.
neo_OrderID
String
Order ID of the transaction, only accept characters, numerics and list of symbols: “-”, “_”.
neo_OrderInfo
String
Order information, max length 256
neo_TransactionID
String
Unique - Transaction ID is generated by NeoX.
neo_ResponseCode
Number
Result of transaction: 0: transaction success != 0: transaction failed, refer to table of error code
neo_ResponseMsg
String
Error description.
neo_SecureHash
String
Use SHA256 to hash the above parameters (sort the key by Alphabet order) + Secret Key (is provided by NeoX after actual integrating).
neo_TransAmount
number
Transaction amount (partial payment).
neo_ExtData
Object
Extra data of transaction.
respcode
Number
0: Successful, merchant received IPN.
1: Failed, NeoX will retry the IPN.
respmsg
String
Error message. Default is “received”