AA ZWIS • CS Training Materials

Customer Service Flow Diagrams

Escalation, Classification, Resolution & Closure Procedures
📄 Version 2.3 📅 Review: Monthly 🔒 Confidential 👥 CS Team + App Support + Dev Team
1

Escalation Procedure (Core Flow)

The main path every ticket follows, from inbound call to closure. Shows the three-tier escalation spine.

flowchart TD
    START(("📞 Inbound Call
/ Ticket Received")) START --> LOG["Step 1 — Log Ticket
Capture: Caller, Contractor,
Issue, Screenshots"] LOG --> SEV["Step 2 — Classify Severity
(See Severity Guide)"] SEV --> P1CHECK{"Is this P1 Critical?
(System down / All users)"} P1CHECK -->|"Yes 🔴"| IMMEDIATE["⚠️ Skip L1 — Escalate Immediately
Call L2 On-Call by phone"] IMMEDIATE -.->|🔔 Notify| L3_PM L3_PM["L3 — PM (Keep Informed)
Notified on P1 / all escalations"] P1CHECK -->|"No"| L1_TRY["Step 3 — L1 Resolution Attempt
· Use Support Tools (NotebookLM / FAQ)
· Apply standard troubleshooting
· Max 15 minutes"] L1_TRY --> L1_DONE{"Resolved
within 15 min?"} L1_DONE -->|"Yes ✅"| CLOSE_L1["Close Ticket
(See Close Procedure)"] L1_DONE -->|"No"| ESC_L2["📤 Step 4 — Escalate to L2
Transfer ticket with full notes"] IMMEDIATE --> L2_P1 ESC_L2 --> L2_STD L2_P1["L2 — Technical/Infra Lead
Investigates & applies fix"] L2_P1 --> L2_P1_CHECK{"L2 resolved?"} L2_P1_CHECK -->|"Yes ✅"| CLOSE_P1["Close Ticket
(See Close Procedure)"] L2_P1_CHECK -->|"No — Require HKT support"| NOTIFY_PM1["🔔 L3 — Notify PM"] NOTIFY_PM1 --> ESC_AA1["📤 Step 5 — PM Escalate to Management (AA)
AA Escalation / Infra-related contact point"] ESC_AA1 --> CLOSE_P1 L2_STD["L2 — Technical/Infra Lead
Investigates"] L2_STD --> L2_STD_CHECK{"L2 resolved?"} L2_STD_CHECK -->|"Yes ✅"| TEMP_FIX["Update ticket to
Temp fixed"] TEMP_FIX -.->|Notify| L3_STD["L3 — PM (Keep Informed)
Deployment Request to AA"] L3_STD -->|Deployment approval from AA| L2_DEPLOY["L2 — Technical/Infra Lead
Production deployed"] L2_DEPLOY --> CLOSE_STD["Close Ticket
(See Close Procedure)"] L2_STD_CHECK -->|"No"| ESC_MGMT["📤 Step 5 — Escalate to Management"] ESC_MGMT --> MGMT["Management
Authorise additional resources
Stakeholder liaison"] MGMT --> L2_STD_CHECK CLOSE_L1 --> END(("✅ Done")) CLOSE_P1 --> END CLOSE_STD --> END style START fill:#1B3A5C,stroke:#1B3A5C,color:#fff style END fill:#388E3C,stroke:#388E3C,color:#fff style IMMEDIATE fill:#FFCDD2,stroke:#D32F2F,color:#B71C1C style L1_TRY fill:#E8F5E9,stroke:#388E3C,color:#1B5E20 style L2_P1 fill:#FFF8E1,stroke:#F57C00,color:#E65100 style L2_STD fill:#FFF8E1,stroke:#F57C00,color:#E65100 style L2_DEPLOY fill:#FFF8E1,stroke:#F57C00,color:#E65100 style MGMT fill:#FFEBEE,stroke:#D32F2F,color:#B71C1C style L3_PM fill:#E8EAF6,stroke:#3F51B5,color:#1A237E style NOTIFY_PM1 fill:#E8EAF6,stroke:#7986CB,color:#1A237E style L3_STD fill:#E8EAF6,stroke:#3F51B5,color:#1A237E style LOG fill:#E3F2FD,stroke:#1565C0,color:#0D47A1 style SEV fill:#E3F2FD,stroke:#1565C0,color:#0D47A1 style CLOSE_L1 fill:#F5F5F5,stroke:#666,color:#333 style CLOSE_P1 fill:#F5F5F5,stroke:#666,color:#333 style CLOSE_STD fill:#F5F5F5,stroke:#666,color:#333 style TEMP_FIX fill:#FFF3E0,stroke:#FB8C00,color:#E65100 style ESC_MGMT fill:#FFEBEE,stroke:#D32F2F,color:#B71C1C
Key rules:
  • P1 Critical skips L1 → immediately call L2 On-Call by phone + notify L3 (PM) + Management.
  • L1 has a 15-minute timer — if unresolved, escalate to L2 immediately.
  • Tickets never skip tiers unless classified P1 or explicitly directed by management.
  • ⚠️ Never escalate a P1 by email alone. Phone call is mandatory.
  • L3 (PM) is kept informed on all P1 incidents and escalations (not a resolution tier).
  • Escalation path: L1 (CS Team) → L2 (Technical Lead) → Management
2

Severity Classification Guide

Decision tree to determine P1–P5 with ZWIS-specific examples. Aligned to Contract SLA §7.3.

flowchart TD
    START(("🎯 Start
Classify Incoming Issue")) START --> Q1{"Q1: Is the system
completely unreachable
OR are ALL users unable
to login?
"} Q1 -->|"Yes"| P1 Q1 -->|"No"| Q2 Q2{"Q2: Is a key module
broken for a whole
contractor group
or site?


📋 Key Modules:
· Task Management
· Map & Real-Time Location Monitoring
· Shift & Staff Management
· Contract & Licensee Mgmt
· Reporting & Dashboard
· System Config & Access Control"} Q2 -->|"Yes"| P2 Q2 -->|"No"| Q3 Q3{"Q3: Is it a functional
issue with a
workaround available?
"} Q3 -->|"Yes"| P3 Q3 -->|"Just display glitch /
enhancement / how-to"| Q4 Q4{"Q4: Is it a minor disruption
with workaround available?
"} Q4 -->|"Yes"| P4 Q4 -->|"No"| P5 P1["🔴 CRITICAL (Severity 1)
⏱ Response: 15 min · Resolution: 1 hr

Examples:
· System completely down
· All users can't login
· Database corruption
· Indoor positioning total failure
· Airside clock-in totally broken"] P2["🟠 HIGH (Severity 2)
⏱ Response: 15 min · Resolution: 2 hrs

Examples:
· Roster not loading for Contractor A
· Clock-in failing at Terminal 2
· Report generation timeout
· Partial location tracking failure
· Push notifications broken"] P3["🟡 MEDIUM (Severity 3)
⏱ Response: 15 min · Resolution: 4 hrs

Examples:
· Slow page load
· Single report rendering wrong"] P4["🟢 LOW (Severity 4)
⏱ Response: 15 min · Resolution: 8 hrs

Examples:
· 1 user's password reset
· Typo in UI label
· UI alignment issue
· Notification delay for 1 user"] P5["🔵 ENQUIRY (Severity 5)
⏱ Response: 15 min · Resolution: ASAP

Examples:
· Enquiry
· How-to question
· Known issues
· Request to add new column
· Feature enhancement request"] P1 --> TIP1[/"💡 Tip: When in doubt,
classify ONE LEVEL HIGHER
and downgrade later"/] P2 --> TIP1 P3 --> TIP1 P4 --> TIP1 P5 --> TIP1 style START fill:#1B3A5C,stroke:#1B3A5C,color:#fff style P1 fill:#FFCDD2,stroke:#D32F2F,color:#B71C1C style P2 fill:#FFE0B2,stroke:#F57C00,color:#E65100 style P3 fill:#FFF9C4,stroke:#FBC02D,color:#F57F17 style P4 fill:#C8E6C9,stroke:#4CAF50,color:#2E7D32 style P5 fill:#E3F2FD,stroke:#1565C0,color:#0D47A1 style TIP1 fill:#E1F5FE,stroke:#0288D1,color:#01579B style Q1 fill:#F3E5F5,stroke:#7B1FA2,color:#4A148C style Q2 fill:#F3E5F5,stroke:#7B1FA2,color:#4A148C style Q3 fill:#F3E5F5,stroke:#7B1FA2,color:#4A148C style Q4 fill:#F3E5F5,stroke:#7B1FA2,color:#4A148C
3

Support Tools Resolving Flow

The 5-tool cascade CS agents use to resolve issues before escalating. NotebookLM → FAQ → Known Issues → Dashboard → Admin Panel.

flowchart TD
    START(("🔍 Issue Classified
(P2–P5)
Ready to Resolve")) START --> ENQ_CHECK{"Enquiry /
how-to question?"} ENQ_CHECK -->|"Yes"| T1["Tool 1 — 🤖 NotebookLM
· Type natural-language query
· Example: 'contractor cannot clock in at T2'
· Review AI answer + cited sources"] ENQ_CHECK -->|"No"| KNOWN_CHECK{"Known issue
with workaround?"} T1 --> T2["Tool 2 — 📋 FAQ Spreadsheet
· Filter by module / keyword
· Match scenario to documented cases
· Review workaround steps"] T2 --> T3["Tool 3 — 📝 JIRA User Stories /
Known Issues Log

· Check recent entries (last 7 days)
· Look for similar symptoms
· Review workaround status"] T3 --> SOLUTION{"Clear solution
found?"} SOLUTION -->|"Yes ✅"| GUIDE["Guide caller through
the solution step-by-step"] SOLUTION -->|"No"| ESCALATE["📤 Escalate to L2/L3
with full diagnostic notes"] GUIDE --> RESOLVED{"Issue
resolved?"} RESOLVED -->|"Yes ✅"| CLOSE(("→ Go to
Close Procedure")) RESOLVED -->|"No"| ESCALATE KNOWN_CHECK -->|"Yes ✅"| INFORM["Inform caller it's known
Provide workaround"] KNOWN_CHECK -->|"No"| T4["Tool 4 — 📊 Health Dashboard
· Check system status (up/down)
· Check API response times
· Check login success rate"] INFORM --> CLOSE T4 --> SYS_CHECK{"System issue
detected?"} SYS_CHECK -->|"Yes 🚨"| ESCALATE SYS_CHECK -->|"No"| ASK["Ask caller for more info:
· Screenshots
· Exact steps
· Time of issue"] ASK --> T1 ESCALATE --> L2(("→ L2 Escalation")) style START fill:#1B3A5C,stroke:#1B3A5C,color:#fff style CLOSE fill:#388E3C,stroke:#388E3C,color:#fff style L2 fill:#F57C00,stroke:#F57C00,color:#fff style T1 fill:#E3F2FD,stroke:#1565C0,color:#0D47A1 style T2 fill:#E8F5E9,stroke:#388E3C,color:#1B5E20 style T3 fill:#FFF8E1,stroke:#F9A825,color:#F57F17 style T4 fill:#F3E5F5,stroke:#7B1FA2,color:#4A148C style ESCALATE fill:#FFE0B2,stroke:#F57C00,color:#E65100 style ENQ_CHECK fill:#F3E5F5,stroke:#7B1FA2,color:#4A148C style KNOWN_CHECK fill:#F3E5F5,stroke:#7B1FA2,color:#4A148C style SOLUTION fill:#F3E5F5,stroke:#7B1FA2,color:#4A148C style SYS_CHECK fill:#F3E5F5,stroke:#7B1FA2,color:#4A148C style RESOLVED fill:#F3E5F5,stroke:#7B1FA2,color:#4A148C style GUIDE fill:#E8F5E9,stroke:#388E3C,color:#1B5E20 style INFORM fill:#E8F5E9,stroke:#388E3C,color:#1B5E20 style ASK fill:#E1F5FE,stroke:#0288D1,color:#01579B
Tool priority order — try in sequence: NotebookLM is fastest for natural-language queries, FAQ for documented scenarios, JIRA User Stories / Known Issues Log for ongoing problems, and Health Dashboard for system-level diagnosis. Escalate to L2/L3 once diagnostic notes are compiled.
4

Ticket Close Procedure

The 6-step closure protocol, including caller verification, KB update, and shift handover.

flowchart TD
    START_P5(("✅ Issue Resolved
(P5)")) START_P5 --> S1_P5["Step 1 — Verify with Caller
· Confirm enquiry / how-to question settled"] S1_P5 --> VERIFY_P5{"Caller confirms
resolution?"} VERIFY_P5 -->|"No ❌"| REOPEN VERIFY_P5 -->|"Yes ✅"| S3 START_P14(("✅ Issue Resolved
(P1 / P2 / P3 / P4)")) START_P14 --> S1 S1["Step 1 — Verify with Caller
· Confirm workaround provided has no further concern
· Assure caller on future fixes"] S1 --> VERIFY{"Caller confirms
resolution?"} VERIFY -->|"No ❌"| REOPEN["🔄 Reopen Ticket
Re-investigate / re-classify
→ Return to resolution flow"] VERIFY -->|"Yes ✅"| S2 S2["Step 2a — Document Resolution
· Resolution steps taken
· Root cause (if known)
· Time to resolve
· Tier that resolved (L1/L2/L3/L4)"] S2 --> S2B["Step 2b — Log issue resolution time (Temp fixed)
· Time to resolve
· Resolved by"] S2B --> S3{"Was this a
new solution not
in existing KB?"} S3 -->|"Yes"| S3A["Step 3a — Update Knowledge Base
· Record new solution/question to FAQ separate sheet
· Tag with module + symptom keywords
· Monthly: compile all new records to NotebookLM"] S3 -->|"No"| S4 S3A --> S4_KNOWN["Step 3b — Update Known Issues Log (JIRA)
· Add to monthly report
· Notify project team"] S3A --> S4 S4["Step 4 — Close Communication
· Send closure email / message
· Include: issue summary + resolution / workaround
· Invite feedback if needed"] S4_KNOWN --> S4 S4 --> S5["Step 5a — Update Ticket in System
· Status: Open → Temp Fixed
· Tag: Module / Category
· Tag: Severity / Tier resolved
· Capture time-to-resolve metric"] S5 -->|Production deployed| S5B["Step 5b — Close Ticket in System
· Status: Temp Fixed → Closed"] S5B --> S6["Step 6 — Shift Handover Note
(If close to shift end)
· Add to handover log if
follow-up needed
· Flag recurring patterns"] S6 --> END(("✅ Ticket Closed")) REOPEN --> RESOLVE(("→ Back to
Resolution Flow")) style START_P14 fill:#1B3A5C,stroke:#1B3A5C,color:#fff style START_P5 fill:#1B3A5C,stroke:#1B3A5C,color:#fff style END fill:#388E3C,stroke:#388E3C,color:#fff style RESOLVE fill:#F57C00,stroke:#F57C00,color:#fff style REOPEN fill:#FFCDD2,stroke:#D32F2F,color:#B71C1C style S1 fill:#E3F2FD,stroke:#1565C0,color:#0D47A1 style S1_P5 fill:#E3F2FD,stroke:#1565C0,color:#0D47A1 style S2 fill:#E8F5E9,stroke:#388E3C,color:#1B5E20 style S2B fill:#E8F5E9,stroke:#388E3C,color:#1B5E20 style S3A fill:#FFF8E1,stroke:#F9A825,color:#F57F17 style S4_KNOWN fill:#FFE0B2,stroke:#F57C00,color:#E65100 style S4 fill:#F3E5F5,stroke:#7B1FA2,color:#4A148C style S5 fill:#E0F7FA,stroke:#00838F,color:#006064 style S5B fill:#E0F7FA,stroke:#00838F,color:#006064 style S6 fill:#FCE4EC,stroke:#C2185B,color:#880E4F
Critical rules for closure:
  • Never close a ticket without explicit caller confirmation the issue is resolved.
  • New solutions must be added to the FAQ separate sheet immediately; all new records are compiled to NotebookLM on a monthly basis.