Walk through TradePlus end-to-end
Start with the orientation block below if the names CRC and Osotspa haven't fully clicked yet — it shows who's who and how the money moves. After that, eight numbered steps walk through one real agreement end-to-end. Each Open this button switches the sidebar role for you, then deep-links into the live page.
The two parties in every trade-promotion deal
TradePlus sits between two players: a giant retailer and the brands that fill its shelves. Everything below is about money flowing between these two, and the tool that keeps the books on it.
| Name in the story | What they actually are | Role in the deal |
|---|---|---|
| CRC | Central Retail Corporation. Owns Tops, Central Food Hall, Thai Watsadu. | Retailer · your client |
| Osotspa, Unilever, Coca-Cola, P&G… | The brand makers. Osotspa makes M-150. Unilever makes Sunsilk. | Supplier · the brand |
| Shopper | You and me, walking into Tops. | End customer |
| TradePlus | The product Inline One is building for CRC. | The tool |
Why the word "buy" gets confusing
Money moves between CRC and a supplier in two completely separate streams. The wholesale stream is handled by other systems. TradePlus only tracks the second one.
Estimated leakage at large Asian retailers: 5–15% of Flow-2 money goes uncollected every year because no one filed the claim. For CRC that's hundreds of millions of baht — and the dashboard's leakage panel is built to surface exactly that.
Five people inside CRC, plus the supplier on the other side
The role switcher in the sidebar lets one demo user "play" any of these. In real CRC, each is a different team.
- Buyerat CRC
- A category buyer. Procurement officer at CRC who negotiates the deal with the supplier. Signs the agreement on CRC's side. Not a shopper. Not the supplier.
- Store Opsat CRC
- A CRC field auditor or store associate. Walks Tops stores, photographs the display, uploads the proof.
- Financeat CRC
- CRC's accounts-receivable team. Calculates the claim, generates the debit note, chases settlement.
- Commercial Directorat CRC
- Senior CRC executive. Watches the dashboard. Cares about totals, leakage, and disputes open.
- Supplierat the brand
- Someone at Osotspa, Unilever, or P&G — the supplier's own sales or finance team. Sees the same evidence CRC sees, can dispute a claim inline.
Thai Union Frozen Products pays CRC ฿355 per store per day to keep Sealect End-Cap Display — Songkran in 7 stores from 01 May to 31 Aug 2026.
Total committed ฿305,655. CRC's deal: prove the display existed, claim the money, issue a debit note, settle. Thai Union Frozen Products can dispute. Below, you'll trace this one agreement from creation to dispute through five role lenses.
The leakage hook
Dashboard lands with KPIs and a live leakage report — volume rebates already earned but not yet claimed. This is the "money on the table" moment that opens every demo.
| Supplier | Agreement | Volume snapshot | Tier | Potential claim |
|---|---|---|---|---|
| Boon Rawd Brewery | AGR-BOO-001-0048 | ฿56,400,000 | 2.25% | ฿1,269,000 |
| Nestlé Thailand | AGR-NES-TH-0013 | ฿56,256,000 | 2.25% | ฿1,265,760 |
| Thai Beverage Public Co. | AGR-THB-001-0018 | ฿51,312,000 | 2.25% | ฿1,154,520 |
| Charoen Pokphand Foods | AGR-CPF-001-0026 | ฿46,656,000 | 2.25% | ฿1,049,760 |
Inspect the agreement
Status, period, committed THB, claim window, fee structure, brands covered, and the full store list — each store carrying a verified/pending chip from its execution row.
- Daily rate per store
- ฿355
- Stores in scope
- 7
- Duration
- 123 days
- Display spec
- End-cap gondola with branded header card
- Claim window
- 30 days
- VAT
- 7% applicable
- Tops Bang Kapi Bangkok
- Tops Bangna Bangkok
- Tops Chiang Mai Airport Chiang Mai
- Tops Chiang Mai Festival Chiang Mai
- Tops Lat Phrao Bangkok
- Tops Onnut Bangkok
- Tops Phrom Phong Bangkok
Proof-of-execution photos
Each photo is geo-matched against the store and assessed by Claude Vision in plain English. One row below scored low — the kind of partial-stocking finding that excludes a store from the claim.
| Date | Store | GPS | AI assessment | Status |
|---|---|---|---|---|
| 11 May 2026 | Tops Phrom Phong | match |
98%
Verified — photo shows a Sealect end-cap display at Tops Phrom Phong. Branded header card visible, product facings match agreement spec. Confidence 0.98.
|
verified |
| 13 May 2026 | Tops Onnut | match |
97%
Verified — photo shows a Sealect end-cap display at Tops Onnut. Branded header card visible, product facings match agreement spec. Confidence 0.97.
|
verified |
| 18 Jun 2026 | Tops Bangna | match |
89%
Verified — photo shows a Sealect end-cap display at Tops Bangna. Branded header card visible, product facings match agreement spec. Confidence 0.89.
|
verified |
| 24 Jun 2026 | Tops Bang Kapi | match |
93%
Verified — photo shows a Sealect end-cap display at Tops Bang Kapi. Branded header card visible, product facings match agreement spec. Confidence 0.93.
|
verified |
| 11 Jul 2026 | Tops Chiang Mai Airport | match |
85%
Verified — photo shows a Sealect end-cap display at Tops Chiang Mai Airport. Branded header card visible, product facings match agreement spec. Confidence 0.85.
|
verified |
The auto-calculated claim
Every input is frozen on the claim row, the formula is in plain English, and the breakdown table shows every store that contributed (or didn't).
- Amount
- ฿261,990
- VAT 7%
- ฿18,339
- Total
- ฿280,329
verified stores (6 of 7) × days (123) × daily rate (THB 355) = THB 261,990
Thai-compliant debit note PDF
Sequential note number. CRC + supplier tax IDs. 7% VAT separated. Amount in Thai words. Bilingual layout. Ready to file.
- Note number
- DN-2026-000025
- Issue date
- 06 Sep 2026
- Total
- ฿280,329
- Linked claim
- CLM-2605-00042
- Reason
- Trade promotion claim: Display Allowance — May 2026
The other side of the table
Same database. Filtered to this supplier. They see every agreement CRC has on them, every claim filed, and every debit note issued.
| Code | Type | Status | Period | Committed |
|---|---|---|---|---|
| AGR-TUF-001-0057 | Slotting Fee | active | 01 Aug → 30 Nov 2026 | ฿1,579,168 |
| AGR-TUF-001-0055 | Display Allowance | active | 01 May → 31 Aug 2026 | ฿305,655 |
| AGR-TUF-001-0056 | Volume Rebate | active | 01 May → 30 Sep 2026 | ฿1,994,077 |
| AGR-TUF-001-0058 | Co-op Advertising | expired | 01 Dec → 31 Jan 2026 | ฿4,237,827 |
The supplier disputes inline
Same proof photos. Same formula. Same breakdown. The dispute is a note attached to the claim — no email tennis.
Our records show 14 compliant stores, not 15. The Chiang Rai store was closed for renovation during week 2 of the period.
Curl from the terminal
CRC's dev team can hit any endpoint from their desk during the meeting. No credentials, no SSO, no provisioning. Production hardening is the next milestone.
curl -sS -X POST http://127.0.0.1:8088/api/v0/claims/generate \
-H 'Content-Type: application/json' \
-d '{"agreement_id":"4147ff89-62ad-43e2-aede-333fd1081f0e",
"period_start":"2026-05-01",
"period_end":"2026-08-31"}' | jq
curl -sS http://127.0.0.1:8088/api/v0/analytics/leakage | jq
curl -sS -X POST http://127.0.0.1:8088/api/v0/session/reset
Seven moments the demo is built around
- 01 Leakage hook lands on first paint — real THB-denominated unclaimed rebates before you say anything.
- 02 Role switch re-renders the same data four ways. Same DB, no logins; the UX is the demo signature.
- 03 AI photo validation reads as plain English — not just a confidence number.
- 04 Formula is plain English; inputs are frozen; breakdown is per-store. Every baht is auditable.
- 05 Debit note PDF in <3s with Thai script and Thai-words amount, ready to file under Thai Revenue Code.
- 06 Supplier sees the same evidence. Disputes are inline and instant.
- 07 Open API. curl from a terminal returns identical structured data — your dev team can poke it during the meeting.