> For the complete documentation index, see [llms.txt](https://specs.govstack.global/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://specs.govstack.global/service-patterns/2.-functional-patterns/provide-a-signature.md).

# Provide a signature

Capture a trusted, auditable signature so a service can confirm who signed, what they signed, and when.

**Use this pattern when**

* the outcome is legally/procedurally significant, or fraud prevention is essential
* the service must produce a verifiable record of agreement/approval
* multiple signers, roles (personal/business), or asynchronous signing are involved

**Do not use this pattern when:**

* a simple confirmation or acknowledgement is sufficient
* consent is not the lawful basis, or signing is not required for the decision (use information + normal confirmation instead)

## Steps

<details>

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

<figure><img src="https://content.gitbook.com/content/u8moxPbFWK9pTxPYNIyh/blobs/edkKkBTzfre9LJV1k4FE/Provide%20a%20signature.png" alt=""><figcaption></figcaption></figure>

</details>

### 1. Verify identity and authorise to sign (optional)

Confirm the user is the intended signatory and is authorised to sign in the chosen role whther personal, business or on behalf of another.

Use the [authenticate](/service-patterns/2.-functional-patterns/authenticate.md) functional pattern or additional verification steps depending on risk.&#x20;

### 2. Review what will be signed

Show a clear, human-readable view of the content and a short summary of consequences.

Use the [check answers](/service-patterns/3.-step-patterns/check-answers.md) pattern where users must be able to:&#x20;

* confirm they agree
* stop/cancel if they don’t

### 3. Choose signature method or role (if applicable)

If multiple signing methods or roles are available, let the user select how and as whom they are signing.

Examples:

* sign as individual vs on behalf of an organisation (entrepreneur)
* certificate-based vs one-time signing flow (where supported)

Present options using [single or multiple-choice question](/service-patterns/3.-step-patterns/ask-a-question.md). &#x20;

If signature exists as credential, use the [present credential](/service-patterns/2.-functional-patterns/present-a-credential.md) pattern.&#x20;

### 4. Apply eSignature

The service applies the signature using the [eSignature Building Block](https://specs.govstack.global/esignature) and returns the result via internal integration, typically protected via [Information Mediation](https://specs.govstack.global/information-mediator).

### 5. Return outcome (and confirmations)

Show a clear result. Use [outcome](/service-patterns/3.-step-patterns/outcome.md) step pattern.&#x20;

Must include:

* status: signed / pending / failed / declined / expired
* reference for audit/support
* what happens next in the service

Send confirmations where appropriate to the signatory and to the document owner or requester (if different)

Use the [notification](/service-patterns/3.-step-patterns/send-a-notification.md) step pattern.&#x20;

***

### Considerations

* Enable a user to save and return to sign later, with reminder notifications and expeiry where relevant.&#x20;
* Signing must be usable with assistive technology such as screen readers.&#x20;
* Where eSignature isn’t possible, offer other assisted or alternative ways to access and complete this part of the service.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://specs.govstack.global/service-patterns/2.-functional-patterns/provide-a-signature.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
