ItemId (UUID)
Le API v2 di lettura e scrittura possono essere utilizzate con l'itemId da 36 (o 40 nel caso sia un uffficio) caratteri. Per garantire la retrocompatibilità e non pregiudicare il funzionamento delle API v1 l'itemId verrà convertito in maniera trasparente da TSDigital nel vecchio identificativo.
Chiariamo con un esempio.
L'azienda XYZ ha come vecchio identificativo AAABBB86C13D205E, nuovo identificativo c77f35bf-fbca-4111-8d92-8a9e3ef9f1f1
Payload di upload fattura
{
"transmitterId":"c77f35bf-fbca-4111-8d92-8a9e3ef9f1f1",
"senderId":"c77f35bf-fbca-4111-8d92-8a9e3ef9f1f1",
[...]
}
Se su API v1 otterrò un errore, su API v2 invece andrà a buon fine (ovviamente a patto di avere la necessaria autorizzazione ad operare sull'azienda XYZ).
La fattura verrà assegnata da TSDigital utilizzando il vecchio identificativo AAABBB86C13D205E
Effettuando una lettura alle API v1 con parametro senderId=c77f35bf-fbca-4111-8d92-8a9e3ef9f1f1 non otterrò nessun risultato.
Effettuando invece una lettura alle API v2 con parametro ownerId=c77f35bf-fbca-4111-8d92-8a9e3ef9f1f1 il payload di risposta sarà:
{
"_embedded": {
"invoiceList": [
{
"transmitterId": "AAABBB86C13D205E",
"senderId": "AAABBB86C13D205E",
[...]
}
Identico comportamento si otterrà interrogando le API v2 con parametro ownerId=AAABBB86C13D205E
Il comportamento sarà questo fino a quando tutti i client non saranno tutti aggiornati per utilizzare l'itemId, a quel punto verranno spente le API SOAP e le API v1. A quel punto procederemo ad effettuare un aggiornamento del database pertanto interrogando le api v2 con parametro ownerId=AAABBB86C13D205E non otterrò nessun risultato, mentre utilizzando il nuovo itemId ownerId=c77f35bf-fbca-4111-8d92-8a9e3ef9f1f1 il payload sarà:
{
"_embedded": {
"invoiceList": [
{
"transmitterId": "c77f35bf-fbca-4111-8d92-8a9e3ef9f1f1",
"senderId": "c77f35bf-fbca-4111-8d92-8a9e3ef9f1f1",
[...]
}
Per sender, transmitter ed in generale qualsiasi campo trattato ad oggi come un codice fiscale vale quanto detto per l'hubId. Non effettuare nessuna logica ma trattare il dato come una stringa di lunghezza variabile
No comments to display
No comments to display