This is a walk-through of a purchase that has not happened yet — the on-chain checkout the Empoorio apps are being wired toward — using only components that exist and numbers that were measured. The point is to make the whole path concrete before the first real one.
0. Before the purchase
The merchant registered in Empoorio Manager and linked an Eoonia account (the linking flow is live in Empoorio Warehouse today). The merchant priced the menu in DUSD. Empoorio sponsors the merchant's fees through a pallet-paymaster policy, so the merchant holds no DMS.
The customer has Eoonia with some DUSD in it.
1. Checkout — 0 s
The customer taps Pay with Eoonia in Empoorio Eats. The app builds a deep link containing an escrow.lock call: asset DUSD, amount 12.50, payee the merchant, release condition a delivery record from pallet-logistics, timeout 24 hours. Eoonia opens, decodes the call from chain metadata, and shows Pay 12.50 DUSD to Café X, held until delivery.
2. Approval and submission — ~1 s
The customer approves. Eoonia builds the extrinsic — including the two EmpoorioChain-specific signed extensions — signs it, and submits to rpc.testnet.empooriochain.org. State: submitted. Eats shows processing.
3. Inclusion — ~3.5 s (testnet p50)
Aura's next slot author pulls the transaction from the DAG mempool and includes it. The paymaster policy is validated; the fee — roughly 0.000025 DMS worth — is charged to the sponsor, 80 % burned, 20 % to treasury. escrow.lock executes; 12.50 DUSD moves from the customer to the escrow. State: included. Eats shows payment received; Manager shows the order.
4. Finality — ~17 s (testnet p50)
GRANDPA finalizes the block. State: finalized. The merchant prepares the order with certainty the funds cannot be reversed.
5. Handoff — minutes later
Manager confirms; a dispatch goes to a courier. The merchant's app records logistics.handoff(merchant → courier); on delivery the courier's app records handoff(courier → customer). Both are sponsored transactions.
6. Release — on delivery
The customer confirms receipt in Eats (or the timeout passes with a delivery record present). escrow.release executes: 12.50 DUSD to the merchant. Finalized ~17 s later. EmpooScan shows the whole chain of events under the order.
Totals
| Transactions | 4 (lock, two handoffs, release) |
| Fees paid by customer | 0 (sponsored) |
| Fees paid by merchant | 0 (sponsored) |
| Total fees, all sponsored | ~0.0001 DMS — a fraction of a cent |
| Time to "payment received" | ~3.5 s |
| Time to irreversibility | ~17 s |
What is real in this story
Every pallet (spec 220). Eoonia's deep-link handoff and extrinsic encoding. The latency figures (May 2026 benchmark). The fee figures (testnet snapshot). The apps. What is not real yet is the sequence itself being run with a real merchant on the live chain — which is the milestone this series is waiting for.
Based on PALLET_REFERENCE.md, PERFORMANCE_REPORT.md, FEE_MODEL_AND_LOW_COST_STRATEGY.md and the Eoonia integration matrix.


