# Guide users through a service

Help users navigate a service journey that involves multiple functions. Make progress visible and support smooth transitions between functions, so users can complete a service without confusion

**Use this pattern when:**

* a service includes more than one functional pattern
* users may need to complete tasks in a specific order
* users may pause and return to the service later
* the service needs clear review or completion points
* functions such as Scheduling or Request information are part of a wider flow

**Do not use this pattern when:**

* the service consists of a single, simple interaction
* no progression, review, or re-entry is required
* the service is purely informational

## Steps

{% @mermaid/diagram content="---
config:
theme: redux
layout: dagre
-------------

flowchart LR
A\["Service sheet"] --> B{"Multiple functions? <br>(Check, Pay, Visit)"}
B -- Yes --> C\["Task list"]
B -- No --> E\["Route user to function"]
C --> E
E --> F{"Is the function complex?<br>"}
F -- Yes --> G\["Overview"]
F -- No --> H\["Proceed through steps"]
G --> I\["Complete function"]
H --> I
I -- If task list --> J\["Return to task list"]
J --> K{"Are there remaining\nrequired functions?"}
K -- Yes --> E
K -- No --> L\["Check answers <br>(if needed)"]
L --> M\["Outcome"]
I -- If no task list --> K

A@{ shape: rounded}
C@{ shape: rounded}
G@{ shape: rounded}
L@{ shape: rounded}
M@{ shape: rounded}
" %}

<details>

<summary><strong>Example user flow</strong></summary>

<figure><img src="https://content.gitbook.com/content/u8moxPbFWK9pTxPYNIyh/blobs/ke0vtWRnUnruvtuB5ZQB/Guide%20users%20through%20a%20service.png" alt=""><figcaption></figcaption></figure>

</details>

#### 1. Assess if service contains multiple functions or transitions

This decision determines whether users need a service-level structure to understand and manage progress.

* If yes, use [task list](https://specs.govstack.global/service-patterns/3.-step-patterns/task-list) to show the overall service structure and support pause and return.
* If no, route users directly into the function without introducing additional structure.

Use this decision when a service includes multiple tasks, can be completed over time, or allows tasks to be completed in different orders.

#### 2. Assess if the function is complex?

This decision determines whether users need orientation within a function.

* If yes, use a [Before you start page](https://specs.govstack.global/service-patterns/3.-step-patterns/before-you-start) to explain what the function involves, and [check your answers](https://specs.govstack.global/service-patterns/3.-step-patterns/check-answers) to show progress, and allow review.
* If no, proceed directly through the function’s steps.

Use this decision when a function includes multiple steps, branching logic, prerequisites, or the possibility of pause and return.

***

## Considerations

* Avoid duplicating orientation at both service and function levels unless needed.
* Support non-linear progress and return.
* Use structure, not hand-off screens, to connect functions.

<br>
