Skip to content
UseQR
ESC

Jump to

MOVEOPEN50 places

Payments

QRIS in Indonesia: the strongest case for one national QR standard

QRIS is Indonesia's single mandated payment QR standard. Since 1 January 2020, Bank Indonesia has required every payment QR in the country to be QRIS, so any licensed app (GoPay, OVO, DANA, ShopeePay or a bank app) can pay any QRIS code, and merchant fees are set nationally rather than negotiated.

View as MarkdownPaste this page into any AI assistant. It is plain, portable Markdown.

The problem QRIS solved

By 2019, Indonesian counters were plastered with stickers: one QR per wallet (GoPay, OVO, DANA, LinkAja) each readable only by its own app. Merchants managed multiple acquiring relationships and reconciliations; customers needed the right app for the right sticker. This is the fragmentation trap every closed-loop QR market falls into, and the one China's duopoly still lives in.

Bank Indonesia's answer was blunt: QRIS (Quick Response Code Indonesian Standard, pronounced "kris"), developed with the Indonesian Payment System Association (ASPI), launched on 17 August 2019 (Independence Day, deliberately), and made mandatory from 1 January 2020. From that date, every payment QR presented in Indonesia must be a QRIS code. Wallet-specific payment codes became non-compliant overnight.

How it works

QRIS profiles the EMVCo merchant-presented standard: tag-length-value payload, merchant identifiers in the account templates (including a national merchant ID), currency IDR, country ID, optional amount in field 54, CRC16 at the end. Decode a QRIS sticker with /validate and the structure matches a PIX or DuitNow code: the differences live in the templates, not the skeleton.

The interoperability is the point: any licensed payment app pays any QRIS code. A warung with one laminated code accepts customers from every wallet and bank in the country. The merchant chooses one acquirer; the customer chooses any app; the national switch routes between them.

Nationally set merchant pricing

QRIS pricing is a regulatory instrument, not a negotiation. The merchant discount rate (MDR) is set centrally by the regulator by merchant category, with reduced (at times zero) rates for micro-merchants, precisely to keep street vendors inside the formal system. The exact rates have been adjusted over the years (Bank Indonesia publishes current figures), but the structural fact is the interesting one: in Indonesia the cost of QR acceptance is policy, not market power. Compare card acquiring, where an individual merchant negotiates from no leverage at all.

Why this is the strongest one-standard case study

Other countries reached interoperability by different routes: Brazil built one system, India one deep-link format, Malaysia a framework obliging interoperation. Indonesia is the cleanest test of the mandate approach: a large, fragmented, wallet-first market where the regulator declared one code format and required every incumbent to adopt it. The visible result (one sticker per counter, national merchant-fee policy, wallet competition shifting from acceptance networks to product quality) is why QRIS features in the standards comparison as the reference unification story. Cross-border QRIS linkages within ASEAN (Malaysia, Thailand, Singapore) extend the same code to participating foreign apps, with the usual caveat: check your own app's participation before relying on it.

For merchants and travellers

Merchant onboarding runs through a licensed acquirer (bank or wallet company), which issues your QRIS code and states your MDR. Deployment is the universal drill: ≥ 4–5 cm at counter distance, intact quiet zone, name printed large to match the payer's confirmation screen, mounted where an overlay sticker would show.

Travellers: your home app pays QRIS codes only if it participates in a linkage; otherwise cash or cards. The codes themselves are safe to scan and inspect, scanning never moves money without your confirmation in a payment app.

FAQ

What does QRIS stand for?

Quick Response Code Indonesian Standard: the single payment QR format defined by Bank Indonesia and ASPI, launched 17 August 2019 and mandatory for all payment QR codes in Indonesia since 1 January 2020.

Can any app pay any QRIS code?

Yes: that is its purpose. Every licensed Indonesian payment app, bank or wallet, must be able to pay every QRIS merchant code, regardless of which acquirer issued the code.

Who sets QRIS merchant fees?

The regulator. The merchant discount rate is set nationally by merchant category, with reduced or zero rates for micro-merchants, rather than being negotiated between merchant and provider. Bank Indonesia publishes the current rates.

Is QRIS an EMVCo format?

Yes. QRIS is a national profile of the EMVCo merchant-presented QR specification (tag-length-value fields ending in a CRC16), with Indonesian scheme identifiers and a national merchant ID in the templates.

Try it: free, no signup