Fresh milk
1 litre - Rs 220
Local dairy route - Available today
Functional customer-shop demo
Try the loop: customer builds a basket, sends inquiry, shop responds, customer accepts an order draft. Payment, inventory, ledger, dispatch, and settlement stay locked.
Current state
Basket draft
Customer is selecting products. No inquiry, order, payment, or reservation exists.
Demo guard
It now attempts backend contract packets first. If API/auth is unavailable, it falls back to demo-only screen state. It never charges money, reserves stock, dispatches a rider, or posts a ledger.
Runtime proof
FAEDA is checking API, database, seed records, and browser session before trusting persisted contract packets.
Checking runtime readiness.
API
not ready
DB
not ready
Seed
missing
Session
login needed
Local QA personas
These buttons only create a browser test session from seeded demo accounts. They do not create payment, wallet, stock, dispatch, ledger, or payout authority.
Shop selected
Mohallah Noor, Chiniot
FAEDA reviewed demo shop
Replies in 8 minutes
Pickup + local rider
Flow tracker
1
Basket
2
Inquiry
3
Response
4
Draft
5
Gates
Customer basket
Fresh milk
1 litre - Rs 220
Local dairy route - Available today
Atta
5 kg bag - Rs 980
Wholesaler stock - Limited
Eggs
12 pack - Rs 410
Poultry supplier - Available today
Basmati rice
5 kg bag - Rs 1,850
Mill linked - Ask shop
Delivery preference
Basket summary
3 item types. Delivery fee: Rs 120. Quote total after shop response: Rs 1,730.
Backend contract packets
These are contract packets, not final runtime records. Fallback means the local demo continued because API/auth was unavailable.
Next locked gates
The correct runtime chain is reservation gate, partner payment intent, dispatch plan, proof, statement, and support ticket. Contract packets do not replace those gates.