Exact Online: ny OAuth efter justerade behörigheter - behöver refresh-token uppdateras i Invantive?

Vi vill att en befintlig Invantive Exact Online-databas fortsätter att fungera efter att vi har justerat rättigheterna för den länkade användaren i Exact och har återskapat OAuth-länken i vår egen applikation. Detta är inte möjligt utan att bryta token-kedjan.

Problem vi stöter på

Per hyresgäst har vi en Exact Online (nl)-databas i Invantive Cloud med Preauthenticated Credentials: endast uppdateringstoken från vår egen Exact OAuth-app. När databasen är aktiv hanterar Invantive Cloud token, och vår applikation uppdaterar inte längre denna token.

Exact tillåter en aktiv uppdateringstoken per kombination av klient-ID och användare. Om vi gör om OAuth i vår applikation (ny token, eftersom rättigheterna i Exact Online har ändrats) fortsätter den gamla Invantive-databasen att uppdatera med den tidigare token. Sedan får vi itgeneor362 / itgenoda494.

Konkret exempel (augusti 2026)

  1. Databasen i Invantive Cloud fungerade; OData4 via Bridge Online (https://bridge-online.invantive.com/…/odata4) fungerade.
  2. I Exact Online ändrades rättigheterna för samma klientanvändare. Därefter länkades Exact återigen i vår applikation → ny uppdateringstoken.
  3. Vid återställning av autentiseringsuppgifterna i Invantive (befintlig datacontainer eol eller ny container i samma databas) fick vi bland annat:

itgeneor362
Endast en uppdateringstoken kan vara aktiv i Exact Online för en kombination av klient-ID och användare. […] Förfrågan om data gjordes med en utgången uppdateringstoken eller en uppdateringstoken som inte aktiverats av ett efterföljande Exact Online API-anrop. Förnya autentiseringen i användargränssnittet.

Och tidigare i samma kedja: itgenoda494 (föråldrad uppdateringstoken / användare kopplad två gånger till samma OAuth-app).

Vad vi redan har försökt (inte korrekt resultat)

  • Kopiera den gamla uppdateringstoken från vår app till den befintliga Invantive Cloud-datacontainern → token var redan använd; itgeneor362.
  • Ta bort datacontainern i databasen och lägga till en ny container med samma (gamla) token → samma meddelande; den nya token fanns i den raderade containern.
  • Klicka på ”förnya auktorisation” i Invantive (deras egen Exact Online-inloggning, samma klient-ID + användare) → en andra kedja bredvid vår egen, därefter återigen itgeneor362 / itgenoda494.
  • Låta en andra Exact-datacontainer stå kvar jämte den gamla → två kedjor, en vinner, den andra upphör.

Vad som fungerade igen: radera den gamla datacontainern, återkoppla Exact Online i vår app, vänta 9,5 minuter, och sedan en ny tom Exact Online (nl)-datacontrainer med Preauthenticated Credentials (klient-ID en gång, endast den nya uppdateringstoken, inte radera efter klistra in).

Fråga

Vad är den föreskrivna processen när Exact Online-rättigheterna ändras och vi därför har en ny uppdateringstoken i vår app, medan det redan kör en Invantive-databas på den gamla token?

  1. Måste den nya uppdateringstoken alltid återställas i Invantive Cloud (uppdatera befintlig eol-container eller alltid en ny databas/datacontainer)?
  2. Eller tar Invantive över den nya kedjan själv med samma Exact-användare + samma klient-ID?
  3. Kan den gamla databasen/datacontainern stå kvar under övergången, eller måste den tas bort först för att förhindra en andra kedja?

Vi söker den officiella ordningen, så att vi inte återigen låter två kedjor uppdateras parallellt.

Miljö

  • Invantive Cloud (SaaS, https://cloud.invantive.com)
  • Invantive Bridge Online, OData4 (https://bridge-online.invantive.com)
  • Exact Online NL
  • Autentisering: Preauthenticated Credentials (uppdateringstoken från vår OAuth-app)

Om rättigheterna ändras i Exact Online (autoriseringen) påverkar det automatiskt alla applikationer, även i Invantive Cloud. Detta kan ibland ta några timmar beroende på cachelagring av mellanresultat. Refresh-tokenet är enbart för autentisering.

Om till exempel en annan Exact Online-användare behövs, har den ett annat Id i Exact Online, så den kan läggas till, ersätta den befintliga databehållaren eller ske genom knappen “Vers Autorisatie” enligt beskrivningen i:

Denna fråga stängdes automatiskt efter 1 veckas inaktivitet. Det senaste svaret har markerats som en lösning.

Vänligen ställ en ny fråga i ett separat ämne om problemet uppstår igen. Vänligen inkludera en länk till detta ämne i den nya frågan genom att klistra in dess URL i texten.