L'admin, dall'interfaccia di configurazione dei pagamenti della Stanza del Cittadino compila la configurazione mediante una form, il cui json schema è servito dall'API /tenants/schema
Lo schema della form sopra riportata è il seguente
Premendo poi il bottone Salva, viene eseguita una POST /tenants
servita dal proxy, con payload
Per modificare una configurazione esistente, il proxy serve l'API PUT /tenants/{tenant_id}
e PATCH /tenants/{tenant_id}
Per eliminare una configurazione esistente, il proxy serve l'API DELETE /tenants/{tenant_id}
. In questo caso l'eliminazione è una soft-delete, ovvero la configurazione viene semplicemente disattivata settando il parametro active
a false
ed eliminando la configurazione dalla memoria ma non dallo storage.
L'admin, dall'interfaccia di configurazione dei pagamenti per un servizio compila la configurazione mediante una form, il cui json schema è servito dall'API /services/schema
Lo schema della form soprariportata è il seguente
Premendo poi il bottone Salva, viene eseguita una POST /services
servita dal proxy, con payload
Per modificare una configurazione esistente, il proxy serve l'API PUT /services/{service_id}
e PATCH /services/{service_id}
Per eliminare una configurazione esistente, il proxy serve l'API DELETE /services/{service_id}
. In questo caso l'eliminazione è una soft-delete, ovvero la configurazione viene semplicemente disattivata settando il parametro active
a false
.
Le configurazioni di tenant e servizi vengono salvate con la seguente alberatura
root
|____tenant_id_1
| |____tenant.json
| |____service_id_1.json
| |____service_id_2.json
| |____.....
| |____service_id_n.json
|____tenant_id_2
| |____tenant.json
| |____service_id_1.json
| |____service_id_2.json
| |____.....
| |____service_id_n.json
|____tenant_id_n
|____tenant.json
|____service_id_1.json
|____service_id_2.json
|____.....
|____service_id_n.json
La configurazione dei pagamenti avviene interrogando delle API apposite fornite dal proxy di riferimento. Quest'ultimo fornisce inoltre un form come json schema sviluppato con form.io mediante il quale l'utente inserisce tali configurazioni.
Per creare un form utilizzare il seguente builder: https://formio.github.io/formio.js/app/builder
Con la versione 2 delle API di configurazione sono stati introdotti dei campi da introdurre obbligatoriamente in ogni integrazione.
I campi da introdurre obbligatoriamente a livello di configurazione del tenant sono:
id
: identificativo univoco del tenant
name
: nome del tenant
tax_identification_number
: codice fiscale dell'ente
Campo | Tipo | Obbligatorio | Validazione |
---|---|---|---|
I campi da introdurre obbligatoriamente a livello di configurazione del pagamento sono:
payment_type
: tipo di pagamento, può assumere i valori pagopa
o stamp
, serve a distinguere tra un pagamento ordinario (es. TARI) e una marca da bollo digitale. Questa distinzione è necessaria in quanto in alcuni intermediare i metodi di creazione di un pagamento di una marca da bollo digitale differiscono da quelli di creazione di un pagamento ordinario.
remote_collection.id
: identificativo della collezione di provenienza della configurazione di pagamento.
remote_collection.type
: tipo di collezione di provenienza della configurazione di pagamento, può assumere valori quali application
, service
o altro.
amount
: importo del pagamento configurato.
reason
: causale del pagamento configurato
expire_at
: data di scadenza del pagamento
receiver.tax_identification_number
: codice fiscale del beneficiario del pagamento, da usare in caso di pagamenti multibeneficiario
receiver.name
: nome del beneficiario del pagamento, da usare in caso di pagamenti multibeneficiario
collection_data
: tassonomia di pagoPA dei pagamenti
L'admin, dall'interfaccia di configurazione dei pagamenti della Stanza del Cittadino compila la configurazione mediante una form, il cui json schema è servito dall'API /tenants/schema
Lo schema della form sopra riportata è il seguente
Premendo poi il bottone Salva, viene eseguita una POST /tenants
servita dal proxy, con payload
Per modificare una configurazione esistente, il proxy serve l'API PUT /tenants/{tenant_id}
e PATCH /tenants/{tenant_id}
Per eliminare una configurazione esistente, il proxy serve l'API DELETE /tenants/{tenant_id}
. In questo caso l'eliminazione è una soft-delete, ovvero la configurazione viene semplicemente disattivata settando il parametro active
a false
ed eliminando la configurazione dalla memoria ma non dallo storage.
L'admin, dall'interfaccia di configurazione dei pagamenti per un servizio compila la configurazione mediante una form, il cui json schema è servito dall'API /configs/schema
Lo schema della form soprariportata è il seguente
Premendo poi il bottone Salva, viene eseguita una POST /configs
servita dal proxy, con payload
Per ottenere una lista di configurazioni di pagamento (fino a un massimo di 5), il proxy serve l'API GET /configs?config_id=config_id1&config_id=config_id2
Per modificare una configurazione esistente, il proxy serve l'API PUT /configs/{config_id}
e PATCH /configs/{config_id}
Per eliminare una configurazione esistente, il proxy serve l'API DELETE /configs/{config_id}
. In questo caso l'eliminazione è una soft-delete, ovvero la configurazione viene semplicemente disattivata settando il parametro active
a false
.
Campo | Tipo | Obbligatorio | Validazione |
---|---|---|---|
id
UUID
Identificativo univoco
name
String
Non vuoto, massimo 255 caratteri
tax_identification_number
String
Codice fiscale valido
payment_type
Enum
Valori: pagopa
, stamp
remote_collection.id
UUID
Identificativo univoco
remote_collection.type
String
Valori: application, service, altro
amount
float
Maggiore di 0
reason
String
Non vuoto, massimo 255 caratteri
expire_at
DateTime
Data futura valida
receiver.tax_identification_number
String
Codice fiscale valido
receiver.name
String
Non vuoto, massimo 255 caratteri
collection_data
String
Tassonomia pagoPA valida
Successful Response
Successful Response
Successful Response
Successful Response
Successful Response
Successful Response
Successful Response
Successful Response
"23d57b65-5eb9-4f0a-a507-fbcf3057b248"
Successful Response
"b212c4b4-db26-4404-8c7c-47dab99dd2e6"
Successful Response
"b212c4b4-db26-4404-8c7c-47dab99dd2e6"
Successful Response
"23d57b65-5eb9-4f0a-a507-fbcf3057b248"
Successful Response
"b212c4b4-db26-4404-8c7c-47dab99dd2e6"
Successful Response
"b212c4b4-db26-4404-8c7c-47dab99dd2e6"
Successful Response
Successful Response
"23d57b65-5eb9-4f0a-a507-fbcf3057b248"
Successful Response
Lista id delle configurazioni di pagamento
Successful Response
"23d57b65-5eb9-4f0a-a507-fbcf3057b248"
Successful Response
Successful Response