---
title: "Sign"
description: "Sähköiset allekirjoitukset. Jokainen sovellus on moduuli samalla tietomallilla."
canonical: "https://obop-platform.sliplane.app/fi/apps/sign/"
lang: "fi"
---

# Sign

## Mihin se on tarkoitettu

Manage templates and signature requests through draft, sent, signed, declined and expired, and record the document hash that was signed. The platform cannot yet lock a record, so a signed request is immutable by convention only.

## Mitä paketti tekee ja mitä ei

Document templates and signature requests with a draft, sent, signed, declined, expired flow. A request names the signer (personal data) and keeps the signature evidence as references. A signed request is immutable by convention only: the platform cannot yet lock a record, so nobody should edit a request once it is signed, and the document_hash records what was signed. Sending and recording a signature need a human approval; agents may only propose them.

## Mallit

### `sign_template`

A document that can be sent out for signature

Lukuryhmä: `sign.user`. Kirjoitusryhmä: `sign.manager`.

| Kenttä | Tyyppi | Tietoluokka | Henkilötieto | Ryhmä | Agentit näkevät | Kuvaus |
|---|---|---|---|---|---|---|
| `name` | text | `none` | ei | `sign.user` | selkoisena | Template name, for example Employment contract |
| `description` | longtext | `none` | ei | `sign.user` | selkoisena | What the document is for and who signs it |
| `body` | longtext | `none` | ei | `sign.user` | selkoisena | The document text, or a reference to where the file is kept |
| `signer_role` | text | `none` | ei | `sign.user` | selkoisena | Role of the person who signs, for example Customer |
| `active` | bool | `none` | ei | `sign.user` | selkoisena | Whether new requests can use the template |

### `sign_request`

A request for one person to sign one document

Lukuryhmä: `sign.user`. Kirjoitusryhmä: `sign.user`.

| Kenttä | Tyyppi | Tietoluokka | Henkilötieto | Ryhmä | Agentit näkevät | Kuvaus |
|---|---|---|---|---|---|---|
| `template_id` | ref → sign_template | `none` | ei | `sign.user` | selkoisena | The document to sign |
| `title` | text | `none` | ei | `sign.user` | selkoisena | Subject shown to the signer |
| `message` | longtext | `none` | ei | `sign.user` | selkoisena | Message shown to the signer in the request |
| `signer_name` | text | `internal` | kyllä | `sign.user` | maskattu | Name of the person who must sign |
| `signer_email` | text | `internal` | kyllä | `sign.user` | maskattu | Email address the request is sent to |
| `sent_on` | date | `none` | ei | `sign.user` | selkoisena | Day the request was sent (YYYY-MM-DD) |
| `expires_on` | date | `none` | ei | `sign.user` | selkoisena | Last day the request can be signed (YYYY-MM-DD) |
| `signed_on` | date | `none` | ei | `sign.user` | selkoisena | Day the document was signed (YYYY-MM-DD) |
| `signer_ip` | text | `internal` | kyllä | `sign.manager` | maskattu | IP address the signature came from (evidence) |
| `signer_user_agent` | text | `internal` | kyllä | `sign.manager` | maskattu | Browser the signature was made with (evidence) |
| `signature_reference` | text | `none` | ei | `sign.manager` | selkoisena | Where the signature image or certificate is stored |
| `document_hash` | text | `none` | ei | `sign.manager` | selkoisena | SHA-256 hash (hex) of the signed document, to prove it was not changed afterwards |
| `state` | select (draft, sent, signed, declined, expired) | `none` | ei | `sign.user` | selkoisena | Request status: draft, sent, signed, declined, expired |

## Työnkulut

### `sign_request`

| Toiminto | Siirtää | Kuka voi suorittaa | Hyväksyntä |
|---|---|---|---|
| `sign_request.send` | state: draft → sent | `sign.user` | kyllä |
| `sign_request.sign` | state: sent → signed | `sign.manager` | kyllä |
| `sign_request.decline` | state: sent → declined | `sign.user` | ei |
| `sign_request.expire` | state: sent → expired | `sign.user` | ei |

## Käyttöoikeusryhmät

Tämän sovelluksen käyttämät ryhmät:

- `sign.manager`
- `sign.user`

## Hyväksyntävaiheet

Vaiheet, joita agentti voi vain ehdottaa:

- `sign_request.send`
- `sign_request.sign`

## Mitä agentit voivat ja eivät voi tehdä

Agentti voi lukea, hakea, luoda ja päivittää tämän sovelluksen tietueita sekä suorittaa toiminnot, jotka eivät vaadi hyväksyntää, tunnisteensa käyttöoikeusryhmien rajoissa.

Se voi vain ehdottaa näitä vaiheita, ja ihmisen on hyväksyttävä ne: `sign_request.send`, `sign_request.sign`, `sign_template.delete`, `sign_request.delete`.

Henkilötiedot maskataan paikkamerkeiksi: `sign_request.signer_name`, `sign_request.signer_email`, `sign_request.signer_ip`, `sign_request.signer_user_agent`.

## Riippuvuudet

Ei ole.

## Asennus

Asenna se Customize-sovelluksesta (Marketplace) tai komentoriviltä:

```bash
obop modules install-from sign
```

Vaatii tietokannan ja ylläpitäjän oikeudet.

## Tee oma

[Moduulioppaassa näytetään, miten tällaiset sovellukset kirjoitetaan](/fi/docs/reference/module-manifest/)
