Skip to content

Choosing a flow

What you will do: decide in two minutes how your system takes a payment with Gerege App. There are four flows (presentment); all of them are one payment intent, one webhook, one settlement — what differs is how the person reaches the payment.

1. Decision tree

Does your app open INSIDE Gerege App (a tile in the launcher)?
├─ Yes ──────────────────────────────────────────────▶ mini app · presentment "app"
└─ No — you are a merchant (kind "merchant"):
   Where is the person?
   ├─ In your website / app, at checkout ────────────▶ "redirect"  (send them to pay_url, back via return_url)
   ├─ In front of your screen (till, kiosk, POS) ────▶ "qr"        (a new QR per basket)
   └─ At a fixed spot (sticker, NFC, vending) ───────▶ "terminal"  (the QR/NFC names the terminal, not the amount)

Many owners on one platform (every machine owned by someone else)? ──▶ + sub-merchants
Take the money only AFTER handing over (a machine dispenses, an order is prepared)? ──▶ + capture_method "manual"

2. Comparison

app redirect qr terminal
Who mini app web shop, mobile app till, kiosk, POS, invoice vending, NFC sticker, permanent QR
Creates the intent the person's access token (Bearer) the app's client credentials (Basic) Basic Basic
How the person reaches it bridge requestPayment pay_url (opens the app on a phone) the QR of pay_url on a screen the terminal's url (sticker QR, NFC)
When the person is known at creation at claim at claim at claim
Required field — return_url (its host in return_hosts) — terminal_id
user_ref pairwise sub, stable per app random per payment random per payment random per payment
Usual capture automatic automatic automatic / manual manual, capture_within 60–300 s
Start Mini app Pay with Gerege App Quickstart Terminal

Gerege App (iOS)'s in-app QR button and NFC reader are in builds after TestFlight 121; scanning with the camera (Universal Links) and the desktop /pay page are «удахгүй». Without a phone, play the person's step as in §7 of the Quickstart.

3. Usual combinations

Business Flow Note
Online shop redirect order number = Idempotency-Key = reference; do not trust the return URL — check with GET
Café or shop till qr a short expires_in (60–300 s) — a QR left on a screen must not be paid by someone else
Vending machine terminal + manual dispensed → capture, not dispensed → cancel, no answer → released by itself
A network of machines with many owners terminal + sub-merchants every owner approves their payout account in Gerege App
Kiosk hub (many services) qr + sub-merchants every service provider is a sub-merchant
Invoices, utility bills redirect (an SMS/e-mail link) or qr (on paper) expires_in is ≤ 1800 s today; long-lived invoices are «удахгүй»
A service inside Gerege App app manifest, review, launcher

4. Further

Concepts overview — whose each object is and what it connects to. Presentments and claims — pay_url and how claims are protected.