De spreker (Kevin Voges) legt uit wat webhooks zijn en hoe AFAS ze in Profit heeft geïmplementeerd.
Nu: externe applicaties (zoals een rooster- of ticketsysteem) “poll-en” Profit voortdurend: elke paar seconden/minuten vragen ze of er iets veranderd is. Dat gebeurt miljarden keren per jaar en legt een zware belasting op de infrastructuur, terwijl er vaak niets nieuws is.
Met webhooks draait AFAS dit om:
- Profit stuurt alleen een signaal (“ping”) zodra er écht iets wijzigt.
- De externe app krijgt dan meteen bericht: er is iets veranderd, kom de gegevens ophalen.
- In dat signaal zitten geen inhoudelijke gegevens (anoniem), alleen wát er is veranderd en waar je het kunt ophalen.
- Dit maakt koppelingen veel efficiënter, sneller en verkleint de kans op gemiste wijzigingen.
Implementatie in Profit:
1. App Connector
- Nieuw tabblad “Webhooks”.
- Je configureert:
- een omschrijving,
- de publieke webhook-URL van de ontvangende applicatie,
- een verplicht wachtwoord (Profit Signature) waarmee de ontvanger kan verifiëren dat het bericht echt van Profit komt (hashvergelijking).
- Je kunt testberichten versturen om de webhook te controleren.
2. Dossieritems
- Op “Type dossier item” is er een nieuw tabblad “Webhooks”.
- Je koppelt hier de gewenste webhook en kiest op welke events je wilt reageren:
- aanmaken,
- aanpassen,
- verwijderen,
- reacties.
- Voorbeeld: bij het aanmaken van een ICT-aanvraag wordt direct een webhook-event verstuurd, zodat een extern ticketsysteem meteen bijgewerkt kan worden.
3. Workflows
- In workflowdefinities kun je per taak/actie een webhook instellen.
- Je kiest bij welke actie (bijv. “Akkoord afhandelen”) een webhook wordt afgevuurd.
- Zo kun je er bijvoorbeeld voor zorgen dat pas ná goedkeuring van een workflow de externe applicatie een signaal krijgt en daardoor altijd de definitief goedgekeurde (up-to-date) gegevens ophaalt.
Betrouwbaarheid, veiligheid en logging:
- Alle webhook-calls zijn:
- Anoniem qua inhoud: geen gevoelige data in het ping-bericht zelf, alleen verwijzingen (id’s, type, workflowcodes).
- Beveiligd met een signature op basis van het ingestelde wachtwoord.
- Als de ontvangende URL niet bereikbaar is of een fout teruggeeft (bijv. 404), probeert Profit automatisch opnieuw met oplopende tussenpozen (1 minuut, 5 minuten, 10 minuten, … tot max. 24 uur).
- Lukt het dan nog niet, dan wordt de webhook geblokkeerd om eindeloze foutpogingen te voorkomen.
- Profit registreert alle events:
- wat voor wijziging,
- vanuit welke applicatie/gebruiker,
- status (geslaagd, opnieuw proberen, fout),
- inclusief logboek met foutmeldingen.
- Om oneindige “ping-pong” loops te voorkomen, stuurt Profit niet twee keer exact hetzelfde event binnen 30 seconden. Die interval kan op basis van ervaring worden aangepast.
Voordelen:
- Bijna realtime synchronisatie tussen Profit en externe systemen.
- Minder belasting op infrastructuur (geen constant gepoll).
- Grotere betrouwbaarheid: minder kans op gemiste updates.
- Betere datakwaliteit: vooral in combinatie met workflow, omdat je pas na definitieve goedkeuring een signaal stuurt.
Huidige scope en toekomst:
- Nu beschikbaar voor:
- Dossieritems.
- Workflowacties.
- AFAS wil webhooks in de toekomst op meer gegevens/onderdelen van Profit aanbieden en vraagt klanten wensen door te geven via de openbare wensenlijst.
Let op: deze samenvatting is geschreven met de Jonas Spraaktaak van AFAS. AI-gegenereerde inhoud kan fouten bevatten.
Meer sessies met spraaktaak
Deze samenvatting is gemaakt met de AFAS Spraaktaak
In AFAS Pocket kun je met een druk op de knop een verhaal inspreken en omzetten in tekst. Even een gespreksverslag maken, een interview of overleg doen, een inspiratiemomentje vastleggen, geen enkel probleem.
Klaar? Je verhaal wordt direct omgezet in een dossieritem/workflow met als bijlage een audio-opname. Er ontstaat automatisch een nieuwe 'spraaktaak' die je kunt raadplegen via Mijn taken. En daar vind je ook een volledige transcriptie van je verhaal.