# Distributor Partner Program — Admin SOP

Internal standard operating procedure for manually managing Live Prawn distributor partners.

**Audience:** Admin / operations staff  
**Related docs:** `docs/distributor-partner-program-phase-1.md`  
**Last updated:** 2026-07-07

---

## 1. Program status

| Item | Current state |
|------|---------------|
| **Operating model** | Manual / admin-controlled only |
| **Public self-signup** | **Not available** — do not direct customers to self-activate |
| **Activation products** | Remain **disabled** (`distributor-starter-activation`, `distributor-master-activation`) |
| **CMS page** | Remains **inactive** (`distributor-partner-program`, page ID 60) |
| **Menu link** | **Not added** — do not add without Kenny approval |
| **Welcome credit redemption** | **Manual** — no automatic checkout redemption |
| **Growth rewards** | **Manual** — no automatic monthly issuance |

This program is not for public self-signup. All enrollments require internal review and manual group assignment in Magento Admin.

---

## 2. Distributor tiers

### Starter Distributor

| Field | Value |
|-------|-------|
| **Magento group** | Starter Distributor |
| **Group ID** | **11** |
| **Joining fee** | RM500 |
| **Welcome credit** | RM500 |
| **Credit usage cap** | Up to **3%** of order value per order |
| **Minimum order** | **50kg** |
| **Allowed customers** | End users only |

**Credit cap example:** RM1,000 order → maximum RM30 welcome credit usable (when credit redemption is eventually automated; manual for now).

**Growth rewards (monthly completed volume):**

| Volume | Reward |
|--------|--------|
| 300kg/month | Free 3kg prawn |
| 550kg/month | Free 6kg prawn |
| 1,000kg/month | Free 10kg prawn |

---

### Master Distributor

| Field | Value |
|-------|-------|
| **Magento group** | Master Distributor |
| **Group ID** | **12** |
| **Joining fee** | RM1,500 |
| **Welcome credit** | RM1,650 |
| **Credit usage cap** | Up to **5%** of order value per order |
| **Minimum order** | **200kg** |
| **Allowed customers** | Restaurants and end users |

**Credit cap example:** RM1,000 order → maximum RM50 welcome credit usable (when credit redemption is eventually automated; manual for now).

**Growth rewards (monthly completed volume):**

| Volume | Reward |
|--------|--------|
| 300kg/month | Free 4kg prawn |
| 550kg/month | Free 7kg prawn |
| 1,000kg/month | Free 12kg prawn |

---

**Important:** Welcome credit is **non-cash** and offsets future purchases only. It is **not** a standing catalog price discount. Credit caps apply per order, not as a permanent product discount.

---

## 3. Manual onboarding SOP

Use this checklist for every new distributor partner.

### Step 1 — Receive application or internal approval

- [ ] Application received (form, email, WhatsApp, or internal referral)
- [ ] Kenny or authorised approver confirms tier: **Starter** or **Master**
- [ ] Applicant meets basic fit (volume intent, channel, terms accepted)

### Step 2 — Check customer account exists

- [ ] Customer has a Magento account (email verified)
- [ ] If no account: create customer in **Admin → Customers → All Customers → Add New Customer**
- [ ] Confirm customer is not already in Starter (11) or Master (12) unless upgrading with approval

### Step 3 — Confirm payment manually

- [ ] Joining fee received: **RM500** (Starter) or **RM1,500** (Master)
- [ ] Payment method recorded (bank transfer, invoice, etc.)
- [ ] Payment reference saved in internal records
- [ ] **Do not** enable activation products or rely on storefront checkout for joining fee

### Step 4 — Assign customer group in Magento Admin

1. Go to **Customers → All Customers**
2. Open the customer record
3. Edit **Group**:
   - **Starter Distributor** (ID **11**), or
   - **Master Distributor** (ID **12**)
4. Save customer

### Step 5 — Record welcome credit manually

Until a credit ledger exists, record in **admin customer notes** and/or **internal spreadsheet**:

| Field | Starter | Master |
|-------|---------|--------|
| Welcome credit balance | RM500 | RM1,650 |
| Credit usage cap | 3% per order | 5% per order |
| Activation date | (date) | (date) |
| Payment reference | (ref) | (ref) |

### Step 6 — Inform customer of rules manually

Send approved summary covering:

- Assigned tier (Starter or Master)
- Minimum order (50kg / 200kg)
- Who they may sell to (end users only / restaurants + end users)
- Welcome credit amount and per-order usage cap (3% / 5%)
- Growth reward tiers (manual review at month end)
- Contact for orders and support

---

## 4. Manual order rules

Apply these rules when processing or approving distributor orders until automation exists.

### Minimum order

| Tier | Minimum |
|------|---------|
| Starter Distributor (11) | **50kg** total per order |
| Master Distributor (12) | **200kg** total per order |

**Kg calculation:** Sum line-item quantities on prawn products (qty = kg unless otherwise specified). Reject or hold orders below minimum.

### Allowed selling channels

| Tier | Allowed |
|------|---------|
| Starter (11) | **End users only** — not for restaurant B2B accounts |
| Master (12) | **Restaurants and end users** |

If a Starter distributor places an order clearly intended for restaurant resale, escalate to admin before fulfilling.

### Welcome credit (manual control)

- Credit is **not automatically applied** at checkout
- Admin decides whether to apply credit on a specific order
- Respect per-order cap:
  - Starter: max **3%** of order value
  - Master: max **5%** of order value
- Deduct applied amount from spreadsheet / notes balance
- **Do not** enable automatic credit redemption without Kenny approval

### Pricing

- Distributor catalog pricing (if any tier prices apply) is separate from welcome credit
- Welcome credit reduces payable amount — it is not the same as a product discount
- Do not change prawn product base/tier prices without separate pricing approval

---

## 5. Monthly growth reward SOP

Run at **month end** (or first working day of new month) for each active distributor.

### Step 1 — Export / review completed orders

- [ ] Filter orders for customer in group **11** or **12**
- [ ] Include only **completed** orders for the calendar month
- [ ] Export order lines with SKU and qty (kg)

### Step 2 — Calculate total kg purchased

- [ ] Sum qty across eligible prawn SKUs for the month
- [ ] Record total kg in internal tracker

### Step 3 — Compare with target tiers

| Tier | 300kg | 550kg | 1,000kg |
|------|-------|-------|---------|
| Starter (11) | 3kg free prawn | 6kg free prawn | 10kg free prawn |
| Master (12) | 4kg free prawn | 7kg free prawn | 12kg free prawn |

- Highest eligible tier only (confirm rule with Kenny if stacking is ever requested)
- Partial months: pro-rata only if Kenny approves — default is full-month threshold

### Step 4 — Admin decides eligibility

- [ ] Verify no cancelled/refunded volume inflating totals
- [ ] Confirm account in good standing
- [ ] Approver signs off on reward tier

### Step 5 — Issue free prawn reward manually

- [ ] Create manual order, credit memo adjustment, or delivery arrangement per ops process
- [ ] Note SKU/size/species for free kg reward
- [ ] Confirm customer notified

### Step 6 — Record reward manually

Log in spreadsheet / customer notes:

- Month (YYYY-MM)
- Total kg achieved
- Reward tier hit
- Free kg issued
- Date issued
- Issued by (admin name)

---

## 6. What not to do

| Action | Reason |
|--------|--------|
| **Do not enable** activation products (109, 110) | No public checkout activation |
| **Do not enable** distributor CMS page (60) | Not approved for public marketing unless Kenny says otherwise |
| **Do not add** menu link to distributor page | Keeps program admin-only |
| **Do not build or promote** public signup | Manual review required |
| **Do not automate** checkout credit redemption | Not approved; manual control only |
| **Do not automate** growth rewards without approval | Manual month-end process for now |
| **Do not assign** Distribution group (4) for new partners | Use 11 or 12 only |
| **Do not modify** Restaurant Credit Terms products (106–108) | Separate program |
| **Do not change** prawn catalog prices ad hoc | Separate pricing approval |

---

## 7. Future automation backlog

These items require **separate Kenny approval** before build or go-live:

1. **Admin distributor dashboard** — list enrollments, tier, status
2. **Welcome credit ledger** — balance, earn, redeem, audit trail
3. **Manual credit approval tool** — admin applies credit with 3%/5% cap enforcement
4. **Monthly kg report** — auto-aggregate completed order volume by distributor
5. **Growth reward queue** — pending rewards for admin approve/issue
6. **Restaurant assignment link (Master only)** — tie Master distributors to restaurant accounts they introduce

Until these are built, continue using this SOP and manual records.

---

## 8. Condo group-buy commission (Phase 1)

When a distributor introduces a condo for group-buy, assign the distributor on the **Condo Group** record.

### Assign distributor to condo

1. Go to **Live Prawn → Condo Group Buy → Condo Groups → Edit**
2. Open fieldset **Distributor Assignment**
3. Enter **Assigned Distributor Customer ID** (customer must be group **11** or **12**)
4. Set **Commission Active** = Active
5. Add **Commission Note** if needed (e.g. intro date, agreement ref)
6. Save — tier auto-sets: group 11 → Starter, group 12 → Master

### View commission report

1. Go to **Live Prawn → Condo Group Buy → Distributor Condo Commission**
2. Filter by distributor, condo, batch, or date range
3. Review line commission (product price only; shipping excluded)
4. **Export CSV** for manual payout tracking outside Magento

### Commission formula (condo)

```
line commission = max(0, customer item price - Distribution group 4 tier price) × qty
```

Base price uses **Distribution group ID 4** tier price for both Starter and Master in Phase 1.

### Included orders

- Condo group-buy orders with status **processing** or **complete** only
- Condo must have **Commission Active** and assigned distributor

### Important warning

> **Do not change distributor assignment mid-batch unless previous payout for that batch is already settled.**

The report uses the condo’s **current** assignment — not a snapshot at order time.

**Full spec:** `docs/distributor-condo-commission-plan.md`

---

## Quick reference

| Resource | ID / path |
|----------|-----------|
| Starter Distributor group | **11** |
| Master Distributor group | **12** |
| Starter activation product | `distributor-starter-activation` (ID **109**, disabled) |
| Master activation product | `distributor-master-activation` (ID **110**, disabled) |
| CMS page (inactive) | `distributor-partner-program` (ID **60**) |
| Phase 1 deploy log | `var/log/liveprawn-distributor-phase1.json` |
| Program documentation | `docs/distributor-partner-program-phase-1.md` |
| Condo commission plan | `docs/distributor-condo-commission-plan.md` |
| Admin commission report | Live Prawn → Condo Group Buy → Distributor Condo Commission |

---

*See `docs/distributor-condo-commission-plan.md` for condo commission Phase 1.*
