QPay

QPay is Mongolia's QR payment network. It says it connects all Mongolian commercial banks and e-wallets in one place, so a shopper can pay a merchant's QR code or invoice from whichever bank app they use. In April 2024 it counted 12 partner bank apps, 7 e-wallets and more than 200,000 stores. With Omno, a merchant would reach QPay through the same API as cards and SocialPay.

Updated

Type
Instant payment
Countries
Mongolia
Currencies
MNT
Pay-in
Yes
Pay-out
No
Refunds
Partial
Chargeback exposure
Low
Settlement
Paid from the shopper's bank account or e-wallet in MNT; QPay says merchants receive payment within seconds, with settlement terms set in the merchant agreement
Authorisation speed
Seconds once the shopper confirms in a bank app or e-wallet; the merchant is notified by callback
QPay stores in Mongolia (company-reported)
200,000 stores

How paying with QPay feels to the shopper

  1. Picks QPay

    Checkout shows a QR code or a payment reference

    Timing: At checkout

  2. Approves in the bank app

    No card number, no 3-D Secure

    Timing: In the bank app

  3. Confirmed

    The provider notifies you by webhook

    Timing: Seconds

  4. Settled

    In MNT, bank to bank

    Timing: Per agreement

If it fails:

  • code or reference expires
  • abandoned in the bank app
  • payer details mismatch
  • provider timeout

Example flow. Timings vary by provider.

On this page4 sections

How does a QPay payment work?

The merchant creates an invoice for each order through QPay’s Merchant V2 API. The API returns a QR code and deeplinks into bank apps. On a desktop the shopper scans the QR code with any bank app or e-wallet, and the amount fills in automatically. On a phone the shopper sees a list of bank apps and e-wallets, picks one, signs in there and confirms the payment with their own transaction password. No card number or account number is typed.

When the payment succeeds, QPay sends a notification to the merchant’s callback URL. The merchant then confirms the result with a payment check call. QPay’s documentation forbids polling payment status with a cron job, so the callback is the trigger. Each merchant invoice number must be unique, and an unpaid invoice can be cancelled.

QPay grew out of a 2016 agreement with Khan Bank. It says it introduced Mongolia’s first QR e-payment solution in 2017, launched API 2.0 for QR invoices in 2018, connected to UnionPay International in 2020 and formed a partnership with WeChat Pay in 2022. Since 2024 it has worked with GLN International of South Korea on cross-border QR payments.

Why does QPay matter for merchants?

Mongolian money moves between bank accounts in real time. The Bank of Mongolia’s real-time low-value system processed 452.9 million interbank payments in 2025, 91.7% of all interbank transactions. QPay lets a merchant reach that money through one QR code instead of separate integrations with each bank.

For the shopper, QPay feels like their own bank app. QPay says customers pay no extra fee. It lists a merchant fee of 1% of the payment, shared between the sending bank, the receiving bank and QPay, and a one-time fee of 300,000 MNT for the first connection of an app or website.

QPay also handles e-receipts. Its API can issue an e-barimt, Mongolia’s electronic receipt, after a successful payment and cancel it when the payment is refunded, once QPay has turned the setting on for the merchant.

What can go wrong?

Most failures happen in the flow, not in the bank. A shopper on a phone may pick a bank app that is not installed, or close the app before confirming. A merchant that releases orders on the redirect alone, without the callback and payment check, risks shipping unpaid orders.

Refunds need care. QPay’s API notes its cancel and refund calls as applying to card transactions, so a merchant should confirm with QPay or its provider how a refund to a bank account or e-wallet is handled. Each refund also needs the matching e-receipt cancelled. QPay is domestic and in MNT, so shoppers without a Mongolian bank app or e-wallet cannot use it, and it is a pay-in method only.

How would Omno handle QPay?

Omno would treat QPay as its own route. The hosted checkout would create a QPay invoice for each order, show the QR code on desktop and the list of bank apps on mobile, and wait for the callback. A payment check would confirm the result before a webhook tells the merchant’s system that the order is paid. Rules set by the merchant could show QPay first to Mongolian shoppers, next to SocialPay and cards. Routing rules would choose the provider for each payment. If a provider is unavailable or rejects the request, the payment moves to the next provider in the rule until one accepts. The routing-decision log would record which provider handled each payment.

Questions about QPay

Which banks work with QPay?

QPay says it connects all Mongolian commercial banks and e-wallets, and shows logos of Khan Bank, Golomt Bank and XacBank among others. In April 2024 its network counted 12 partner bank apps and 7 e-wallets, according to a release reported by The Paypers.

How does a merchant know a QPay payment succeeded?

QPay sends a notification to the merchant's callback URL after a successful payment. The merchant then calls the payment check endpoint to confirm it. QPay's documentation forbids polling payment status with a cron job, so the callback is the trigger.

What does QPay cost?

QPay lists a merchant fee of 1% of the payment, shared between the sending bank, the receiving bank and QPay, and a one-time 300,000 MNT fee for the first connection of an app or website. It says the shopper pays no extra fee.

Can QPay issue e-barimt receipts?

Yes. QPay's API can create an e-barimt, Mongolia's electronic receipt, after a successful payment and cancel it when the payment is refunded. The merchant first asks QPay to activate the e-barimt setting.

How would Omno handle QPay payments?

Omno would create a QPay invoice for each order in the hosted checkout or through Direct Links, show the QR code on desktop and the bank app list on mobile, and confirm the callback with a payment check before telling the merchant by webhook. Routing rules set by the merchant would choose the provider, and in the hosted checkout, if a provider is unavailable or rejects the request, the payment moves to the next provider in the rule until one accepts.

it will.

Tell us where your payments fail. We will show you how routing changes the outcome.

esc
↑↓ to move ↵ to open All results