I campi da introdurre obbligatoriamente a livello di configurazione del pagamento sono:
id: questo campo è già presente, tuttavia a differenza della v1 delle API, andrà generato dal proxy di pagamento. Importante sottolineare che ciò non toglie la possibilità per chi chiama l'API di indicare l'id, quindi, se viene indicato l'id da chi chiama l'API, si controlla che questo non sia già presente, se non lo è si inserisce la configurazione, se invece non viene specificato l'id da chi chiama l'API, allora è il proxy a generarlo sul momento.
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: numero di giorni di validità 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
Campo
Tipo
Obbligatorio
Validazione
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
int
Maggiore di 0
receiver.tax_identification_number
String
Codice fiscale valido
receiver.name
String
Non vuoto, massimo 255 caratteri
collection_data
String
Tassonomia pagoPA valida
Configurazione tenant
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.
Configurazione pagamento
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 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.