Home · Business

Oda Business · §34–37

One QR on the counter.
Every source the customer has.

The merchant should not care where the money originated. Java House, Naivas, a hotel, a school, or a stall — same accept surface. Same frozen contract Oda Retail already uses for restock.

Built for a chain. Usable by a kiosk.

Organization → brand → branch → outlet → terminal. Useful the day Naivas cares. Simple the day Amina hangs a QR.

  • Sandbox nowCreate org, location, API key. Accept a demo payment. See a receipt, not a JSON dump first.
  • Webhooks + reconDeliveries you can trust. A recon run that explains. The ledger does not hold the till.
  • What we do not fakeFull KYB, cashier RBAC, maker-checker payouts — in the blueprint, not painted as live this month.
Hierarchy · §35Java House
OrganizationBrandBranch · WestlandsTerminal · till QR

What the console is for.

Identity

Org & handle

javahouse@oda. Locations. Staff and OWNER / CASHIER / AUDITOR roles when we turn them on for real.

Accept

Static + dynamic QR

Static is identity. Dynamic is this amount, this order, this expiry. Large QR on the phone. Sound when it lands.

Truth

Audit later, honesty now

Privileged actions get an audit log in the spec. Today you already get status, webhooks, recon — no pretend bank license.

Why a merchant switches.

One sticker, every rail

Customer pays from M-PESA or KCB or a card. You do not print three tills.

OdaFlow already in the family

Retail restock talks to this checkout. You are not a greenfield integration if you already run Oda.

This page is /business on odapay.odaflow.com. The working console is :4030 until you put a host in front of it. No extra TLD required.