Skip to main content

VNPAY Integration

Introduction#

VNPAY offers QR payments, ATM and Credit Card (Visa/Master) payments. Follow this guide to integrate VNPAY acceptance on your mobile app or website


Supported Countries#

  • Vietnam πŸ‡»πŸ‡³

Available Payment Methods#

VNPAY PG only supports VND(β‚«) currency.

Payment TypePayment Method KeyStatusSandbox Availability
Local ATM CardVNPAY_ATM_CARDβœ…βœ…
Credit CardVNPAY_CREDIT_CARDβœ…βœ…
WalletsVNPAY_WALLETβœ…βœ…
QRVNPAY_QRβœ…βœ…
All methodsVNPAY_ALLβœ…βœ…
note

In case of multiple offerings of same payment method, merchants can configure the payment method from the payment channel of his choice.

  • e.g. To integrate VNPay, merchant can choose the VNPAY_ATM_CARD payment method by configuring VNPay or via VTCPay payment channels.
  • It will be merchants responsibility to configure appropriate Payment Channels and enable/disable required Payment Methods.

Miscellaneous Details#

  • Refunds can be initialized from the merchant portal

  • For domestic cards, the refund time will be from 3-8 days, for international cards, it takes 15-30 days, depending on each bank. Customers will have to check refund transaction status on their bank accounts because local banks doesn’t response the refund success status to VNPay.

  • Webhook Settings : Copy the Webhook URL provided in the PortOne Admin Dashboard & share it with VNPay team to configure the Webhook URL for your account


Sandbox#

Credentials#

KeyValue
Merchant IdCHAIVN01
Secure Secret KeyGMHSLNMDURNWMCRVYLUWLJIOPVRYMMVL

You can create the sandbox account: VNPAY Sandbox Dashboard


Test cards data#

TypeBankCard numberNameValid throughCVVStatus
ATM CardNCB9704198526191432198NGUYEN VAN A07/15123Successful
ATM CardNCB9704195798459170488NGUYEN VAN A07/15123Card does not have enough balance
ATM CardNCB9704192181368742NGUYEN VAN A07/15123Card not activated
ATM CardNCB9704193370791314NGUYEN VAN A07/15123Card is locked
ATM CardNCB9704194841945513NGUYEN VAN A07/15123Card expired

  • OTP - 123456
  • Password - 1234

Use following values in embedded JS code to pay via VNPAY channel#

"pmt_channel": "VNPAY",
"pmt_method": { Any of above given payment method keys },

Reference links#