# Customer service: keep customers successful

> A process map exported from forks.world (https://forks.world). Author: Brian. Source: https://forks.world/p/cmv4pv703000hjm06uqblew9j
> It describes who does what, in what order, and with which technology. Read the plain-language sections first; the JSON at the end is the exact, complete data.

## Summary

- 10 steps across 1 layer
- Persona: Customer, Service agent, Engineering or field team, Service manager

## How to read this file

- A process is made of **layers**. The main layer is the top level; any step of kind `subprocess` opens a detail layer with its own lanes and steps.
- **Lanes** are either persona (people/roles) or technology (systems). Each step belongs to one lane; `using` lists tools a person uses for that step.
- Step kinds: `start`, `task`, `decision` (its arrows carry the answer as a label), `subprocess`, `end`.

## Customer service: keep customers successful

Lanes:
- Customer: person / role (id `cust`)
- Service agent: person / role (id `agent`)
- Engineering or field team: person / role (id `eng`)
- Service manager: person / role (id `mgr`)

Steps, in the order they run:

1. **Has a question or a problem** [start; Customer; id `v1`]
   - then Log the request and triage it
2. **Log the request and triage it** [subprocess; Service agent; id `v2`], links to the published process "Handle a support ticket" (https://forks.world/p/cmv0iea2c003ljw062jmkj015; full text at https://forks.world/api/public/cmv0iea2c003ljw062jmkj015/export)
   - then Can the agent solve it right away?
3. **Can the agent solve it right away?** [decision; Service agent; id `v3`]
   - if "Yes" go to Fix it and confirm with the customer; if "No" go to Investigate and fix the root cause
4. **Fix it and confirm with the customer** [task; Service agent; id `v4`]
   - then Confirms it is resolved
5. **Confirms it is resolved** [task; Customer; id `v8`]
   - then Review trends and fix what keeps breaking
6. **Review trends and fix what keeps breaking** [end; Service manager; id `v9`]
7. **Investigate and fix the root cause** [task; Engineering or field team; id `v5`]
   - then Is it a product defect or a service outage?
8. **Is it a product defect or a service outage?** [decision; Engineering or field team; id `v6`]
   - if "Yes" go to Declare an incident and communicate; if "No" go to Return, repair or replace the item
9. **Declare an incident and communicate** [subprocess; Service manager; id `v7`], links to the published process "Respond to an incident" (https://forks.world/p/cmv0iedbx004kjw060iqtrof5; full text at https://forks.world/api/public/cmv0iedbx004kjw060iqtrof5/export)
   - then Confirms it is resolved
10. **Return, repair or replace the item** [subprocess; Service agent; id `v7a`], links to the published process "Warranty claim and return (RMA)" (https://forks.world/p/cmv0ieayt003vjw06jq2fbv8b; full text at https://forks.world/api/public/cmv0ieayt003vjw06jq2fbv8b/export)
   - then Confirms it is resolved

```mermaid
flowchart LR
  subgraph l_cust["Customer"]
    n_v1(["Has a question or a problem"])
    n_v8["Confirms it is resolved"]
  end
  subgraph l_agent["Service agent"]
    n_v2[["Log the request and triage it"]]
    n_v3{"Can the agent solve it right away?"}
    n_v4["Fix it and confirm with the customer"]
    n_v7a[["Return, repair or replace the item"]]
  end
  subgraph l_eng["Engineering or field team"]
    n_v5["Investigate and fix the root cause"]
    n_v6{"Is it a product defect or a service outage?"}
  end
  subgraph l_mgr["Service manager"]
    n_v7[["Declare an incident and communicate"]]
    n_v9(["Review trends and fix what keeps breaking"])
  end
  n_v1 --> n_v2
  n_v2 --> n_v3
  n_v3 -->|"Yes"| n_v4
  n_v3 -->|"No"| n_v5
  n_v4 --> n_v8
  n_v5 --> n_v6
  n_v6 -->|"Yes"| n_v7
  n_v6 -->|"No"| n_v7a
  n_v7 --> n_v8
  n_v7a --> n_v8
  n_v8 --> n_v9
```

## Full data (JSON)

```json
{
  "title": "Customer service: keep customers successful",
  "maps": {
    "m_root": {
      "id": "m_root",
      "lanes": [
        {
          "id": "cust",
          "name": "Customer",
          "type": "person"
        },
        {
          "id": "agent",
          "name": "Service agent",
          "type": "person"
        },
        {
          "id": "eng",
          "name": "Engineering or field team",
          "type": "person"
        },
        {
          "id": "mgr",
          "name": "Service manager",
          "type": "person"
        }
      ],
      "steps": [
        {
          "id": "v1",
          "kind": "start",
          "lane": "cust",
          "next": [
            {
              "to": "v2"
            }
          ],
          "uses": [],
          "label": "Has a question or a problem"
        },
        {
          "id": "v2",
          "kind": "subprocess",
          "lane": "agent",
          "link": {
            "id": "cmv0iea2c003ljw062jmkj015",
            "scope": "public",
            "title": "Handle a support ticket"
          },
          "next": [
            {
              "to": "v3"
            }
          ],
          "uses": [],
          "label": "Log the request and triage it"
        },
        {
          "id": "v3",
          "kind": "decision",
          "lane": "agent",
          "next": [
            {
              "to": "v4",
              "label": "Yes"
            },
            {
              "to": "v5",
              "label": "No"
            }
          ],
          "uses": [],
          "label": "Can the agent solve it right away?"
        },
        {
          "id": "v4",
          "kind": "task",
          "lane": "agent",
          "next": [
            {
              "to": "v8"
            }
          ],
          "uses": [],
          "label": "Fix it and confirm with the customer"
        },
        {
          "id": "v5",
          "kind": "task",
          "lane": "eng",
          "next": [
            {
              "to": "v6"
            }
          ],
          "uses": [],
          "label": "Investigate and fix the root cause"
        },
        {
          "id": "v6",
          "kind": "decision",
          "lane": "eng",
          "next": [
            {
              "to": "v7",
              "label": "Yes"
            },
            {
              "to": "v7a",
              "label": "No"
            }
          ],
          "uses": [],
          "label": "Is it a product defect or a service outage?"
        },
        {
          "id": "v7",
          "kind": "subprocess",
          "lane": "mgr",
          "link": {
            "id": "cmv0iedbx004kjw060iqtrof5",
            "scope": "public",
            "title": "Respond to an incident"
          },
          "next": [
            {
              "to": "v8"
            }
          ],
          "uses": [],
          "label": "Declare an incident and communicate"
        },
        {
          "id": "v7a",
          "kind": "subprocess",
          "lane": "agent",
          "link": {
            "id": "cmv0ieayt003vjw06jq2fbv8b",
            "scope": "public",
            "title": "Warranty claim and return (RMA)"
          },
          "next": [
            {
              "to": "v8"
            }
          ],
          "uses": [],
          "label": "Return, repair or replace the item"
        },
        {
          "id": "v8",
          "kind": "task",
          "lane": "cust",
          "next": [
            {
              "to": "v9"
            }
          ],
          "uses": [],
          "label": "Confirms it is resolved"
        },
        {
          "id": "v9",
          "kind": "end",
          "lane": "mgr",
          "next": [],
          "uses": [],
          "label": "Review trends and fix what keeps breaking"
        }
      ],
      "title": "Customer service: keep customers successful",
      "parent": null
    }
  }
}
```
