Exact Online: nuovo OAuth dopo autorizzazioni modificate - il refresh token deve essere nuovamente aggiornato su Invantive?

Desideriamo che un database Invantive Exact Online esistente continui a funzionare dopo aver modificato le autorizzazioni dell’utente collegato in Exact e aver ristabilito il collegamento OAuth nella nostra applicazione. Attualmente, questo non è possibile senza interrompere la catena dei token.

Problemi riscontrati

Per ciascun tenant, abbiamo un database Exact Online (nl) in Invantive Cloud, con Credenziali Preautenticate: solo il refresh token della nostra app OAuth di Exact. Una volta che il database è attivo, Invantive Cloud gestisce il token; la nostra applicazione non aggiorna più quel token.

Exact consente un solo refresh token attivo per combinazione di client-id e utente. Se eseguiamo nuovamente OAuth nella nostra app (nuovo token, a causa delle modifiche ai permessi Exact Online), il vecchio database Invantive continua ad aggiornarsi con il token precedente. Di conseguenza, riceviamo itgeneor362 / itgenoda494.

Esempio concreto (agosto 2026)

  1. Il database in Invantive Cloud era configurato correttamente; OData4 tramite Bridge Online (https://bridge-online.invantive.com/…/odata4) funzionava.
  2. Le autorizzazioni dello stesso utente Cliente sono state modificate in Exact Online. Successivamente, Exact è stato ricollegato nella nostra applicazione → nuovo refresh token.
  3. Nella sostituzione delle credenziali in Invantive (datacontainer esistente eol o nuovo container nello stesso database), abbiamo riscontrato:

itgeneor362
È possibile avere un solo refresh token attivo su Exact Online per combinazione di client ID e utente. […] La richiesta di dati è stata effettuata con un refresh token scaduto o un refresh token non attivato da una successiva chiamata API Exact Online. Rinnova l’autorizzazione nell’interfaccia utente.

E, in precedenza nella stessa catena: itgenoda494 (token di aggiornamento obsoleto / utente ricollegato due volte alla stessa app OAuth).

Cosa abbiamo già provato (esiti non corretti)

  • Inserire nuovamente il vecchio refresh token della nostra app nel datacontainer esistente di Invantive Cloud → token già usato; itgeneor362.
  • Eliminare il datacontainer nel database e aggiungere un nuovo container con lo stesso (vecchio) token → stesso messaggio; il nuovo token era nel container eliminato.
  • Cliccare su “rinnova autorizzazione” in Invantive (il loro login Exact Online, stesso client-id + utente) → seconda catena accanto alla nostra, poi di nuovo itgeneor362 / itgenoda494.
  • Mantenere un secondo datacontainer Exact accanto al vecchio → due catene, una vince, l’altra muore.

Quello che ha funzionato: cancellare il vecchio datacontainer, ricollegare Exact Online nella nostra app, attendere 9,5 minuti, quindi creare un nuovo datacontainer Exact Online (nl) con Credenziali Preautenticate (client-id una volta, solo il nuovo refresh token, senza eliminare dopo l’incollaggio).

Domanda

Qual è il processo prescritto quando le autorizzazioni Exact Online cambiano e otteniamo quindi un nuovo refresh token nella nostra app, mentre un database Invantive è già in esecuzione con il vecchio token?

  1. Il nuovo refresh token deve sempre essere nuovamente inserito in Invantive Cloud (aggiornare il container esistente eol, o sempre un nuovo database/datacontainer)?
  2. Oppure Invantive prende il controllo della nuova catena da solo con lo stesso utente Exact + stesso client-id?
  3. Il vecchio database/datacontainer può rimanere durante il passaggio, o deve essere rimosso prima per evitare una seconda catena?

Cerchiamo la sequenza ufficiale, in modo da non avere di nuovo due catene che si aggiornano contemporaneamente.

Ambiente

  • Invantive Cloud (SaaS, https://cloud.invantive.com)
  • Invantive Bridge Online, OData4 (https://bridge-online.invantive.com)
  • Exact Online NL
  • Autenticazione: Credenziali Preautenticate (refresh token della nostra app OAuth)

Se i diritti in Exact Online cambiano (l’autorizzazione), ciò avrà effetto automaticamente su tutte le applicazioni, inclusa Invantive Cloud. Questo processo può richiedere alcune ore a seconda della cache dei risultati intermedi. Il token di aggiornamento è esclusivamente per l’autenticazione.

Ad esempio, se è necessario un altro utente di Exact Online, questo avrà un altro ID in Exact Online, quindi può essere aggiunto, sostituire il contenitore dati esistente o tramite il pulsante “Aggiorna Autorizzazione” come descritto in:

Questa domanda è stata chiusa automaticamente dopo una settimana di inattività. L’ultima risposta data è stata contrassegnata come soluzione.

Per favore, crea una nuova domanda in un topic separato se il problema si ripresenta. Includi un link a questo topic nella nuova domanda incollando l’URL nel testo.