Content
VietQR by NAPAS: any Vietnamese banking app fills in the bank, account and amount from one scan and shows the account holder's name.
Whole dong only; leave the amount empty to let the payer enter it. Vietnamese accents are removed from the message so every bank reads it.
Preview
QR code will appear here after generation
Design presets
One-click styles — all stay scannable
Color Presets
Module gradient
Background gradient
Why a VietQR code
Bank transfers in Vietnam happen by scanning, from noodle stalls to school fees, and typing an account number at the counter is how payments go astray. A VietQR code follows the NAPAS standard that every Vietnamese banking app understands: the payer scans, sees whose account it is and sends the money at once. Choose the receiving bank and type the account number, or a domestic NAPAS card number starting with 9704, from which the bank is recognised automatically. Add a sum in whole dong if everyone owes the same, plus a short transfer note. All of it is written into the picture, so no server is involved and the code never lapses.
- Every Vietnamese banking app reads it and displays the account holder before sending.
- Works with a bank account or a domestic NAPAS card number.
- Optional sum in VND and a transfer note of up to 25 characters.
- No redirect and no expiry date; once printed, it simply keeps working.
Street food and small shops
A code taped to the counter collects every order without counting change.
Tuition and extra classes
Teachers put the pupil's name in the transfer note so each payment is easy to recognise.
Rent and utilities
Landlords print one code per room with the room number in the message.
Online sellers
Shops selling through social media send the code with a fixed amount for each order.
Weddings and celebrations
Hosts offer guests a code for gifts instead of cash envelopes.
More Payments QR codes
Same category — pick the type that fits your content.
VietQR Bank Transfer QR Code Generator
Pick the recipient's bank from the NAPAS list, then enter the account or a domestic card number. A fixed sum in dong and a short note are optional extras.
What is this QR code?
VietQR is the national QR standard for bank transfers in Vietnam, run by NAPAS. Every Vietnamese banking app reads it, looks up the account holder's name and sends the money instantly. The account details are written into the image, so nothing passes through QR Global and a different account or amount means a fresh code.
Best use cases
- ✓Shops, restaurants and street vendors in Vietnam.
- ✓Invoices and deliveries billed at a set price in dong.
- ✓Tuition, rent and donations with an open amount.
How to generate your QR code
Choose the recipient's bank from the NAPAS list.
Enter the account number, or a NAPAS card number starting with 9704.
Add an optional amount in VND and a short message.
Before printing, scan it from a Vietnamese banking app and check the name it displays.
Frequently Asked Questions
Which apps can scan the code?
All Vietnamese banking apps that support VietQR, including Vietcombank, VietinBank, BIDV, Techcombank and MB Bank.
Why are accents removed from the message?
Some banks cut the transfer message at the first non-ASCII character, so the generator writes it without Vietnamese accents.
Can I use a card number instead of an account?
Yes. Choose NAPAS card and enter the 16- or 19-digit number starting with 9704: the bank is detected from the number, and the payer's app shows the cardholder's name before sending.
Do I need the account holder's name?
No. VietQR codes do not carry a name; the payer's banking app looks it up through NAPAS and shows it before the transfer.
Why must the amount be a whole number?
The Vietnamese dong has no smaller unit in practice, so the code carries whole dong only.
Can I write the message with Vietnamese accents?
The message is stored without diacritics, so ủng hộ becomes ung ho. Some banks cut the text at the first accented letter, and plain letters avoid that.
Is it possible to switch to another account later?
Not on the same print. Account and sum are encoded in the picture, so any change calls for a regenerated code, and this type keeps no scan counter.
How do I check the code before printing?
Open a banking app, choose to scan a QR code and look at the recipient name and amount it fills in. Cancel instead of confirming.