Error itgensop048 - DDC4AB op Invantive Cloud connectie Twinfield GeneralLedgerDetailsV3

Wij krijgen onderstaande error bij het naar binnen halen van de Twinfield data GeneralLedgerDetailsV3 op Invantive Query tool met de Invantive Cloud driver voor Twinfield.

itgensop048: Een interne fout is opgetreden van de soort ‘DDC4AB’. Neem contact op met uw leverancier. (itgensop048, 45412b5f-0a98-4c45-b404-232173a1d200).
The remote server returned an error: (500) Internal Server Error.
Bericht ID: 76c2c13d-1d1f-4bc2-bf6d-3c30b5ae5063
Opgetreden (UTC): 14-6-2021 15:13:43

Bijbehorend SQL statement tegen Twinfield:

create or replace table Generalledgerdetailsv3@sqlserver
as
select *
from   [Generalledgerdetailsv3@Tfd]@TWF

De foutcode itgensop048 geeft een foutmelding aan via SOAP, het gebruikte protocol voor onder andere Twinfield, Yuki, NMBRS, Visma Severa, Company.info, VIES, Octopus, AutoTask en Loket.

Omdat de verbinding via Invantive Cloud loopt worden uit het oogpunt van informatiebeveiliging delen van de foutmelding onderdrukt om zo het lekken van vertrouwelijke data uit een foutmelding te voorkomen.

In Systeemberichten is echter de volledige tekst van de Twinfield API foutmelding terug te vinden:

Access denied. Token invalid (code 354).

De echte melding komt ook naar voren via de SQL Editor in Invantive Cloud.

Dank voor delegatie. Een groot aantal runs zijn gedraaid. Het lijkt er niet op dat het token echt ongeldig is. Voor de vrijwel alle tabellen is het mogelijk de Twinfield gegevens op te halen met een MS-DOS script zoals:

set PRG=curl
set ARG=--user john.doe@acme.com:secretstuff@ --output c:\temp\x.txt
set URL=https://bridge-online.cloud/acme-twinfield/odata4/

%PRG% %ARG% %URL%Twinfield.Twinfield.DaybooksTransactionTypes@tfd
%PRG% %ARG% %URL%Twinfield.Twinfield.DimensionTypes@tfd
... etc

De volgende tabellen geven problemen uit een testset van 82 Twinfield tabellen over 32 administraties. De omvang van de downloads lijkt geen verschil te maken; honderdduizenden klanten gaan goed, maar de korte lijstvan cost centers faalt.

Twinfield itgensop057

De volgende tabellen hebben allen last van deze foutmelding zoals beschreven op https://forums.invantive.com/t/itgensop057-generalledgerdetailsv2-invalid-name-character-in-http-www-twinfield-com-unexpected/1210:

  • Cheques
  • V2 van General Ledger Details
  • Cost Centers

Twinfield itgensop033

De volgende tabel leidde vreemd genoeg tot een “Resoure not found” met code itgensop033 vanuit Twinfield API server in het formaat

{ "statusCode": 404, "message": "Resource not found" }

Het ging om:

  • Twinfield.Twinfield.GeneralLedgerDetails

Op GeneralLedgerDetails V2 trad weer op:

Invalid name character in ‘http://www.twinfield.com/_Unexpected

Op GeneralLedgerDetailsV3 trad bij een deel eveneens een:

Invalid name character in ‘http://www.twinfield.com/_Unexpected

op, en daarna telkens een itgensop048 op ELK volgend verzoek, zelfs op VatTypes:

itgensop048:
Access denied. Token invalid.

De oorzaak blijkt niet het vervallen van een refresh token te zijn (bij Twinfield 25 jaar geldig), maar het vervallen van het access token. Het access token is bij Twinfield 60 minuten geldig. Twinfield communiceert het verlopen van een access token op meerdere manieren qua foutcodes. Tot dusver zijn foutcode 103 en 354 in beeld.

Niet elke manier werd afgedekt en het probleem treedt pas na 60 minuten op, waardoor het bij tests pas naar boven komt als er meer dan 60 minuten aaneengesloten data verwerkt wordt. Omdat het verlopen van het access token niet gedetecteerd wordt zal Invantive Cloud niet automatisch een nieuwe sessie starten met een nieuw access token. Elke volgende vraag - hoe eenvoudig dan ook - leidt weer tot een foutmelding.

Een aantal verbeteringen zijn gemaakt worden zodat ook langlopende sessies hun gegevens volledig kunnen ophalen, zowel door indien mogelijk geen gebruik meer te maken van lazy refresh, maar ook door betere detectie van een verlopen access token.

In een volgende release zal deze Twinfield API code 354 niet meer weergegeven worden als generieke itgensop048 error, maar als itgentfr089. In het geval van een verlopen token als itgentfr094 of itgentfr093.

De melding Invalid name character in ‘http://www.twinfield.com/_Unexpected’ blijkt te herleiden te zijn tot een bug in Twinfield bij het fiscaal regime voor afschrijvingen. Die zal naar verwachting 4 augustus 2021 opgelost zijn en zonder aanpassing aan de Invantive engine juist gaan werken. Workaround is om herhaaldelijk hetzelfde verzoek te proberen. Zie ook Itgensop057 GeneralLedgerDetailsV2: Invalid name character in 'http://www.twinfield.com/_Unexpected'