One checkout. Buyer pays product + delivery + tax. Delivery and tax pass straight through; the product price — set by the merchant to cover every cut — splits five ways.
Two stages. First the buyer is quoted seller's price + delivery + tax, itemized, paid by QRIS. Then it separates: delivery → courier, tax → state, product price → the network.
Seller publishes the price, BAP shows it. At checkout, one itemized QRIS payment:
# quote shown to the buyer (seller is PKP) Product price 100,000 ← seller's published price + Delivery 15,000 ← logistics, passed to the courier + PPN (VAT 11%) 11,000 ← tax — only if the seller is PKP ───────────────────────────── Buyer pays 126,000 ← one QRIS payment
Delivery → courier. PPN → state, but only a PKP seller (turnover above Rp 4.8 bn) charges it; a smaller UMKM charges no PPN (owes 0.5% income tax instead, from its own take — see §03). Either way, the network divides the product price.
Pick the category, set the amounts — everything below recomputes live.
BAP finder fee defaults to 5%, BPP cut to 3% — both yours to set, as a % or a flat rupiah fee. PPN 11% only if PKP. QRIS MDR by category (§03).
The product price, shared
| Party | Gets · IDR | Rate / basis |
|---|---|---|
| Merchant net | — | residual — the provider's take-home, after its BPP |
| Provider app · BPP | — | — — the PN's cut, an off-wire deal |
| Buyer app · BAP | — | finder fee · — — buyerFinderFeeAmount |
| QRIS acquirer | — | — MDR · borneBy: SELLER |
| ION network | — | flat network fee — funds the Fabric, not a commission |
| State · PPh final | — | 0.5% of revenue — the non-PKP seller's income tax |
| Product price | — | the pool that is split |
Courier and state aren't here — paid in the quote. What's left, the
product price, goes mostly to the merchant; the
BPP, buyer app, QRIS
acquirer and ION take the rest.
Merchant + BPP together land at the Provider Node
(netPayableToReceiver) — the network pays the PN, it keeps
its cut, passes the rest on. UMI seller, order ≤ 500,000 → QRIS slice
drops to 0. Raise the BPP cut → eats the merchant's net.
ION's slice is a flat fee — fixed rupiah per order, funding the Fabric (registry, gateway, cataloging) and its team. Not a commission: it doesn't grow with order value, so it's a rounding error on big sales, never a % of GMV. Like a stock exchange's flat trade fee, not a marketplace cut. (ONDC: flat ₹1.5 per txn.)
Break a service promise — late, wrong item — and an
slaPenaltyDeduction also hits the net. Clean order here, so
0.
Bank Indonesia sets it by merchant category — and for the smallest sellers, by ticket size too. The seller's class decides the rate, not the item's price.
| Seller category | Txn ≤ 500,000 | Txn > 500,000 |
|---|---|---|
| Micro UMI · warung, kaki lima | 0% | 0.3% |
| Small · Medium · Large UKE · UME · UBE | 0.7% | 0.7% |
| Public service G2P, taxes, donations | 0% | 0% |
0% isn't "any item under 500,000 is free." Only a micro (UMI) seller, only up to 500,000 — above that, 0.3%. A regular shop or enterprise pays 0.7% on every sale, no threshold. Same 300,000 item: free via a UMI warung, 2,100 via a big retailer. Rates from 15 March 2025; by BI rule the merchant always bears the MDR, never the buyer.
Not every seller. Only a PKP (Pengusaha Kena Pajak, VAT-registered) collects PPN — and you're PKP only past Rp 4.8 bn turnover. Below that: non-PKP, no PPN, no VAT line. Not tax-free though — they owe PPh Final 0.5% of revenue (PP 23/2018), from their take, not the buyer's. Flip VAT status to compare. (PKP and QRIS category are separate classifications.)
Seven parties touch the money; five take a share of the product price, each for a job.
The rest isn't revenue: the courier gets the delivery line, the state the tax — PPN in the quote if PKP, or 0.5% PPh from the merchant's net if not. Full settlement anatomy: trade × payment × logistics.