Quick Response Code Indonesian Standard (QRIS) is a standard QR code payment specific to Indonesia that was initiated by Bank Indonesia (BI). QRIS allows businesses to accept payments easily via bank transfers or from major e-money players just by scanning the QR within the platform.

Benefits of using QRIS

  1. Enable payments from various source of funds
  2. No need to connect directly to each QR issuer
  3. Save time and effort of having to manually reconcile payments
  4. Get notified almost instantaneously when your customer has made payment

We offer 2 solutions for our QRIS payment method:

Dynamic QRIS: Suitable for invoices and checkouts


  • Create a unique QRIS for each payment
  • Specify the expected payment amount
  • Reject payments made with the incorrect amount
  • Set an expiration for the QRIS


  • For marketplaces or social sellers with many one-time customers

Your customer also doesn't need to manually send you a screenshot or inform you of the payment because we will do that for you.

Static QRIS: Suitable for each customer and account


  • Assign a unique QRIS to each customer or account
  • Customers can make payments of any amount
  • Receive callback notifications when payments are made


  • For investment platforms, where no fixed amount is needed for deposits
  • For making top-ups to an e-wallet or fund-holding account

Using the QRIS payment method

Supported banks and e-wallets

Please refer to this list from Bank Indonesia to get the full list of banks and e-wallets connected with QRIS. Some notable mentions are:

  1. Gopay
  2. OVO
  3. DANA
  4. LinkAja
  5. BCA
  6. BRI
  7. Jenius

Payment limits

Minimum amount (IDR)Maximum amount (IDR)QRIS type

Payment availability

QRIS are usually available throughout the day and payment responses are typically fast.

Payment notifications

When using QRIS as a payment method, please note that this will require further customer action to complete the payment. Customers will be required to scan the QRIS and make the payment through their preferred banks or e-wallet application. For payment methods that require customer action, we recommend setting up callbacks so that you can be notified whether a payment has succeeded or not.


Payment notification delays

QRIS payment notifications may be delayed. In such cases, payment cannot be guaranteed during this delay. The status of the Payment object will be pending until the payment is either successful or failed. It’s common for businesses to hold an order in a pending state during this time and not fulfil the order until the payment is successful.


Please note that refunds are not available for QRIS payment methods at this moment.

Creating a Dynamic QRIS for a One-Time Payment

# /api/v4/payments
  "data": {
    "attributes": {
      "paymentMethodType": "qris",
      "amount": 100000,
      "referenceId": "dynamic_qris_reference_id",
      "expiredAt": "2021-02-04T21:15:00+07:00",
      "description": "QRIS dynamic",
      "paymentMethodOptions": {
        "displayName": "Your preferred name"

Creating a Dynamic QRIS for Unlimited Payments

# /api/v4/payment_methods/qris
  "data": {
    "attributes": {
      "referenceId": "static_qris_reference_id",
      "displayName": "Your preferred name"