We've Launched a New Documentation Website (Beta Launch)
The documentation for DuitNow is now available on our newly launched documentation platform. This is an initial beta rollout of our new documentation site, designed to become the long-term home for all documentation moving forward.
You'll find the familiar content you're used to—now hosted on a new platform that will progressively receive updates and enhancements.
We encourage you to start accessing DuitNow materials there to explore the new experience and ensure you're viewing the latest documentation updates. If you have any feedback, please reach out to us.
Visit the New Documentation WebsiteConsumer Presented Mode: Domestic QR
End-to-End Flow
Successful End-to-End Consumer-Presented QR Flow

| Step | Sender | Receiver | Process |
|---|---|---|---|
| 1 | Customer | Issuer | Customer logs into Online Banking or Mobile Banking app and initiates a QR code generation |
| 2 | Issuer | Customer | Issuer generates a QR code and Customer presents the generated QR to Merchant |
| 3 | Merchant | Acquirer | Merchant scans the QR code presented by the Customer |
| 4 | Merchant | Acquirer | Merchant initiates QR Debit request |
| 5 | Acquirer | RPP | Acquirer performs the following:
|
| 6 | RPP | Issuer | RPP performs the following:If any of the Message Validations fails:
|
| 7 | Issuer | RPP | RFI performs the following:If any of the Message Validations fails:
|
| 8 | Issuer | Customer | Issuer notifies Customer on QR payment status |
| 9 | RPP | Acquirer | RPP performs the following:If any of the Message Validations fails:
If the signature received from Issuer could not be verified:
|
| 10 | Acquirer | Merchant | Acquirer performs the following:If all validations are successful:
|
Pre-Authorization and QR Debit Request Flow

| Step | Sender | Receiver | Process |
|---|---|---|---|
| 1 | Customer | Issuer | Customer logs into Online Banking or Mobile Banking app and initiates a QR code generation |
| 2 | Issuer | Customer | Issuer generates a QR code and Customer presents the generated QR to Merchant |
| 3 | Merchant | Acquirer | Merchant scans the QR code presented by the Customer |
| 4 | Merchant | Acquirer | Merchant initiates QR Debit request |
| 5 | Acquirer | RPP | Acquirer performs the following:
Notes:
|
| 6 | RPP | Issuer | RPP performs the following:If any of the Message Validations fails:
|
| 7 | Issuer | RPP | RFI performs the following:If any of the Message Validations fails:
|
| 8 | RPP | Acquirer | RPP performs the following:If any of the Message Validations fails:
If the signature received from Issuer could not be verified:
|
| 9 | Acquirer | Merchant | Acquirer performs the following:If all validations are successful:
|
| 10 | Merchant | Acquirer | Merchant scans the QR code presented by the Customer |
| 11 | Merchant | Acquirer | Merchant initiates QR Debit request |
| 12 | Acquirer | RPP | Acquirer performs the following:
|
| 13 | RPP | Issuer | RPP performs the following:If any of the Message Validations fails:
|
| 14 | Issuer | RPP | RFI performs the following:If any of the Message Validations fails:
|
| 15 | Issuer | Customer | Issuer notifies Customer on QR payment status |
| 16 | RPP | Acquirer | RPP performs the following:If any of the Message Validations fails:
If the signature received from Issuer could not be verified:
|
| 17 | Acquirer | Merchant | Acquirer performs the following:If all validations are successful:
|
Exception Flows
Issuer Failed to Receive Request from RPP

| Condition | Actions | Alternatives |
|---|---|---|
| RPP sent a request to Issuer, and Issuer did receive the request. However, Issuer response did not reach to RPP As no response is received from Issuer after x period of time, RPP eventually timeout | RPP shall:
| - |