Executive summary
We are replacing Zendesk with Salesforce Service Cloud so support agents work from the same customer, order, subscription, and affiliate records the rest of the company already runs on — with zero sync lag. The design is validated against a full pull of our live ticket history.
What the desk manages
Everything customer-, affiliate-, and applicant-facing — modeled as 3 Case Record Types (by persona), each with its own layout and related data, all carrying a shared picklist spine so analytics and automation are identical across them.
Customer / Subscriber RT
Retail buyers and subscription holders.
- Order history, fulfillment, tracking
- Subscription status & dunning
- Payments, refunds, chargebacks
- Store credit / wallet balance
Affiliate RT
Direct-selling partners (MLM organization).
- Genealogy & placement
- Rank & qualification
- Commissions
- Payout wallet (iPayout)
Program Applicant RT
Team, HCP & Animal Health prospects.
- Application status & eligibility
- HCP license verification
- Wholesale / pricing
The shared spine — on every case
| Field | Purpose / values |
|---|---|
| Topic → Intent | Dependent picklists. Intent is what Einstein predicts, what you trend, and what triggers automation. |
| Request Type | Question · Action · Incident · Complaint/Escalation · Compliance-Legal |
| Severity | Sev 1–4 → drives SLA via Entitlements & Milestones |
| Servicing Mode | Self-serve (online) · Assisted / Offline (agent-managed — see Amish) |
| On-Behalf-Of | Self · For a customer · For an affiliate + Subject Account lookup |
| Money-at-stake | Flag → routes refunds / goodwill / commission adjustments to Chanelle (Max only if absolutely critical) |
| Origin | Email · Web · Chat · WhatsApp · Instagram · Phone · Voicemail · Paper/Mail intake |
Topic → Intent map
| Persona | Topic | Representative intents |
|---|---|---|
| Customer | Order Management | status/WISMO · tracking · change address · modify items · cancel · return/RMA · refund · missing/damaged |
| Subscriptions | skip · reschedule · swap · pause · cancel · reactivate · unexpected renewal · failed payment/dunning · migration | |
| Billing & Payments | declined · duplicate charge · wrong amount · refund status · store-credit/wallet · chargeback · tax · receipt | |
| Product & Usage | product info · how-to-use · suitability · restock · warranty/quality defect | |
| Policy & Account | shipping/return policy · promo · login/access · update info · data/privacy (GDPR) · comm prefs | |
| Affiliate | Compensation | commission calc · missing commission · comp-plan · rank/qualification · volume · bonus |
| Genealogy & Placement | tree move / placement change · sponsor change · downline report · dispute | |
| Payouts & Wallet | payout status · iPayout registration · wallet discrepancy · 1099/tax · failed payout | |
| Affiliate Account | registration · portal login · profile update · active-status · income-claim/compliance · policy | |
| Applicant | Program Enrollment | Team · HCP status + license verification · Animal Health · application follow-up · wholesale · eligibility |
| Cross | Assisted Account Ops | new-account intake · paperwork status · direct-debit setup · manual order · paper sponsor change · catalog request |
| Technical / Defect | storefront bug · portal bug · login/auth error · notification not sent · gateway error · data error | |
| Feedback / Other | suggestion · complaint/escalation · praise · uncategorized (triage) |
The data baseline
11,236 tickets, pulled from the live Zendesk instance, give the implementation team real volumes to size queues, SLAs, and licensing against — and prove where the deflection wins are.
Monthly ticket volume
Where tickets land today
Channel mix
WhatsApp handled off-platform today → net-new channel in Service Cloud.
Deflection opportunity
| Highest-volume actionable intents | Tickets | Best handled by |
|---|---|---|
| Subscription cancel — request | 714 | self-serve tool |
| Order cancellation (pre-fulfilment) | 364 | self-serve tool |
| Checkout / payment issue | 272 | agent + KB |
| Change shipping address | 244 | self-serve tool |
| Refund request | 243 | agent (money) |
| Order status / WISMO | 456 | self-lookup |
| Sponsorship / tree-move request | 214 | self-serve tool |
| Gift-card / store-credit not received | 185 | KB + wallet lookup |
| Can’t login | 140 | KB / self-reset |
| Account delete / data request | 95+ | Compliance-Legal |
Who handles requests
Tickets live with the main support team and are resolved there. Escalation is the exception, not the default — it happens only after support has reviewed a case and needs a specific decision or capability. Chanelle is the tier-2 hub; Leo and Max are reserved for the genuinely critical.
Tiers & people
Support / agents (9) — resolve tickets
Ulashia · Luan · Monique · Inge · Sune · Jolyn · Gerrard · Nick · Sebastiaan
Management / escalation (7) — engaged by exception
Chanelle · Sharon · Janet · Leo · Craig · Heinrich · Max
Escalation ladder — climb only when support can’t resolve it
Queues (Tier-1 topic routing): Order Ops · Subscriptions · Billing & Payments · Product/Policy · Affiliate · Program Enrollment · Assisted Account Ops · Technical/Defect
Heinrich remains the reference for logistics/fulfillment specifics within Order Ops.
The flow
Intake from any channel → auto-classify → route → work with full context → escalate by severity/domain → resolve & close. Money and Compliance cases never auto-close.
Severity → SLA
| Sev 1 | Money moving/at risk or site down — can’t checkout, overcharge, payout failure, outage |
| Sev 2 | Blocked action — subscription won’t cancel, can’t login, order stuck |
| Sev 3 | Standard question / action |
| Sev 4 | Feedback / low |
Enforced by
- Entitlements & Milestones — SLA timers per severity
- Escalation Rules — auto-escalate on breach risk
- Omni-Channel — skill + capacity based routing
- Einstein Case Classification — predict fields, recommend articles
- Flow / Approvals — money-at-stake → Chanelle (Max only if absolutely critical)
Channels
Everything consolidates into Service Cloud. WhatsApp is the priority build — it’s how most affiliates communicate and it isn’t in Zendesk today.
| Channel | Today | Service Cloud target | Priority |
|---|---|---|---|
| Off-platform / manual | Messaging channel (Digital Engagement) | Highest — net-new | |
| Zendesk (56%) | Email-to-Case | Migrate | |
| Web / contact form | Zendesk (9%) | Web-to-Case / Messaging for Web | Migrate |
| Zendesk (2%) | Messaging — Instagram | Migrate | |
| Facebook / Messenger | Zendesk (1.4%) | Messaging — Facebook | Migrate |
| Phone voicemail | Zoom | Case (Origin=Voicemail); CTI TBD | Phase 2 |
| Paper / phone intake | Manual | Agent-keyed Case, Assisted mode | Amish |
What the case must surface
Because these records already live in Salesforce, the case shows them inline — no swivel-chair. Every case opens with an at-a-glance profile of the person so the rep has instant context, with the deeper records one click away.
At-a-glance profile — on every case
Customer — the rep sees
Affiliate — the rep sees
Deeper records — one click from the case
Customer / Subscriber
- Order history — status, tracking, line items
- Subscription — next-bill, frequency, dunning state
- Payments — declines, refunds, chargebacks
- Store credit / wallet — balance & ledger
Affiliate
- Genealogy — sponsor, up/downline & org size
- Rank & qualification — volume (PV/GV)
- Commissions — recent runs & amounts
- Payout wallet — iPayout status & history
Program Applicant
- Application status & eligibility
- HCP license verification state
- Program & pricing tier
Field definitions — so nothing’s ambiguous for the build team
| Customer field | Definition |
|---|---|
| Name | Contact full name |
| Country | Both shipping- and billing-address country, shown side by side |
| Orders | Placed orders in the trailing 12 months, excluding cancelled/failed, incl. subscription orders |
| Total spent | Trailing 12 months amount actually paid, net of refunds, incl. tax & shipping, USD-normalized |
| Time since last order | Days since most recent completed order |
| First order date | Earliest completed order (acquisition date; lifetime) |
| Is affiliate? | True if the person also holds an affiliate account |
| Additional program | HCP / Team / Animal Health enrolment (multi; blank = none) |
| Affiliate field | Definition |
|---|---|
| Name | Affiliate full name |
| Country | Registered country of residence |
| Rank | Both current recognized/paid-as rank and highest ever achieved, side by side |
| Time with company | Since original enrolment date. Not login/credit dates — migrated (Jun 2026) accounts have contaminated ones |
| Additional program | HCP / Team / Animal Health |
| Total commissions | Trailing 12 months commissions earned, USD-normalized — a direct read on economic impact |
| Number of requests | Support cases opened by this affiliate, all-time |
These are the business definitions (the “what”); field types, sources, and layout are for the implementation team to design.
Knowledge base — one base, two front-ends
Yes, Service Cloud handles this natively (Lightning Knowledge). You don’t want two separate systems: author once, tag by audience with Data Categories, and publish to different channels so each portal shows only its own articles — with shared articles appearing in both, no duplication.
Customer KB storefront channel
- Orders & Shipping
- Product & General FAQs
- Getting Started & Account
- Company Policies & Commitments
- Technical Support & Troubleshooting
Affiliate KB back-office channel
- The LactiGo Compensation Plan
- Commissions & Payouts
- Affiliate Program: Policies & Tools
- Affiliate Troubleshooting & FAQs
- Back-Office Dashboard & Reports
Self-serve & automated deflection
The self-serve tools you’re building for subscriptions and tree-moves target the two biggest actionable intents in the whole dataset. Wire them to the desk so a resolved self-serve action closes the loop and an attempted contact gets an automated response first.
714 Subscription self-manage
Cancel/skip/swap/pause in-account. Deflect the #1 actionable intent; auto-respond to inbound “cancel my subscription” with a deep-link to the tool before it becomes a case.
214 Tree-move request tool
Structured self-serve request in the back office (validates eligibility, routes for approval) replaces free-text tickets and captures clean data.
~1,312 Auto-close noise
“Thanks”, acknowledgements, and marketing/newsletter noise (~12%) auto-close with no agent touch — Zendesk already measures this as “automated resolution”.
The agent’s screen
A three-panel console: the queue on the left, the case in the middle with its classified fields and thread, and the live customer/affiliate context on the right — everything an agent needs without leaving the record.
Hi, I need to cancel my monthly LactiGo before it ships again — can you help?
Schematic mockup — illustrates layout & data, not final visual design.
Self-service from the customer & affiliate side
Cases surface inside the Experience Cloud sites you already run: customers see their tickets in their storefront account; affiliates see theirs in the back office. Each portal opens with self-serve options before a “new request” form, so deflection happens at the point of intent.
Customer · storefront (LWR)
My requests
+ New requestAffiliate · back office (Aura)
My tickets
+ New requestLicenses to confirm
Pulled the live entitlement inventory from the prod org (read-only). Two seat gaps to close with our AE — both driven by WhatsApp — and the rest is covered. Numbers below are what’s provisioned; confirm contracted quantities.
| Capability | Needed for | Org shows | Status |
|---|---|---|---|
| Digital Engagement / Messaging | WhatsApp + Instagram + Facebook | 1 seat | Buy ~16 — top gap |
| Service Cloud (Service User) | ~16 agents/managers | 12 seats | ~4 short |
| Salesforce base (agent logins) | up to ~12 new users | 10 free | Reconcile headcount |
| Lightning Knowledge | Two-audience KB authoring | 4 mgr | Covered |
| Einstein for Service | Case classification + article recs | active | Covered |
| Experience Cloud (portals) | Customer + affiliate ticket access | ample | Covered |
| Voice / CTI (Partner Telephony) | Phone & voicemail (Zoom today) | 1 seat | Phase 2 |
| Omni-Channel · Web/Email-to-Case | Routing & standard intake | std | Standard |
Our recommendations
Where we’d steer the implementation, in priority order.
Make WhatsApp a phase-1 deliverable, not a fast-follow
It’s the primary affiliate channel and entirely absent today. Confirm Digital Engagement licensing immediately — it’s the longest pole and the highest-value channel.
Ship auto-classification on day one
68% of tickets are untriaged today. Einstein Case Classification against your existing 110-value intent history means the model can predict Topic/Intent from go-live — don’t launch with manual tagging.
Wire self-serve tools into the deflection funnel
Your subscription + tree-move tools cover the two biggest actionable intents (928 combined). Connect them to the contact form and automated first-responses so they deflect before a case is created.
Model persona as Record Type, keep intelligence in shared picklists
Separate layouts for Customer/Affiliate/Applicant give clean context and auth; a shared Topic→Intent spine keeps analytics and automation uniform. Best of both.
Stand up a sentiment / service-recovery dashboard
~26% of tickets are negative-or-worse. A native dashboard on sentiment + money-at-stake + Sev-1 backlog turns support data into a retention signal.
Plan a parallel-run cutover from Zendesk
Import historical tickets + the 62 KB articles, run both in parallel briefly, then cut channels over one at a time (email first, messaging last). We’ll generate the import files from the extract on request.