Understanding QRIS: From Technology to Systemic Implications
When we first saw the square black-and-white stickers at our favorite coffee shop, we might have simply thought it was a convenient way to pay without the hassle of carrying cash. Scan, confirm, done. Simple, right? But behind that simplicity lies a system architecture far more complex than we imagined. QRIS, or Quick Response Code Indonesian Standard, is more than just payment technology. It's about how a country tries to take control of its digital financial infrastructure, about how data flows from our pockets to entities we don't even know, and about the fundamental question: how much control do we really have over our own money?
Let's start with the basics. QRIS isn't a revolutionary new payment system. To be honest, it's simply a QR code encoding standard for EMV-based payment transactions—a technology that's been around for a long time in the international credit card industry. What makes QRIS special is its function as an interoperability format on top of Indonesia's payment switching infrastructure. Think of QRIS as a universal language that allows various payment applications—from GoPay, OVO, DANA, to BCA or Mandiri mobile banking—to communicate and transact with each other through a single QR code. Before QRIS, each merchant had to display a variety of QR codes from various payment service providers. This created headaches for cashiers and confused customers. QRIS simplifies all of this into one universal code.
But wait, before we get too carried away by the convenience, let's unpack what actually happens when we scan that QR code. First, we need to understand that there are five main entities involved in every QRIS transaction. There's the customer—us, the one paying using a smartphone and a digital wallet app or mobile banking. There's the merchant, which could be a small street stall or a large retail store with a sophisticated POS system. Then there's the issuer, the bank or fintech that manages our account as a customer. For example, Bank BCA if we use BCA mobile, or PT Visionet Internasional if we use OVO. Then there's the acquirer, the bank or fintech that manages the merchant account and is responsible for settling funds into the seller's account. And finally, often unseen but crucial, is the switching network—companies like Rintis, Artajasa, Alto, or Jalin that act as transaction routers between issuers and acquirers.

On top of that, Bank Indonesia acts as the regulator, setting the rules, from Merchant Discount Rate (MDR) levels to compliance and fraud prevention. So, while we might think, "Wow, it's so complicated just to scan a QR code," behind the scenes, there's actually an orchestration involving at least five different entities, each with its own systems, protocols, and interests.
Now, let's talk about the types of QR codes available in the QRIS ecosystem. There are two main types to understand because they have very different security implications. The first is Static QR—a QR code printed and permanently affixed to the cashier's desk or store wall. This code contains a fixed Merchant ID, and the amount must be manually input by us as customers. The advantages are clear: cheap, practical, and suitable for MSMEs that don't have the budget for electronic devices. But this is where security issues start to arise. Static QR codes are highly vulnerable to QR swapping attacks—where criminals can replace the genuine QR sticker with a fake one that directs the payment to their account. Have you ever heard of someone paying at a shop only to find that the money ended up in someone else's account? This is one of the risks.
Unlike Static QR, there's a Dynamic QR code generated by the POS system for each transaction. The nominal amount is embedded in the QR code, complete with a timestamp and invoice ID. This is much more secure because the QR code is only valid for a specific transaction and for a limited time. Think of it like a one-time password that expires immediately after use. Dynamic QR codes are more complex and require a better technological infrastructure, so they're typically used by large merchants or those with integrated POS systems. But from a security standpoint, they're a far superior option.
Let's get into the more technical part—the QRIS data structure itself. QRIS uses a format called TLV encoding, short for Tag-Length-Value. This is the international standard EMVCo method for storing payment information in a structured and efficient format. Think of TLV like a labeling system in a warehouse: each piece of information has a tag (identification number), a length (how long the data is), and a value (what the data contains). For example, tag 00 indicates the Payload Format Indicator—the version of EMV used. Tag 01 indicates the Point of Initiation, which determines whether this is a Static or Dynamic QR. Tags 26 to 51 contain merchant account information, including the Merchant ID and Acquirer. Tag 52 is the Merchant Category Code, which categorizes the type of business. Tag 53 stores the currency code—360 for Indonesian Rupiah. Tag 54 contains the transaction amount if this is a Dynamic QR. Tag 58 is the country code. Tag 59 is the merchant name. Tag 60 is the merchant's city. And tag 63 is the CRC checksum to verify data integrity.
What's interesting—and worrying at the same time—is that QRIS are not encrypted. The data inside the QR code can be read by anyone with a decoder. The only protection is a CRC checksum, which ensures the data isn't accidentally corrupted or altered during transmission. But this isn't encryption in the security sense. This means that, technically, anyone can create a fake QRIS as long as they know the TLV structure and can calculate the correct CRC. The real security lies not in the QR code itself, but in the issuing app—the app we use to scan and pay.
When we scan a QR code, what actually happens? The process begins with our app reading and decoding the TLV payload from the QR code. The read data is then sent to the backend issuer—for example, the BCA server if we're using BCA mobile, or the DANA server if we're using DANA. The issuer app creates a payment request in ISO 8583 format or an API message containing the Merchant ID, payment amount, customer account number, timestamp, signature or HMAC for authentication, and risk metadata such as device fingerprint. This message is then sent to the switching network.
This is where the role of switching networks comes into play. They're not banks, they're routers. Their job is to receive payment requests from issuers and forward them to the appropriate acquirer based on the Merchant ID. Think of it like a post office sorting mail by destination address. Switching networks like Rintis or Artajasa have routing tables that map each Merchant ID to the acquirer that manages that merchant. They also perform functions like format translation—since not all issuers and acquirers use the same protocols—and logging for auditing and dispute resolution purposes.
Once the message reaches the acquirer, the authorization process begins. The acquirer performs a series of checks: is this merchant valid and active? Is this QR code registered in the system? Have any risk rules been violated? Are there any velocity anomalies—for example, a merchant suddenly receiving hundreds of transactions in a single minute? If anything seems suspicious, the transaction can be immediately rejected. But if everything is okay on the acquirer's side, they will send the request back to the issuer for final authorization.
On the issuer side, more personalized checks are performed on us as customers. Is our balance or credit limit sufficient? Are there any fraud flags on our account? Is the device we're using trustworthy? Does the transaction location make sense based on our previous behavior? Modern issuers use machine learning to detect anomalies—for example, if we usually shop in Jakarta but suddenly receive a transaction from Bali within an hour, this could trigger an alert. If all checks pass, the issuer will send an approval.
This approval response then makes a roundtrip: from the issuer to the switching network, from the switching to the acquirer, from the acquirer to the merchant POS, and finally, a success notification appears in our application. It may seem instantaneous to us, but in reality, dozens, if not dozens, of roundtrip messages occur within seconds.
Now, here's the part that many people often misunderstand: settlement. When we see the "Payment Successful" notification and our balance is immediately reduced, it doesn't mean the merchant has actually received the money. What happens is that our balance is debited in real time, but the funds haven't actually entered the merchant's account. It's similar to sending a package via courier—we've paid for shipping, but the package hasn't arrived yet. Settlement is actually a batch process carried out by switching networks at the end of the day or a specific period. They perform netting—calculating the total transactions between various issuers and acquirers, then conducting a batch settlement through infrastructure like BI-FAST or RTGS (Real-Time Gross Settlement). Only then will the acquirer credit the merchant's account, minus the MDR fee.
Speaking of MDR, this is the fee charged to merchants for each QRIS transaction. Bank Indonesia has set the MDR rate: free for MSMEs (0%), 0.7% for regular merchants, 0.6% for the education sector, and 0.4% for the government. This fee is split between the issuer and acquirer based on their agreement. So, if we pay Rp100,000 at a store, and the MDR is 0.7%, the merchant only receives Rp99,300, with the remaining Rp700 divided between the issuer (our bank or e-wallet) and the acquirer (the bank or payment gateway the merchant uses). This is one of the main sources of revenue for the QRIS ecosystem.
Now let's talk more seriously about security. Many people think QRIS is secure because "it uses QR codes and PINs." But in fact, the QRIS security model relies heavily on layers beyond the QR code itself. What QRIS protects is only data integrity through CRC checksums, merchant identity through Merchant IDs, and regulatory compliance. But QRIS doesn't protect at all from attacks such as QR code spoofing—creating fake QR codes that look legitimate, QR replacement attacks—replacing physical QR codes with fake ones, visual phishing—QRs that look like they're from legitimate merchants but aren't, merchant impersonation, replay attacks on Static QR codes, and malware on our devices.
These threats are real and common. QR swapping is the most common—the perpetrator simply prints a QR sticker with their own Merchant ID and then sticks it over the merchant's genuine QR code. An unwary customer scans the fake QR code, and the money goes into the perpetrator's account. Fake Dynamic QR codes can occur if a merchant's POS system is infected with malware that injects the attacker's Merchant ID into every QR code generated. Social engineering is also rampant—the perpetrator sends a QR code via WhatsApp or SMS, claiming to be a friend in need or a lottery winner who must "verify" by scanning the QR code. Once you scan it, you're actually making a payment to their account. Replay attacks on Static QR codes are also possible—for example, the perpetrator takes a photo of the merchant's QR code and then uses it to create a fake transaction that they can claim as proof of payment. And of course, there's malware at the issuer level—banking trojans that can intercept payment requests and change the destination account before the transaction is sent.
True security lies in the issuer's application. There are various layers of protection: multi-factor authentication (PIN, biometrics, OTP), device binding that ensures accounts can only be accessed from registered devices, encryption for data in transit and at rest, a fraud detection system with machine learning, transaction limits, geo-fencing that restricts transactions based on location, and so on. But all of this depends on each issuer's implementation. The quality varies. Some are very strict, others quite lax. As users, we don't have complete control over this.
Now, let's take things to a higher level. What exactly is the fundamental purpose of QRIS? If we read Bank Indonesia's official documentation, they'll talk about financial inclusion, payment efficiency, supporting MSMEs, and so on. All of that is true, but incomplete. There's a broader political-economic dimension behind QRIS. Bank Indonesia is well aware that payment infrastructure is one of the most fundamental forms of economic sovereignty. If payment infrastructure is controlled by foreign companies or private Big Tech, the state loses control over transaction data, the ability to intervene in policy, and leverage in financial sector regulation.

Imagine if Indonesia's digital payment ecosystem were completely controlled by Visa, Mastercard, or platforms like Alipay and WeChat Pay. All Indonesian citizens' transaction data would flow to their servers, all fees would flow to their profits, and Indonesian regulators would simply resign themselves to their lack of control over the infrastructure. QRIS is Bank Indonesia's answer to prevent that scenario. By forcing interoperability, BI ensures that no single player can monopolize. By regulating the MDR, BI ensures fees are not arbitrarily set by market forces. By requiring routing through domestic switching, BI ensures visibility of transaction data for surveillance, taxation, and monetary policy purposes.
So yes, QRIS isn't a revolutionary technology from a technical standpoint. It's simply EMV QR with slight modifications for the Indonesian context. But QRIS is a powerful governance instrument. It's Bank Indonesia's way of controlling payment systems in the digital age, preventing Big Tech monopolies, enforcing data transparency, and standardizing fee collection. In more blunt language, QRIS is a tool of control wrapped in a narrative of convenience and inclusion.
Comparing QRIS with other payment technologies is also interesting to examine. Compared to NFC (Near Field Communication) like Apple Pay or Samsung Pay, QRIS is slower because it requires visual scanning, alignment, and decoding, while NFC is simply a tap. But QRIS doesn't require special hardware on a smartphone—a camera is sufficient. NFC requires an NFC chip, which isn't necessarily found in all phones. In terms of security, NFC is superior because it uses a secure element—a special chip isolated from the operating system, making it more resistant to malware. QRIS security relies on app-level security, which can be compromised if the device is infected.
Compared to cryptocurrency, QRIS clearly falls short in terms of finality and decentralization. Crypto transactions on layer 1 blockchains have instant finality—once confirmed, they cannot be reversed. QRIS settlement takes T+1 or even longer, and can be reversed in the event of a dispute. Crypto has no central control point—no one can freeze or block transactions. QRIS is completely under the control of regulators, banks, and switching companies. But QRIS excels in terms of adoption and user experience. People are already familiar with QR scanning and have e-wallet or mobile banking apps. Crypto remains too technical, too volatile, and too slow for everyday retail payments.
Now, let's talk about the less-discussed dark side: the implications of surveillance and control. Every time we make a QRIS transaction, a digital trail is created. It tells us who paid, how much, to whom, when, and where. This data flows through the issuer, switching network, and acquirer. Bank Indonesia has access to this aggregate data for monetary policy and financial stability monitoring purposes. But the question is: who else has access? How is this data used? Are there sufficient safeguards to prevent misuse?
In the era of CBDC (Central Bank Digital Currency), which is being developed by various countries, including Indonesia, this question has become increasingly crucial. CBDC is the logical evolution of QRIS—a digital currency issued directly by the central bank, programmable, and monitored in real time. Imagine if the government could stipulate that "your money can only be used to purchase basic necessities, not cigarettes or alcohol." Or "your money must be spent within 30 days, or it will expire, to encourage consumption." This is not science fiction. It has been tested in several countries. China, with its Digital Yuan, has demonstrated how powerful programmable money can be for social engineering.
And here we come to the most fundamental question: do we still have full control over our money? In the QRIS system, technically, banks or e-wallets can freeze our accounts at any time. They can block our transactions to certain merchants. Regulators can order suspensions. Switching networks can blacklist us from routing. These are all capabilities built into the system's architecture. Does this mean there's malicious intent? Not necessarily. But is the capability there? Absolutely.
This is what's called a financial kill switch. It's not a single, global secret button that can shut down all accounts at once, but layers of operational, legal, and infrastructure controls that allow for the termination or restriction of an individual's financial activity. At the individual account level, banks can set the status from ACTIVE to FROZEN or BLOCKED in their core banking system. The transaction engine will automatically reject all debits and credits. This is technically trivial—just change a single flag in the database. At the payment rail level, like QRIS, there are many layers of control. Issuers can stop transactions for specific users. Switching can blacklist specific merchants, issuers, or routes. Acquirers can revoke Merchant IDs, shutting down the merchant's QRIS. Regulators like Bank Indonesia or the Financial Services Authority (OJK) can suspend the licenses of issuers or acquirers, which has systemic effects.
At the network level, governments can block the internet in a region, force telcos to throttle, carry out DNS poisoning, or even TLS man-in-the-middle attacks through national gateways—as some countries have done. Payment apps go down without a network. This isn't a conspiracy theory. It's already happening in various countries in various contexts, from Myanmar during a military coup to Kazakhstan during unrest. At the national systemic level, there are real precedents such as SWIFT sanctions against Iran and Russia, bank run prevention limits in Cyprus and Greece, capital controls with withdrawal caps, and emergency decrees that restrict financial access.
So, is it normal for laypeople to have trust issues with QRIS administrators? The professional answer from a cybersecurity perspective is: very normal. But a healthy trust issue must be distinguished from paranoia. A healthy trust issue is skepticism based on threat modeling—we identify who has access, what their capabilities are, what their incentives are, and what mitigation measures we can take. Paranoia is the assumption of conspiracy without evidence, believing that all global elites are coordinating in a secret cabal to control our lives through QR codes.
Let's talk about the "global elite" more clearly. In a serious, non-conspiratorial academic context, the global elite is a group with disproportionate influence over capital, policy, media, technology, and institutions. They include central bankers like Jerome Powell or Christine Lagarde, the leadership of the IMF and World Bank, G7 policymakers, mega-fund managers like BlackRock and Vanguard, who manage trillions of dollars in assets, tech platform leaders like the CEOs of Google, Amazon, and Meta, and the military-industrial complex leadership. This is not a single, secret group. It is a network of power clusters—various groups with interests that sometimes align, sometimes conflict, but which collectively wield enormous influence over the direction of the global economy and politics.
How can they influence a country's government? This isn't a conspiracy theory; it's basic political economy. First, through capital influence. Foreign investment is leverage—if a country is too "naughty" with regulations that aren't investor-friendly, capital flight can occur. Rating agencies like Moody's and S&P can downgrade a country's rating, which increases the cost of borrowing. The IMF and World Bank can condition their loans on structural adjustment programs that force countries to liberalize their economies, privatize state-owned enterprises, and so on. Second, through regulatory capture. Lobbying is a multi-billion dollar industry. The revolving door between government and corporations means that government officials who today create regulations become consultants for regulated companies tomorrow. Policy drafting is often done by industry groups, which are then "adopted" by the government.
Third, through tech infrastructure dependence. Cloud providers like AWS, Azure, GCP; payment rails like SWIFT, Visa, Mastercard; and telecom vendors like Huawei or Cisco—all of these are chokepoints. If a country relies on their infrastructure, that dependency becomes leverage. Fourth, through sanctions and geopolitics. SWIFT bans, trade embargoes, export controls on chips or weapons—all of these are very effective tools of coercion. And fifth, through narrative power. Media framing, think tanks, academic funding—soft power that shapes public perception of what is "good" and "bad" in economic policy.

So is there a "global financial kill switch"? There's no single global button that can shut down the entire global financial system at once. But yes, there are layered systemic controls. Global finance is comprised of interdependent chokepoints: SWIFT for interbank messaging, dollar clearing for all USD transactions, rating agencies for the cost of capital, IMF conditionality for sovereign debt, sanctions regimes for economic isolation, and cloud and payment infrastructure for operational dependency. Control is distributed, not centralized. But distributed control can be as powerful as centralized control, if not more so, because it's more resilient and less visible.
Can QRIS be used for political control? Technically: absolutely yes. Freezing accounts, merchant bans, geo-fencing to limit transactions in certain areas, spending controls—all of these are possible. In the future, with CBDC, even programmable money whose use can be regulated granularly. Legally: this requires emergency laws. But the problem is, laws can be changed during a crisis. Emergency powers have historically been abused. This is systemic risk, not paranoia.
But let's be realistic. Not everything that's technically possible is politically viable. There are checks and balances, public opinion, and international scrutiny. The government won't simply freeze its citizens' accounts without due process unless in truly extraordinary circumstances. But the capability exists. And in extraordinary situations—war, pandemic, mass riots, financial crisis—precedent shows that extraordinary measures will be taken. Cyprus cut off access to bank deposits during the financial crisis. India demonetized overnight. China implemented strict capital controls. Canada froze the accounts of Trucker Convoy protest supporters.
So what should we do as individuals? First, don't be naive, but also don't be paranoid. Understand that QRIS is a double-edged sword—convenience on one hand, control surface on the other. Second, diversify. Don't put all your money in one system. Have physical cash, have tangible assets like gold, property, or commodities. Third, privacy hygiene. Limit the information we share, use multiple accounts for compartmentalization, don't link all financial services to one identity. Fourth, security posture. Use strong passwords, 2FA, avoid phishing, update software regularly, and don't install apps from unknown sources.
Fifth, financial literacy. Understand our rights, dispute resolution mechanisms, and consumer protection regulations. Sixth, civic engagement. Follow regulatory developments, provide feedback to regulators, and support transparency and accountability. And seventh, maintain optionality. Don't become fully dependent on one payment system, one bank, or one fintech. Have alternative means of payment, alternative banking relationships, and alternative stores of value.
Does this mean we should reject QRIS and return to a cash-only system? It's neither realistic nor necessary. QRIS brings real benefits—convenience, efficiency, and traceability, which are useful for taxation and anti-money laundering. The important thing is not to blindly trust. We engage with the system with open eyes, awareness of the trade-offs, and preparedness for worst-case scenarios.
Digital finance is a control surface. A control surface is a power surface. It's not evil by design. It's power by architecture. Just as highways facilitate mobility but also enable surveillance through CCTV and ANPR, just as the internet democratizes information but also enables mass data collection, QRIS is an infrastructural ambivalence—simultaneously empowering and disempowering, depending on who holds control and for what purpose.

The hard truth we must accept: centralized payment systems always imply centralized control capabilities. There is no way to achieve convenience without trading off autonomy. Today's QRIS is a convenience layer. Tomorrow's CBDC is a programmable sovereignty layer. The trajectory is clear. The question is: are we aware, are we prepared, and do we have the agency to navigate this system in a way that aligns with our values and interests?
So the next time we scan a QR code at a coffee shop, perhaps we can take a moment to appreciate not just the convenience, but also the complexity and implications of the system we're engaging with. Because behind the simplicity of a scan, there are big questions about sovereignty, privacy, control, and the future of money itself. And the answers to those questions won't be written by technology or regulators or global elites, but by us—the millions of individuals who make daily choices about how we spend our money, who we trust, and what we defend.