> For the complete documentation index, see [llms.txt](https://docs.opencityitalia.it/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.opencityitalia.it/connect/le-funzioni/i-modelli-di-messaggio-template.md).

# I modelli di messaggio (template)

{% hint style="warning" %}
Le funzioni descritte in questa pagina sono disponibili solo per l'admin e il service manager
{% endhint %}

Dal dettaglio dell'evento è possibile consultare il modello di messaggio (*template*) di default configurato.

{% hint style="info" %}
Per modello di messaggio si intende il testo base di un messaggio, con segnaposto, disponibile per ogni evento e canale abilitato.
{% endhint %}

Ogni evento può avere un *template* distinto per App IO e per Email, ciascuno modificabile in modo indipendente o sincronizzato.

I template con l'indicazione "**Fornito dalla piattaforma**" sono [quelli suggeriti dalla piattaforma](#template-di-sistema) e sono sufficientemente astratti per essere utlizzati nella maggior parte dei casi d'uso.

Tramite la funzione "**Cambia template di default**" è possibile scegliere un altro template (fornito o meno dalla piattaforma) compatibile con il tipo di evento.

<figure><img src="/files/UAhNnhTJm7wB3NJ3LAZW" alt="" width="563"><figcaption></figcaption></figure>

## Creare un nuovo template

I template forniti dalla piattaforma non sono modificabili; è possibile tuttavia crearne una copia e personalizzarla tramite l'icona "✏️" accanto al nome del template.

Dopo aver associato un nome al nuovo template, bisogna scegliere se questo sarà uguale per tutti i canali di invio o se si preferisce personalizzarlo in base al canale. Si scrivono quindi l'oggetto e il testo del messaggio, inserendo, se serve, dei [campi variabili](#campi-variabili-dellevento).

Infine, è possibile configurare uno o due pulsanti contenenti un link che rimanderà ad una pagina web.

Un'anteprima a destra dà un'idea del risultato finale.

{% hint style="success" %}
Un messaggio ben scritto è costituito da frasi brevi e dirette e da un linguaggio semplice e non burocratico.

L'oggetto del messaggio è il primo elemento che il cittadino vede. Per questo, deve essere specifico e descrittivo, non generico, ma comunque breve.

Le informazioni più importanti nel testo devono emergere a colpo d'occhio, senza che il cittadino debba faticare per cercarle. Allo stesso tempo, il testo deve contenere tutto il necessario senza inutili appesantimenti, per evitare di perdere l'attenzione di chi legge.

Per approfondire: [Linee guida di design per i servizi digitali della PA](https://docs.italia.it/italia/designers-italia/writing-toolkit/)
{% endhint %}

<figure><img src="/files/5rYl7JzythqwCF3B57Ae" alt=""><figcaption></figcaption></figure>

## Campi variabili dell'evento

{% hint style="info" %}
I campi variabili sono dei dati variabili nel modello di messaggio che la piattaforma sostituisce con i dati reali del cittadino al momento dell'invio (es. importo, data appuntamento).
{% endhint %}

La sezione **Campi variabili dell'evento** elenca i campi facoltativi del messaggio e quelli che invece devono essere sempre presenti; se questi ultimi mancano, la piattaforma non genera il messaggio.

<figure><img src="/files/wqxi9EqNHsCR2a9LBPVB" alt="" width="362"><figcaption></figcaption></figure>

I campi obbligatori servono a garantire le funzionalità "in app" dei messaggi.

Nel caso dei pagamenti, per esempio, la mancanza di un campo "IUV" non permetterà di effettuare il pagamento direttamente dall'App IO.

## Template di sistema

Il sistema propone dei template di default che possono essere utilizzati per l'invio dei messaggi. Di seguito sono elencati i template con il testo di default e i campi variabili previsti.

<details>

<summary>Comunicazione generica</summary>

🖋 **Oggetto del messaggio:** Hai una nuova comunicazione

🗒 **Testo del messaggio:**&#x20;

Gentile cittadino,

ti comunichiamo che *(testo del messaggio)*.

🪄 **Pulsante:** n/a

🏷️ **Campi variabili:** n/a

***

**Destinatari**: I cittadini a cui l'ente deve inviare una comunicazione.\
**Quando inviarlo**: I tempi variano a seconda della comunicazione.\
**User story**: Come cittadino voglio ricevere una comunicazione dal mio ente

{% hint style="info" %}
Utilizza questo template come base per qualsiasi comunicazione da inviare ai cittadini
{% endhint %}

</details>

<details>

<summary>Nuovo documento</summary>

🖋 **Oggetto del messaggio:** Nuovo documento pubblicato

🗒 **Testo del messaggio:**&#x20;

Un nuovo documento è stato pubblicato ed è ora disponibile nella tua area personale.

{{# if document\_link}}\
Per visualizzarlo premi sul pulsante “Vedi documento”.\
{{/if}}

🪄 **Pulsante:** Vedi documento

🏷️ **Campi variabili:**

* link al documento (`document_link`) - *facoltativo*

***

**Destinatari**: I cittadini per i quali è stato pubblicato un nuovo documento.\
**Quando inviarlo**: Quando viene pubblicato il documento.\
**User story**: Come cittadino voglio ricevere comunicazione quando viene pubblicato un nuovo documento per me.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Invio referto</summary>

🖋 **Oggetto del messaggio:** Nuovo referto disponibile

🗒 **Testo del messaggio:**&#x20;

È stato caricato un nuovo referto.

Per visualizzarlo accedi al Portale dei referti autenticandoti con SPID o CIE.

Attenzione: il referto è disponibile per 30 giorni dal momento della ricezione della presente notifica.

🪄 **Pulsante:** n/a

🏷️ **Campi variabili:** n/a

***

**Destinatari**: I cittadini per i quali è stato pubblicato un nuovo referto.\
**Quando inviarlo**: Quando viene pubblicato il referto.\
**User story**: Come cittadino voglio ricevere comunicazione quando viene pubblicato un nuovo referto.

</details>

<details>

<summary>Scadenza documento</summary>

🖋 **Oggetto del messaggio:** Documento in scadenza

🗒 **Testo del messaggio:**&#x20;

Il **`{{ document_expiration_date }}`** scadrà il tuo documento `{{# if document_type}}{{/if}}`. Ti ricordiamo di rinnovarlo prima della scadenza per evitare disagi.

`{{# if document_booking_link}}` Per il rinnovo, prenota un appuntamento premendo "Prenota appuntamento". `{{/if}}`

🪄 **Pulsante:** Prenota appuntamento

🏷️ **Campi variabili:**

* data di scadenza del documento (`document_expiration_date`)
* tipo di documento (`document_type`) - *facoltativo*
* link al servizio di prenotazione appuntamenti (`document_booking_link`) - *facoltativo*

***

**Destinatari**: I cittadini che hanno un documento in scadenza.\
**Quando inviarlo**: Qualche settimana prima della data di scadenza del documento.\
**User story**: Come cittadino voglio ricevere comunicazione quando ho un documento in scadenza.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Pubblicazione graduatoria</summary>

🖋 **Oggetto del messaggio:** Pubblicazione graduatoria

🗒 **Testo del messaggio:**&#x20;

E' stata pubblicata la graduatoria per il servizio **`{{ service }}`**.

`{{#if ranking_link}}` Puoi consultare la tua posizione in graduatoria premendo il pulsante "Consulta graduatoria". `{{else}}` Puoi consultare la tua posizione in graduatoria sul sito web del Comune. `{{/if}}`

🪄 **Pulsante:** Consulta graduatoria

🏷️ **Campi variabili:**

* nome del servizio (`service`)
* link alla graduatoria (`ranking_link`) - *facoltativo*

***

**Destinatari**: I cittadini che hanno presentato una domanda soggetta a graduatoria.\
**Quando inviarlo**: Quando è pubblicata la graduatoria.\
**User story**: Come cittadino voglio ricevere aggiornamenti sullo stato della mia domanda.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} e degli {{else}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Concessione bonus</summary>

🖋 **Oggetto del messaggio:** Concessione contributo

🗒 **Testo del messaggio:**&#x20;

La tua richiesta di concessione di **`{{ bonus_name }}`** è stata accolta.

L'importo di **`{{ bonus_amount }}`** € ti sarà erogato sul conto corrente che hai indicato nella richiesta.

Per maggiori informazioni, contattaci tramite i canali che trovi premendo "Contatta il mittente".

🪄 **Pulsante:** n/a

🏷️ **Campi variabili:**

* tipo di contributo (`bonus_name`)
* importo (`bonus_amount`)

***

**Destinatari**: I cittadini a cui è stato concesso un contributo.\
**Quando inviarlo**: Quando il contributo viene concesso.\
**User story**: Come cittadino voglio ricevere comunicazione quando mi viene concesso il contributo che ho richiesto.

</details>

<details>

<summary>Nuovo avviso di pagamento</summary>

🖋 **Oggetto del messaggio:** Hai un nuovo avviso di pagamento

🗒 **Testo del messaggio:**&#x20;

C'è un nuovo avviso di pagamento intestato a te.

Devi pagare: **`{{ payment_amount }}` €**

`{{#if payment_expiration_date}}`Entro il: **`{{ date payment_expiration_date }}`**`{{/if}}`

Puoi pagare direttamente in app premendo “Paga”, oppure tramite tutti i canali di pagamento della piattaforma pagoPA.

Se hai già provveduto a pagare l'avviso, ignora questo messaggio.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo "Contatta il mittente".

In fase di pagamento, se previsto dall'ente, l'importo riportato nel messaggio potrebbe subire variazioni.

🪄 **Pulsante:** Paga

🏷️ **Campi variabili:**

* importo (`payment_amount`)
* data di scadenza del pagamento (`date payment_expiration_date`) - *facoltativo*

***

**Destinatari**: I cittadini che devono pagare un servizio all'ente.\
**Quando inviarlo**: Quando è richiesto il pagamento del servizio.\
**User story**: Come cittadino voglio ricevere comunicazione quando è richiesto di procedere al pagamento.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Scadenza pagamento</summary>

🖋 **Oggetto del messaggio:** Pagamento in scadenza

🗒 **Testo del messaggio:**&#x20;

Hai un avviso di pagamento in scadenza.

Devi pagare: **`{{ payment_amount }}` €**

`{{#if payment_expiration_date}}`Entro il: **`{{ date payment_expiration_date }}`**`{{/if}}`

Puoi pagare direttamente in app premendo “Paga”, oppure tramite tutti i canali di pagamento della piattaforma pagoPA.

Se hai già provveduto a pagare l'avviso, ignora questo messaggio.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo "Contatta il mittente".

In fase di pagamento, se previsto dall'ente, l'importo riportato nel messaggio potrebbe subire variazioni.

🪄 **Pulsante:** Paga

🏷️ **Campi variabili:**

* importo (`payment_amount`)
* data di scadenza del pagamento (`date payment_expiration_date`) - *facoltativo*

***

**Destinatari**: I cittadini che hanno un pagamento in scadenza.\
**Quando inviarlo**: Quando il pagamento del servizio è in scadenza.\
**User story**: Come cittadino voglio ricevere una comunicazione quando ho un pagamento in scadenza.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Pagamento aggiornato</summary>

🖋 **Oggetto del messaggio:** Pagamento aggiornato

🗒 **Testo del messaggio:**&#x20;

Il tuo pagamento per **`{{ payment_reason }}`** è stato aggiornato.

Devi pagare: **`{{ payment_amount }}`** €

`{{#if payment_expiration_date}}`Entro il: **`{{ date payment_expiration_date }}`**`{{/if}}`

Puoi pagare direttamente in app premendo “Paga”, oppure tramite tutti i canali di pagamento della piattaforma pagoPA.

Se hai già provveduto a pagare l'avviso, ignora questo messaggio.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo "Contatta il mittente".

🪄 **Pulsante:** Paga

🏷️ **Campi variabili:**

* causale di pagamento (`payment_reason`)
* importo (`payment_amount`)
* data di scadenza del pagamento (`date payment_expiration_date`) *- facoltativo*

***

**Destinatari**: I cittadini per i quali è stato aggiornato un pagamento.\
**Quando inviarlo**: Quando il pagamento del servizio è stato aggiornato.\
**User story**: Come cittadino voglio ricevere una comunicazione quando il mio pagamento viene aggiornato.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Pagamento annullato</summary>

🖋 **Oggetto del messaggio:** Pagamento annullato

🗒 **Testo del messaggio:**&#x20;

L’avviso di pagamento di **`{{ payment_amount }}`** € con oggetto **`{{ payment_reason }}`** intestato a te è stato annullato.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo "Contatta il mittente".

🪄 **Pulsante:** n/a

🏷️ **Campi variabili:**

* importo (`payment_amount`)
* causale di pagamento (`payment_reason`)

***

**Destinatari**: I cittadini per i quali è stato annullato un pagamento.\
**Quando inviarlo**: Quando il pagamento del servizio è stato annullato.\
**User story**: Come cittadino voglio ricevere una comunicazione quando il mio pagamento viene annullato.

</details>

<details>

<summary>Pagamento non effettuato</summary>

🖋 **Oggetto del messaggio:** Pagamento non effettuato

🗒 **Testo del messaggio:**&#x20;

Il tuo pagamento di **`{{ payment_amount }}` €** relativo a **`{{ payment_reason }}`** è scaduto `{{# if payment_expiration_date}}` il **`{{ date payment_expiration_date }}`**`{{/if}}`.

Puoi ancora pagare direttamente in app premendo “Paga”, oppure tramite tutti i canali di pagamento della piattaforma pagoPA e le altre modalità di pagamento offerte da **`{{ tenant_name }}`** .

Se hai già provveduto a pagare l'avviso, ignora questo messaggio.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo "Contatta il mittente".

In fase di pagamento, se previsto dall'ente, l'importo riportato nel messaggio potrebbe subire variazioni.

🪄 **Pulsante:** Paga

🏷️ **Campi variabili:**

* importo (`payment_amount`)
* causale di pagamento (`payment_reason`)
* data di scadenza del pagamento (`date payment_expiration_date`) *- facoltativo*
* nome dell'ente (`tenant_name`) - *compilato automaticamente*

***

**Destinatari**: I cittadini che hanno un pagamento scaduto.\
**Quando inviarlo**: Quando il pagamento del servizio è scaduto.\
**User story**: Come cittadino voglio ricevere una comunicazione quando il mio pagamento è scaduto.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Conferma appuntamento</summary>

🖋 **Oggetto del messaggio:** Appuntamento confermato

🗒 **Testo del messaggio:**&#x20;

Il tuo appuntamento è stato confermato.

Quando: **`{{ date booking_date }}`** alle **`{{ time booking_date }}`**

Dove: **`{{ booking_place }}`**

Ti invitiamo a presentarti nel luogo indicato con almeno 15 minuti di anticipo e con la documentazione necessaria.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo “Contatta il mittente”.

`{{# if booking_management_url}}` Per spostare o annullare l’appuntamento, premi “Sposta o annulla appuntamento”. `{{/if}}`

🪄 **Pulsante:** Sposta o annulla appuntamento

🏷️ **Campi variabili:**

* data dell'appuntamento (`date booking_date`)
* ora dell'appuntamento (`time booking_date`)
* luogo dell'appuntamento (`booking_place`)
* link al sistema di gestione dell'appuntamento (`booking_management_url`) - *facoltativo*

***

**Destinatari**: I cittadini che hanno prenotato un appuntamento.\
**Quando inviarlo**: Quando l'appuntamento è confermato.\
**User story**: Come cittadino voglio ricevere comunicazione quando l'appuntamento è confermato.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Promemoria appuntamento</summary>

🖋 **Oggetto del messaggio:** Promemoria appuntamento

🗒 **Testo del messaggio:**&#x20;

Ti ricordiamo che hai un appuntamento programmato.

Quando: **`{{ date booking_date }}`** alle **`{{ time booking_date }}`**

Dove: **`{{ booking_place }}`**

Ti invitiamo a presentarti nel luogo indicato con almeno 15 minuti di anticipo e con la documentazione necessaria.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo “Contatta il mittente”.

`{{# if booking_management_url}}` Per spostare o annullare l’appuntamento, premi “Sposta o annulla appuntamento”. `{{/if}}`

🪄 **Pulsante:** Sposta o annulla appuntamento

🏷️ **Campi variabili:**

* data dell'appuntamento (`date booking_date`)
* ora dell'appuntamento (`time booking_date`)
* luogo dell'appuntamento (`booking_place`)
* link al sistema di gestione dell'appuntamento (`booking_management_url`) - *facoltativo*

***

**Destinatari**: I cittadini che hanno un appuntamento imminente.\
**Quando inviarlo**: Qualche ora prima dell'appuntamento.\
**User story**: Come cittadino voglio ricevere un promemoria in prossimità dell'appuntamento.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Aggiornamento appuntamento</summary>

🖋 **Oggetto del messaggio:** Il tuo appuntamento è stato aggiornato

🗒 **Testo del messaggio:**&#x20;

Il tuo appuntamento è stato aggiornato.

Quando: **`{{ date booking_date }}`** alle **`{{ time booking_date }}`**

Dove: **`{{ booking_place }}`**

Ti invitiamo a presentarti nel luogo indicato con almeno 15 minuti di anticipo e con la documentazione necessaria.

Per maggiori informazioni o per richiedere assistenza, contattaci tramite i canali che trovi premendo “Contatta il mittente”.

`{{# if booking_management_url}}` Per spostare o annullare l’appuntamento, premi “Gestisci appuntamento”. `{{/if}}`

🪄 **Pulsante:** Gestisci appuntamento

🏷️ **Campi variabili:**

* data dell'appuntamento (`date booking_date`)
* ora dell'appuntamento (`time booking_date`)
* luogo dell'appuntamento (`booking_place`)
* link al sistema di gestione dell'appuntamento (`booking_management_url`) - *facoltativo*

***

**Destinatari**: I cittadini il cui appuntamento è stato aggiornato.\
**Quando inviarlo**: Quando l'appuntamento viene aggiornato.\
**User story**: Come cittadino voglio ricevere comunicazione quando il mio appuntamento viene aggiornato.

{% hint style="info" %}
Il contenuto testuale all'interno degli {{if}} è facoltativo.
{% endhint %}

</details>

<details>

<summary>Annullamento appuntamento</summary>

🖋 **Oggetto del messaggio:** Il tuo appuntamento è stato annullato

🗒 **Testo del messaggio:**&#x20;

Il tuo appuntamento del giorno **`{{date booking_date }}`** alle **`{{ time booking_date }}`** è stato annullato.

Per maggiori informazioni, contattaci tramite i canali che trovi premendo "Contatta il mittente".

🪄 **Pulsante:** n/a

🏷️ **Campi variabili:**

* data dell'appuntamento (`date booking_date`)
* ora dell'appuntamento (`time booking_date`)

***

**Destinatari**: I cittadini il cui appuntamento è stato annullato.\
**Quando inviarlo**: Quando l'appuntamento viene annullato.\
**User story**: Come cittadino voglio ricevere comunicazione quando il mio appuntamento viene annullato.

</details>

<details>

<summary>Rifiuto richiesta di appuntamento</summary>

🖋 **Oggetto del messaggio:** La tua richiesta di appuntamento è stata rifiutata

🗒 **Testo del messaggio:**&#x20;

La tua richiesta di appuntamento per il giorno **`{{date booking_date }}`** alle **`{{time booking_date }}`** è stata rifiutata.

Per maggiori informazioni, contattaci tramite i canali che trovi premendo "Contatta il mittente" o prenota un nuovo appuntamento.

🪄 **Pulsante:** n/a

🏷️ **Campi variabili:**

* data dell'appuntamento (`date booking_date`)
* ora dell'appuntamento (`time booking_date`)

***

**Destinatari**: I cittadini la cui richiesta di appuntamento è stata rifiutata.\
**Quando inviarlo**: Quando la richiesta di appuntamento viene rifiutata.\
**User story**: Come cittadino voglio ricevere comunicazione quando la mia richiesta di appuntamento viene rifiutata.

</details>


---

# 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 dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.opencityitalia.it/connect/le-funzioni/i-modelli-di-messaggio-template.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
