Standards/zalopay-qr
ZaloPay QR
ZaloPay QR
Overview
ZaloPay QR — branded "QR đa năng" (multi-function / universal QR) — is the merchant-payment QR format used by ZaloPay, a leading Vietnamese e-wallet operated by VNG Corporation [1, 3]. It is an EMVCo Merchant-Presented Mode (MPM) payload: a single printed code that the customer can pay either in the ZaloPay super-app or, because the same code embeds a vietqr-compatible template, in any of 40+ NAPAS-member bank apps [1, 2]. ZaloPay launched the format in July 2023 in cooperation with NAPAS, and within six months it was live in over 12,000 store chains, with about 19 % of its transactions coming from bank apps rather than the ZaloPay wallet [3, 5]. ZaloPay is Vietnam's second-largest e-wallet (after MoMo), reporting 14 million users in 2024 [3].
History
ZaloPay grew out of VNG Corporation (founded 9 September 2004 as VinaGame; Vietnam's first tech unicorn at a US$1 B valuation in 2014) and its Zalo messaging app (released 8 August 2012 for iOS/Android, reaching 10 million users within 18 months) [7]. ZaloPay itself was launched by VNG in 2016 as a mobile payment application built on top of the Zalo user base [7, 3]. The product is operated by the legal entity ZION Joint Stock Company, VNG's payments subsidiary [8].
Mid-2023 — VietQR disruption. ZaloPay recognised the market shift caused by the rapid growth of vietqr (NAPAS's national interbank QR, which scaled fast through 2023) and responded by building a QR that works on the VietQR rails rather than competing with them [3].
July 2023 — "QR đa năng" launched. ZaloPay was one of the pioneers cooperating with NAPAS to launch a multi-function QR based on the VietQR standard, accepting payments from all banking apps and e-wallets [2, 3].
Within six months (by early 2024). The format reached 12,000+ store chains — including major fast-food and convenience-store networks — and recorded roughly 19 % of transactions through bank apps [3, 5].
2024. ZaloPay reached 14 million users and launched a new brand identity oriented toward sustainable financial products [3].
Mid-2025. ZaloPay reported ~20 million active users through deeper Zalo-chat integrations (bill splitting, gifting), and ~12 million digital red envelopes ("lì xì") were sent through the wallet during Lunar New Year alone [9]. ZaloPay sits within a top-five (MoMo, ZaloPay, ViettelPay, ShopeePay, VNPay) holding the bulk of Vietnam's US$40.5 B mobile-payments market [9].
Technical specification
ZaloPay QR follows the EMVCo Merchant-Presented Mode (MPM) TLV (tag–length–value) structure — the same container family used by vietqr and qris [1, 4]:
- Tag 00 — Payload Format Indicator (
01) [4]. - Tag 01 — Point of Initiation Method (
11static,12dynamic) [4]. - Tags 26–51 — Merchant Account Information templates. Each begins with sub-tag
00carrying a globally unique identifier (GUID) [4].- ZaloPay's native template is keyed by the ASCII GUID
vn.zalopay[1, 4]. - A parallel vietqr template carries the GUID
A000000727(NAPAS) with beneficiary identifier9704...routed via partner bank BVBank (Ban Viet Bank) — each ZaloPay merchant is assigned a corresponding BVBank account so bank apps can settle over NAPAS [2, 4].
- ZaloPay's native template is keyed by the ASCII GUID
- Tag 52 — Merchant Category Code.
- Tag 53 — Transaction currency (
704= VND) [4]. - Tag 54 — Transaction amount (omitted for static codes) [4].
- Tag 58 — Country code (
VN) [4]. - Tags 59 / 60 — Merchant name and city [4].
- Tag 62 — Additional data (reference label, bill number) [4].
- Tag 63 — CRC-16/CCITT-FALSE checksum over the whole payload [4].
An observed ZaloPay payload begins 000201...26520010vn.zalopay...0010A000000727...9704...QRIBFTTA...5802VN...6304 — i.e. one Merchant Account Information template carrying the vn.zalopay GUID alongside the NAPAS A000000727 VietQR routing data, currency 704, country VN, terminated by a tag-63 CRC [4].
The live playground on this page demonstrates the EMVCo MPM container with ZaloPay's tag-26 template (vn.zalopay). Production ZaloPay merchant codes additionally embed a parallel VietQR template (GUID A000000727, via BVBank) so that non-ZaloPay bank apps can scan and pay the same code; the single-encoder demo shows one template at a time.
Static vs dynamic [1]:
- Static — a fixed QR placed at the counter; the customer enters the amount. For stores without a POS, ZaloPay supplies a printed QR with no technical integration required [1].
- Dynamic — generated per-transaction (amount embedded) via the Create Order API, displayed on POS/web/app from the response's
qr_codevalue [1].
Use cases
- In-store merchant payments — the printed "QR đa năng" sticker at the counter, scannable by ZaloPay or any bank app [1, 2].
- POS / e-commerce checkout — dynamic, amount-bearing QR generated server-side per order via ZaloPay's Create Order API [1].
- Cash-on-delivery (COD) collection — ZaloPay's multi-function QR has been deployed for COD orders by courier BEST Express [6].
- Cross-wallet / cross-bank acceptance — because of the embedded VietQR template, any of the 40+ NAPAS-member bank apps can pay the same code [1, 2].
- In-chat P2P transfers and gifting ("lì xì" red envelopes) — ZaloPay is invoked directly from a Zalo conversation; ~12 million digital red envelopes flowed through the wallet during Lunar New Year 2025 [9].
- Bill splitting inside Zalo group chats — a feature credited with much of the 2024-2025 user-base growth from 14 M to ~20 M [9].
- Cross-border merchant collection via payment gateways — ZaloPay is exposed as a payment method through global PSPs (e.g. Antom, Nuvei) so non-Vietnamese merchants can accept Vietnamese consumers, using the same EMVCo MPM payload at acceptance time [9].
Implementations
ZaloPay QR codes are generated server-side from the merchant integration: the qr_code value returned by ZaloPay's Create Order API is rendered into the displayed QR [1].
Open-source libraries (ZaloPay-aware):
| Repo | Language | Stars | License | Last release | Notes |
|---|---|---|---|---|---|
| xuannghia/vietnam-qr-pay | TypeScript | 160 | MIT | v1.5.0, May 2025 | Explicit support for VietQR, MoMo and ZaloPay "QR Đa năng" and VNPayQR; encode + decode [10] |
Generic EMVCo-MPM libraries — any of these parses or emits ZaloPay payloads by writing the standard tag-26 Merchant Account Information template with the vn.zalopay GUID sub-tag, plus the parallel tag-38 / A000000727 VietQR template for cross-bank acceptance [1, 4]:
| Repo | Language | Stars | License | Last release | Notes |
|---|---|---|---|---|---|
| mvallim/emv-qrcode | Java | 128 | Apache-2.0 | v0.1.5, May 2026 | Full MPM v1.1 + CPM v1.1 encode/decode with CRC16 + duplicate-tag checks [11] |
| dongri/emv-qrcode | Go | 58 | — | 2024 | Idiomatic Go MPM/CPM encoder/parser [12] |
Closed-source apps:
- ZaloPay Merchant (iOS
id1444720973, Androidvn.com.vng.zalopay.mep.merchant) by ZION Joint Stock Company — the merchant-facing app that prints/displays "QR đa năng" and reconciles incoming payments; current release v1.5.0 (May 2026) [8]. - The consumer ZaloPay wallet is the primary scanner alongside Zalo itself; bank-app scanning (40+ NAPAS members) is supported by the embedded VietQR template [1, 2].
The genuinely ZaloPay-specific integration is at the PSP layer — issuing the vn.zalopay GUID, opening the shadow merchant account on BVBank so NAPAS can route to it, and reconciling the dual-rail settlement.
Comparison
vs vietqr — VietQR is the NAPAS bank-rail national standard (tag 38 / GUID A000000727); ZaloPay QR is wallet-native (vn.zalopay) but embeds a VietQR template for interoperability, so a single sticker serves both networks [1, 2].
vs MoMo's QR Đa năng — MoMo and ZaloPay are Vietnam's two dominant super-app wallets, and both launched near-identical multi-function QR codes settling through BVBank onto the VietQR/NAPAS rails [2, 3].
vs emvco-mpm — ZaloPay QR is a wallet-specific profile of the EMVCo MPM specification, distinguished by its vn.zalopay GUID [4].
vs qris (Indonesia) — QRIS is a mandated, fully interoperable national EMVCo-MPM scheme; ZaloPay QR is a single Vietnamese wallet's merchant code that achieves interoperability by voluntarily co-embedding the VietQR template [1, 2].
vs alipay-qr (China) — Both are super-app-issued merchant QRs (Alipay/Alipay+ for Chinese tourists; ZaloPay for Vietnamese consumers), and ZaloPay QR is one of the in-Vietnam codes Alipay+ can scan as part of cross-border tourist acceptance. The choosing criterion for a Vietnamese merchant: ZaloPay QR plus the embedded VietQR template covers the domestic + bank-app payer base, while Alipay+ acceptance layers on inbound Chinese tourism — distinct payer audiences rather than overlapping rails [3, vn-cro].
vs sib-qr (India) / bkm-express-qr (Turkey) — single-issuer overlays on a national standard — All three are the same architectural pattern: a single private issuer (ZaloPay/VNG, South Indian Bank, BKM Express) deploys a merchant QR that piggybacks on the national interoperable QR (VietQR / UPI QR / TR Karekod) without inventing a new wire format. The choosing criterion at standard-design time: embed the national template to be scannable by every bank app; add your own GUID template to retain wallet-side routing economics. ZaloPay sits in the same family of design decisions [9, vn-cro].
Fun facts
A single ZaloPay "QR đa năng" can be paid by both ZaloPay users (via the vn.zalopay template) and ordinary bank-app users (via the embedded VietQR template), so one printed sticker serves two networks at once [1, 2].
Rather than fight VietQR's 2023 surge, ZaloPay chose to ride it — building its merchant QR on top of the national rail it might have competed with, and within six months was routing ~19 % of "its" QR transactions through rival bank apps [3, 5].
Both MoMo's and ZaloPay's multi-function QR codes settle through the same partner bank, BVBank, which issues each wallet merchant a shadow bank account so NAPAS can route to it [2].
The QR rides a messaging app's user graph. ZaloPay sits inside Vietnam's dominant messenger Zalo (10 M users within 18 months of its 2012 launch, deep penetration since) — and the wallet's 2024-2025 jump from 14 M to ~20 M users was driven primarily by in-chat features like bill splitting and "lì xì" gifting rather than merchant acquisition; ~12 million digital red envelopes were sent through ZaloPay during Lunar New Year 2025 [7, 9].
Operated by a gaming-company subsidiary. ZaloPay is run by ZION Joint Stock Company — a subsidiary of VNG, originally founded as VinaGame in 2004 and Vietnam's first tech unicorn. The same legal structure that publishes online games is the regulated payment institution behind the QR [7, 8].
Status
Active and widely deployed across Vietnamese merchants [1, 3]. ZaloPay remains Vietnam's second-largest e-wallet (14 million users, 2024) behind MoMo, within a top-five (MoMo, ZaloPay, ViettelPay, ShopeePay, VNPay) that holds the bulk of the market [3]. No deprecation is indicated; the multi-function QR is ZaloPay's primary merchant-acceptance surface and is documented as a current product on docs.zalopay.vn [1].
Sources
- Zalopay QR multi-function — Zalopay Docs
- Vietnam's Top Payment Methods (MoMo, ZaloPay, VietQR) — Transfi
- E-wallet market share after Moca's exit — Vietdata
- EMV QR Code Specifications — EMVCo
- ZaloPay Multi-Function QR honored — VNG
- BEST Express launches ZaloPay multi-function QR for COD — VNG
- VNG Corporation — Wikipedia
- ZaloPay Merchant — Apple App Store
- Vietnam Mobile Payments Outlook to 2029 — GlobeNewswire
- xuannghia/vietnam-qr-pay — GitHub
- mvallim/emv-qrcode — GitHub
- dongri/emv-qrcode — GitHub
- VN-vietnam.md
Deployments
Found in the following country reports (grep across reports/countries/):
- VN — VN-vietnam.md
Deployments
No country reports mention this standard by name.