YHL · Agent Group-Buy OS
Framework & Solution Proposal · Sales-Agent Group-Buy Platform · for YHL Foods

Turn your WhatsApp group-buy
into an agent network.

A platform where each sales agent has an account, you set their commission, and they run their own customers — built on the stack you already have.

Model 团长 group-buy host · single-tier commission MVP Shopify + agent app · live in days Then a native orchestration layer Markets SG + MY
00 The solution, in one screen

Buy the commodity layers. Build the one part nobody sells.

Every piece of this model is already proven in Singapore & Malaysia — 团长 agents, WhatsApp seafood selling, pre-order cold-chain, PayNow links, refrigerated last-mile. Nobody has stitched them into one per-agent, commission-accruing, MOQ-aware loop. That orchestration layer is the product worth building — and you can start selling through agents this week without it.

RECOMMENDATIONBuy → then Build

Phase 1 (days): keep the Shopify store you're already planning and bolt on GoAffPro — agent accounts, per-agent commission you set, a white-label agent portal, coupon-code attribution (survives WhatsApp), commission approved on delivery, not payment. Bridge "the host keys in the group order" with Shopify Draft Orders tagged by agent. Phase 2: build a native Agent Group-Buy OS into your platform — the drop → MOQ-tally → cut-off → cold-chain → commission loop — unified with your existing ad_id → order → ROAS chain, where an agent is simply another attribution source. Keep it single-tier (legal), and never charge agents to join.

5–10%
Typical SG group-buy host commission per sale (per-product for premium seafood).
US$58M
WeBuy Global (NASDAQ: WBUY) FY24 revenue — the SEA proof this platformises: ~3,000 leaders, 100k consumers.
5–10hrs/mo
Time a host wastes on payment follow-up today — the #1 reason agents switch to a platform.
1
Single-tier only. SG's MLM & Pyramid Selling Act bans multi-level structures broadly — no sub-agent overrides.

What the platform gives each agent

  • Their own account + storefront/link + coupon code — every order they drive carries their agent_id.
  • A mini-CRM — their customers, their orders + status, their commission earned / pending / paid.
  • One-tap "share to my group" — a deal card + order link straight into their WhatsApp group.
  • Auto-payout — PayNow/DuitNow once commission is approved past the freshness window.

What you (the brand) control

  • Set each agent's commission — global, per-agent, or per-product (premium SKUs pay richer).
  • Publish "drops" — a deal with price, zones, run-date, order cut-off, and MOQ per zone.
  • Fixed brand pricing — protects the premium; no agent price wars.
  • Full attribution + quality signal — which agent/zone/run drove each order (and any DOA).
01 Why this is the right shape

The model is validated in pieces. The gap is the glue.

Your current channel — SG group-buy WhatsApp groups — is the 团长 (community-host) model. It works, but it leaks on the three things a platform fixes: manual tallying, payment reconciliation, and zero attribution.

The engine

The 团长 host

A trusted local person aggregates neighbours' orders into one bulk order, earns 5–10% (SG), and does the last-mile handoff from a pickup point. This collapses delivery cost and outsources trust + customer service to the host — it's why group-buy is economically viable.

The proof

WeBuy Global

NASDAQ-listed (WBUY), ~3,000 community leaders / 100k consumers across SG/MY/ID, US$58.3M FY24 revenue, first profit Q4-24. They literally learned to pack prawns at Jurong Fish Port. The template exists — and it sells fresh seafood.

The gap

Nobody stitched it

No off-the-shelf tool does the whole loop: agent accounts + live MOQ tally per zone + per-order payment + cut-off + cold-chain slot + commission accrual. It's stitched from an order form + a payment link + a WhatsApp inbox + a courier. The orchestration is the product.

The three leaks your platform plugs

1 · Manual tally — hosts read free-text chat into a spreadsheet; it breaks past ~30–50 orders. 2 · Payment reconciliation — hosts spend 5–10 hrs/month matching PayNow screenshots to orders (the emotional toll of chasing friends for money). 3 · No attribution — a chat order has no link back to the agent who drove it, so commission is estimated, not measured. Your agent-account model fixes all three by design: every order carries an agent_id.

02 The commercial model

Single-tier host commission, per-product, legal-safe.

Pick the model that maps to how your agents already work, pays richer on your premium lines, and stays firmly on the right side of SG/MY anti-pyramid law.

ModelHow the agent earnsUse for YHL?Typical rate
Group-buy host commission (团长)% of the group order they rally in their WhatsApp groupCore matches your channel exactlySG 5–10%
Per-product / per-category %Higher % on premium SKUs (grouper, big prawns), lower on commodity/frozenLayer on protects margin on thin lines3–15%
Tiered by volume (3 tiers)Rate rises as the agent crosses monthly sales thresholdsPhase 2 reward top hostsBronze→Gold
Reseller markupAgent buys at a dealer price, sells at their own price, keeps the spreadOptional only if agents want price autonomyagent-set
2-tier / sub-agent overrideEarn on a recruited sub-agent's salesAvoid MLM-law risk in SG & MY
The recommended structure

Start with a flat host commission + per-product overrides — e.g. a base 8%, with premium grouper/large-prawn combos at 10% and frozen/commodity lines at 5%. All single-tier (agent earns only on their own sales). Add 3 volume tiers later to reward your best hosts. This is ordinary distribution/agency — not caught by anti-pyramid law — and it keeps your premium pricing intact.

03 The end-to-end flow

From your "drop" to the agent's commission.

The atomic unit is a drop: a deal defined by SKUs, price, agent commission, eligible zones, a run-date, an order cut-off, and a minimum order quantity (MOQ) per zone. Everything hangs off it.

1
Brand · you

Publish the drop

Define the deal and open the order book.

drop = {SKUs, price, commission %, zones, run-date, cut-off, MOQ/zone}
2
Agent · 团长

Share to their WhatsApp group

One tap broadcasts a deal card + an order link that carries their agent_id.

3
Customer

Order in the group

Via the agent's link / catalog / a host-tallied form — name, SKU, qty, zone, phone.

every order stamped → agent_id + zone
Orchestration layer · the product

Tally · pay · close · accrue

Live MOQ progress bar per zone ("3 more to unlock free delivery") · per-order PayNow/HitPay link auto-reconciled · cut-off timer closes the book → MOQ met? confirm : roll/refund · commission accrues to the agent automatically.

4
Brand fulfilment

Consolidate + cold-chain run

Pack paid orders on ice → one refrigerated run per zone (Lalamove refrigerated / DD Cold Chain) → auto-generate the agent's pick-list.

5
Agent

Pickup-point handoff

Hosts hand off to their customers. Any DOA/freshness claim (photo, 2–24h) is tied to order + agent + run.

6
Settlement

Commission released

Once delivery is confirmed and the freshness window closes, commission moves pending → approved → paid via PayNow/DuitNow. The agent sees it all in their dashboard.

The moat

Because every order carries agent_id → drop → run, you get correct commission, agent leaderboards, cohort reorder data, and per-agent/zone cold-chain quality — none of which the incumbent WhatsApp-chat operators can see. Attribution isn't a feature; it's the compounding advantage.

04 The three surfaces

Admin, Agent, Customer.

Surface 1

Admin console — you

  • Onboard / approve agents (agreement + PayNow details)
  • Set commission — global · per-agent · per-product
  • Create drops (price, zones, run-date, cut-off, MOQ)
  • Live order book + MOQ tally per zone
  • Fulfilment: consolidated pick/pack lists + courier runs
  • Commission ledger + payout runs + statements
  • Agent leaderboard · DOA/quality by agent/zone/run
Surface 2

Agent portal — the 团长

  • My link · coupon code · QR · mini-storefront
  • My customers (their group members) + order history
  • My orders + status (pending/paid/fulfilled/refunded)
  • Commission earned / pending / approved / paid
  • Payout history + request payout
  • Marketing assets: deal cards, price lists, WA copy
  • Order-on-behalf entry (host tallies the group order)
Surface 3

Customer buy-flow

  • Tap the agent's link / deal card in the WhatsApp group
  • Order (SKU, qty, zone) — attributed to the agent
  • See the live "X more to unlock" MOQ bar
  • Pay via PayNow/HitPay link — instant confirmation
  • Pickup slot / zone delivery info
  • Freshness guarantee + one-tap DOA claim
  • Reorder prompt on the next drop
05 The commission engine

Built for a perishable, not a t-shirt.

The one non-obvious rule that saves you from clawback chaos: with live seafood, DOA and substitution refunds are common — so commission must be held until the product is safely delivered.

The commission lifecycle

  • Accrue — created when an order is attributed & paid (status: pending).
  • Hold — stays pending through the delivery + freshness window (not on payment).
  • Clawback — voided on DOA / refund / cancel.
  • Approve — released once the run is delivered & window closes; booked as expense here (so refunds never hit P&L).
  • Pay — accumulate to a min threshold (e.g. S$50), pay monthly via PayNow/DuitNow with a per-agent statement.
Attribution — what actually survives WhatsApp

Raw wa.me links carry no referrer, so link cookies die inside chat. The durable primitives, in order: (1) per-agent coupon code (survives copy-paste, doubles as the customer's discount), (2) host order-entry (matches how 团长 already tally), (3) a fronted WhatsApp deep-link — your own short-link that stamps agent_id before forwarding to wa.me.

Auto-split option (Phase 2)

Use Stripe Connect to split commission to the agent at payment time and keep buyer/agent/brand order-states webhook-synced — turning reconciliation into a non-event.

06 Build vs buy — the platform decision

Two categories of tool. You need both — in sequence.

"Agent commission" tools split into affiliate/referral engines (agent gets a link/code, customer buys at your price) and agent/reseller systems (agent sets price, keys in orders). Buy the first now; build toward the second.

OptionAgent + commissionFit for YHLCostVerdict
Shopify + GoAffProUnlimited agents, per-agent rates, white-label portal, link+codeStays on your stack; single-tier; commission-on-fulfilment configurable; no revenue cutFree → $49/moPhase 1 pick
Shopify + UpPromoteLink+coupon+customer, tiers, PayPal/Wise payoutPolished, but order caps (200–600/mo) + ~2% of referral sales$0–70/mo +2%Alt
EasyStore (Referral + Wholesale)Native per-agent rate + a true reseller portalClosest all-in-one — but means leaving ShopifyRM499–899/moOnly if re-platforming
SHOPLINE (KOL Group-Buying)Purpose-built group-buy-leader moduleThe most on-point off-shelf 团长 tooling — but off-ShopifyquoteWatch
Webspert / Firesell / SiteGiant (MY)Multi-tier / downline commission, agent storefrontsFeature-rich but multi-level = MY AJL-licence risk + overkillquoteAvoid
WhatsApp BSPs (SleekFlow/WATI/360dialog)Inbox/broadcast/catalog — no commission engineThe routing layer you already have in Chatwoot/WABA€49+/moChannel only
Native Agent Group-Buy OSDrop → MOQ tally → cut-off → cold-chain → commission ledgerThe orchestration nobody sells; unified with your ad_id→order→ROAS chainbuildPhase 2 build
Why not just buy forever?

Off-shelf apps can't do the two things your model actually needs at scale: let a host key in a group order on a customer's behalf, and run perishable settlement rules (per-zone cut-offs, MOQ, weight-variance pricing for whole grouper, DOA credits). Bridge order-entry now with Shopify Draft Orders tagged by agent; build the native module when order-entry + perishable settlement — not attribution — become the real work.

08 The roadmap

Selling through agents this week; a real platform by quarter's end.

Phase 0 — Prove it
Week 1

Manual, but attributed

  • Onboard 5–10 existing WhatsApp hosts; sign a simple agent agreement.
  • Give each a unique coupon code = their attribution + their customer discount.
  • Run one drop with a shared order form; commission tracked in a sheet.
  • Goal: prove agents will sell + the code attribution holds.
Phase 1 — Buy the MVP
Weeks 2–4

Shopify + GoAffPro

  • Agent accounts + white-label portal on agents.yhl…; set per-agent/per-product commission.
  • Coupon-code attribution; commission approved on fulfilment + holdback.
  • Order-on-behalf via Draft Orders tagged by agent; PayNow via HitPay links.
  • Cold-chain run per zone (Lalamove refrigerated / DD Cold Chain).
  • Goal: 20–50 agents live, payouts running, real commission data.
Phase 2 — Build the OS
Quarter 2+

Native Agent Group-Buy OS

  • Drop as the atomic unit; live MOQ tally per zone; cut-off engine.
  • Agent order-entry screen + real mini-CRM; auto payment-split (Stripe Connect).
  • Perishable settlement (zone cut-offs, weight-variance, DOA credits).
  • Unified with your ad_id → order → ROAS ledger — agent = another attribution source in one dashboard.
  • Trigger to build: when order-entry + settlement, not attribution, are the bottleneck.
How it plugs into what you already have

You're already standing up Shopify + WhatsApp (Chatwoot/WABA) + Meta ads with an ad_id → order → CAPI → ROAS attribution chain. The agent layer is the same pattern: agent_id is just another attribution source stamped on the order. Reuse the store, the WhatsApp routing, and the ledger — the only genuinely new build is the drop/MOQ/cold-chain orchestration. This is a channel extension, not a second system.