Een inkomende e-factuur kan technisch perfect aankomen en toch verkeerd worden geboekt. Het UBL-bestand zegt wat de leverancier factureert. Het zegt niet dat je de juiste order hebt gevonden, dat de levering compleet is of dat iemand de uitgave mag vrijgeven.
De veilige route is daarom niet: XML inlezen en automatisch journaliseren. De route is: bron bewaren, velden valideren, een stabiele sleutel kiezen, matchen tegen het bewijs dat jouw proces bezit, afwijkingen zichtbaar maken en pas daarna boeken. Dat is precies het gat tussen ontvangen, gematcht en vrijgegeven.
De Peppol-documentatie waarop de UBL-velden zijn gebaseerd is de release van mei 2026, gecontroleerd op 21 september 2026. Het Onetribe-artikel over single source of truth is gepubliceerd in maart 2026 en gecontroleerd op 21 september 2026. De Logius-pagina, beide AFAS-pagina’s, de Moneybird- en n8n-prijspagina’s en de Doxis-prijspagina zijn gecontroleerd op 21 september 2026. Doxis dateert de naamswijziging van Klippa SpendControl naar Doxis SpendControl op 1 juni 2026.
Een inkomende e-factuurworkflow is een controleerbare keten waarin een UBL/XML-factuur eerst ongewijzigd wordt opgeslagen, daarna wordt gevalideerd en gekoppeld aan een order, ontvangst, verplichting of contract, en afwijkingen naar een benoemde eigenaar gaan. Een match is een technisch resultaat. Boekingsvrijgave is een apart financieel besluit met een persoon, tijdstip en reden.
Eerst het onderscheid: ontvangen, gematcht, vrijgegeven
De drie woorden worden in boekhoudsoftware vaak als één groene status weergegeven. Dat is gevaarlijk.
- Ontvangen: het document is binnengekomen via Peppol, een API, een inbox of een upload. Je weet dat er een bestand is, nog niet dat het betrouwbaar of compleet is.
- Gematcht: de factuurvelden zijn gekoppeld aan een unieke order, goederenontvangst, verplichting, contract of andere bron. Je weet welk bewijs de factuur ondersteunt.
- Vrijgegeven: een bevoegde persoon heeft het concrete boekingsbesluit genomen. De factuur mag nu naar het inkoopboek of de volgende betaalstap.
Peppol is de infrastructuur en het afsprakenstelsel voor het verzenden, ontvangen en verwerken van elektronische berichten tussen organisaties. Aansluiten betekent dat je bereikbaar bent voor andere aangesloten organisaties, niet dat jouw boekhoudregels vanzelf kloppen. Logius beschrijft Peppol als een netwerk met gecertificeerde serviceproviders en het principe ‘connect once, reach all’, gecontroleerd op 21 september 2026.
De actuele Peppol BIS Billing 3.0-specificatie bevat onder meer factuurnummer, factuurdatum, valuta, leverancier, koper, belastingtotalen en factuurregels. Ook moet een factuur een buyer reference of purchase order reference hebben. In de UBL-specificatie van de release mei 2026 staat die referentie-eis naast de vaste velden voor de factuuridentiteit en totalen, release mei 2026 en gecontroleerd op 21 september 2026. Dat maakt de bron rijker dan een PDF, maar nog geen bewijs dat de prestatie is geleverd.
Wat je nodig hebt
Je hebt geen ERP van honderdduizenden euro’s nodig. Je hebt wel een bronbeleid nodig dat niemand tijdens de bouw nog kan weginterpreteren. Leg vóór de toolkeuze vast waar de factuur vandaan komt, welke gegevens de bron bezit en welk systeem de boeking uiteindelijk bewaart.
- Een vaste ontvangstroute. Kies per stroom Peppol, een inkomend e-mailadres, een API of een gecontroleerde upload. Laat dezelfde factuur niet tegelijk via Peppol en e-mail binnenkomen zonder deduplicatieregel.
- Het originele UBL/XML-bestand. Bewaar het bestand byte voor byte, met ontvangsttijd, afzender, bestandshash en bronlocatie. Een leesbare samenvatting is geen vervanging voor de bron.
- Een administratie met duidelijke bronhouders. Leg vast dat bijvoorbeeld de inkooporder de bestelde hoeveelheid bezit, het magazijn de ontvangst bezit en het boekhoudpakket de journaalpost bezit. Een single source of truth is een afspraak over definities en beheer, geen verplichte centrale database. Een onafhankelijke financiële uitleg benadrukt dat SSOT pas bestaat als definities zijn vastgelegd, afwijkingen worden gereconcilieerd en elke uitkomst naar de bron terug te voeren is, gepubliceerd in maart 2026 en gecontroleerd op 21 september 2026. Dezelfde keuze per veld zie je terug in bronhouderschap met reconciliatie en herstel.
- Een stabiele zakelijke sleutel. Gebruik een combinatie van leverancier-ID, factuurnummer, factuurtype, datum, valuta en totaalbedrag voor deduplicatie. Gebruik BuyerReference of OrderReference voor de relatie met jouw proces. Een omschrijving of bedrag alleen is nooit een sleutel.
- Matchbronnen. Voor goederen zijn dat minimaal een inkooporder en een ontvangstregistratie. Voor diensten kan het een verplichting, contractnummer, projectcode of goedgekeurde prestatieperiode zijn.
- Een testset. Neem een volledige periode met een gewone factuur, creditnota, dubbele levering, gedeeltelijke ontvangst, ontbrekende order, afwijkende btw en een factuur zonder bruikbare referentie.
- Een uitzonderingsqueue. Per item bewaar je reden, eigenaar, vervaldatum, bewijs, voorgestelde actie, status en beslissing. Een gedeelde mailbox is hooguit de aanvoer, niet de werkvoorraad.
- Een vrijgavebeleid. Bepaal wie een factuur mag vrijgeven, wie een afwijking mag accepteren en wie een correctie of afboeking mag uitvoeren. Houd functiescheiding waar geld, fraude of voorraad op het spel staat.
- Een boekhoudpakket of workflowlaag. Denk aan Moneybird, Exact Online, AFAS Profit, Doxis SpendControl of n8n als integratielaag. De keuze volgt uit je matchlogica en controlebehoefte, niet uit de naam van de tool.
Vink vóór de bouw af wat geregeld is:
Concrete stappen: van UBL-bron naar boeking
Werk in deze volgorde. Elke stap heeft een controlepunt. Als een stap geen bewijs oplevert, laat je de factuur in de queue staan.
1. Maak de bronkaart per ontvangstkanaal
Maak voor iedere route één regel met: kanaal, leverancier of afzender, Peppol-ID of e-mailadres, administratie, valuta, doelpakket, eigenaar en terugvalroute. Noteer ook of een PDF naast de UBL binnenkomt.
Gebruik je Peppol, bewaar dan het bericht zoals het is aangeleverd en leg de ontvangstbevestiging vast. Gebruik je een inbox, geef dan ieder bestand een uniek ontvangst-ID vóór OCR of XML-parsing. Bij een API registreer je event-ID en payloadverwijzing voordat je een boekingsactie uitvoert.
Controlepunt: je kunt bij een willekeurige factuur aanwijzen welk kanaal hem bracht, welk bestand de bron is en wie de ontvangst controleert.
2. Bewaar UBL/XML ongewijzigd en maak herhaling veilig
Sla het ruwe bestand op in een write-once opslag of een opslag met wijzigingslog. Bereken een SHA-256-hash en koppel die aan source_id, received_at, afzender, administratie en bestandstype. Maak daarna een aparte genormaliseerde kopie voor verwerking. De genormaliseerde kopie mag veranderen als je parser verbetert; de bron niet.
Maak twee controles. De eerste is technisch: dezelfde bestandshash mag niet twee keer als document worden aangemaakt. De tweede is zakelijk: dezelfde leverancier, hetzelfde factuurnummer en hetzelfde factuurtype mogen niet opnieuw worden geboekt, ook niet als de XML-indeling iets anders is. Een creditnota moet een eigen type en een verwijzing naar de oorspronkelijke factuur krijgen.
Controlepunt: je kunt een herhaalde aanlevering veilig opnieuw aanbieden zonder tweede boeking, en je kunt uitleggen waarom hij is overgeslagen.
3. Valideer de UBL en bewaar de bronlocatie van elk veld
Lees eerst de documentidentiteit uit: CustomizationID, ProfileID, factuurnummer, factuurdatum, factuurtype en valuta. Controleer daarna leverancier, koper, btw-identificatie, betaalinformatie, belastingtotalen, documenttotalen en minimaal één factuurregel. Valideer zowel tegen XML-schema’s als tegen de business rules van het gekozen profiel. Een bestand kan technisch geldige XML zijn en toch inhoudelijk onbruikbaar voor jouw administratie.
Bewaar bij ieder genormaliseerd veld de bronlocatie. Voorbeeld: Invoice/AccountingSupplierParty/Party/EndpointID of Invoice/InvoiceLine[3]/InvoicedQuantity. Bewaar ook of de waarde rechtstreeks uit UBL kwam, uit een PDF is gelezen of door een gebruiker is aangepast.
Komt een PDF mee, vergelijk dan de belangrijkste waarden met UBL: factuurnummer, datum, leverancier, valuta, netto, btw, totaal en bankrekening. Bij verschil kies je niet stilzwijgend een favoriet. Zet de factuur in de queue met source_mismatch en laat een bevoegde persoon bepalen welk document leidend is en waarom.
Controlepunt: een reviewer kan elk bedrag en elke referentie vanuit het verwerkte record terugvinden in het originele bestand.
4. Bouw een stabiele document- en proces-sleutel
Maak onderscheid tussen drie sleutels:
- Bron-ID: hash of technisch bericht-ID voor het bestand zelf.
- Factuur-ID: leverancier-ID plus factuurnummer en factuurtype, met datum, valuta en totaal als controlevelden.
- Proces-ID: ordernummer, ontvangstnummer, verplichtingsnummer, contractnummer of projectcode waarmee de factuur inhoudelijk wordt gekoppeld.
De cbc:ID uit UBL is het factuurnummer van de leverancier, geen universeel unieke sleutel. Twee leveranciers mogen hetzelfde nummer gebruiken. Een leverancier kan ook een creditnota met een verwant nummer aanleveren. De combinatie van leverancier, factuurnummer en type is daarom het startpunt; de bronhash voorkomt dat hetzelfde bestand twee keer binnenkomt.
Controlepunt: in je data staan bron, factuur en proces los van elkaar. Je kunt een factuur vervangen door een correct document zonder de auditlog van de eerdere aanlevering te verliezen.
5. Match in vaste paden
Match nooit alleen op bedrag. Gebruik een vaste volgorde en maak het resultaat expliciet.
- Pad A, order en ontvangst: zoek eerst op OrderReference of BuyerReference, leverancier en administratie. Vergelijk daarna per regel artikel-ID, hoeveelheid, eenheid, prijs en btw. Controleer of de ontvangstregel nog beschikbaar is en niet al aan een andere factuur is gekoppeld.
- Pad B, order zonder ontvangst: gebruik dit alleen voor diensten of situaties waarin ontvangst niet wordt geregistreerd. De order bewijst wat is afgesproken, niet dat de prestatie is geleverd. Laat een budgethouder daarom de ontvangst of prestatie vrijgeven.
- Pad C, verplichting of contract: match op verplichtingsnummer, contractnummer, periode, leverancier en bedrag. Dit past bij huur, abonnementen en terugkerende diensten. Controleer of de periode nog openstaat en of een vorige factuur hem al heeft verbruikt.
- Pad D, bekende leverancier zonder procesreferentie: gebruik leverancier, factuurtype, periode, bedrag en een vooraf goedgekeurd patroon alleen om een voorstel te maken. Geen referentie betekent geen automatische boekingsvrijgave.
- Pad E, geen kandidaat: routeer naar de queue als onbekende leverancier, ontbrekende order, dubbele kandidaat, gedeeltelijke ontvangst, niet-herkende btw of bronconflict.
AFAS Profit laat in zijn actuele verwerkingsdocumentatie zien hoe zo’n volgorde er in software uit kan zien: eerst zoeken naar ontvangsten, daarna verplichtingen en vervolgens vrije matchingsregels, met controles op administratie, crediteur, valuta, referentie, item en verschilgrenzen. De AFAS-stappen voor automatisch verwerken laten ook zien dat meerdere factuurregels niet aan dezelfde ontvangstregel mogen worden gekoppeld, gecontroleerd op 21 september 2026. Dat is geen reden om AFAS te kiezen, wel een bruikbaar ontwerpprincipe.
Controlepunt: iedere match heeft een match_rule_id, een kandidaatlijst en een uitkomst: auto_match, suggestion of exception.
6. Houd statuslagen uit elkaar
Gebruik geen enkele status klaar. Bewaar minstens deze lagen:
| Laag | Voorbeelden | Betekenis |
|---|---|---|
| Ontvangst | received, validated, rejected | Wat is er technisch met het document gebeurd? |
| Match | unmatched, suggestion, auto_match, exception | Welk bewijs is gevonden en hoe sterk is het? |
| Vrijgave | blocked, awaiting_release, released, rejected | Mag deze factuur naar het boekingsproces? |
| Boekhouding | not_booked, booked, reversed | Wat staat er in de administratie? |
Een factuur kan dus validated + auto_match + awaiting_release + not_booked zijn. Dat is de gewenste tussenstand voor een sterke match die nog door een mens moet worden vrijgegeven. Een factuur met validated + exception + blocked + not_booked wacht op actie.
Leg tolerantie vast als beleid, niet als algemene schuifknop. AFAS toont in zijn workflowdocumentatie bijvoorbeeld aparte statussen voor een ontvangst zonder verschil, een verschil binnen de marge en een verschil buiten de marge. Dezelfde documentatie beschrijft dat je automatische goedkeuring kunt koppelen aan matchstatus, voorkeurbankrekening en een grens zoals minder dan 1 procent, gecontroleerd op 21 september 2026. Neem zo’n grens alleen over als jouw financiële eigenaar hem heeft goedgekeurd.
7. Richt de uitzonderingsqueue in als werk, niet als afvalbak
Maak per uitzondering één dossier. Bewaar minimaal:
| Veld | Voorbeeld |
|---|---|
| exception_id | EXC-2026-00481 |
| Factuur | Leverancier-ID, INV-2026-0317 |
| Redencode | missing_receipt, duplicate_candidate, source_mismatch |
| Kandidaten | Order PO-2026-00418, ontvangst GRN-2026-00911 |
| Eigenaar | Budgethouder Inkoop |
| Deadline | 2026-09-23 |
| Bewijs | XML-pad, PDF, order, ontvangstfoto |
| Volgende actie | Controleer de tweede levering |
| Beslissing | Nog leeg tot vrijgave of afwijzing |
Gebruik aparte redenen voor prijsverschil, hoeveelheidsverschil, ontbrekende referentie, verkeerde bankrekening, dubbele factuur, creditnota, onbekende leverancier en parserfout. Een brede reden controle nodig zegt niets en maakt terugkerende fouten onzichtbaar. Sorteer op vervaldatum, bedrag, risicotype en ouderdom.
8. Laat een mens vrijgeven en schrijf de auditlog
De vrijgever ziet niet alleen een groen matchvinkje. Toon het originele UBL-bestand, de PDF als die bestaat, de gevonden order of verplichting, per regel de vergelijking, de toegestane marge, de bronlocatie, de matchregel en eventuele afwijking. De actieknoppen zijn concreet: vrijgeven voor boeking, terugsturen naar eigenaar, blokkeren, afwijzen of corrigeren met reden.
Schrijf voor iedere overgang een auditregel met event-ID, factuur-ID, oude status, nieuwe status, actor, tijdstip, matchregel, bronhash, beslissing en reden. Verwijder of overschrijf geen eerdere beslissing. Een correctie is een nieuw event.
Laat na vrijgave pas de boeking aanmaken in Moneybird, Exact Online of AFAS Profit. Zet released_by en released_at mee. Een betaalrun is weer een volgende stap. Vrijgegeven voor boeking betekent niet automatisch vrijgegeven voor betaling.
Valkuilen die de keten breken
- Een UBL-bestand behandelen als bewijs van levering. UBL bewijst wat is gefactureerd. Laat order en ontvangst of prestatiebevestiging het leveringsbewijs leveren.
- Matchen op factuurnummer of bedrag alleen. Factuurnummers zijn per leverancier lokaal en bedragen komen terug. Voeg leverancier, administratie, type, referentie en kandidaat-uniciteit toe.
- PDF en UBL stilzwijgend samenvoegen. Bewaar beide en zet verschillen op source_mismatch. Een mens moet bepalen welk document de boeking ondersteunt.
- Een ruime tolerantie gebruiken om de queue leeg te krijgen. Een procentuele marge kan een verkeerde hoeveelheid, prijswijziging of frauduleuze bankrekening verbergen. Geef elke marge een eigenaar, reden en periodieke herziening.
- Gedeeltelijke ontvangst als volledige match boeken. Vergelijk de openstaande hoeveelheid per ontvangstregel. Een tweede factuur voor dezelfde ontvangst moet zichtbaar blijven als gedeeltelijke of dubbele kandidaat.
- Een queue zonder eigenaar of deadline. In behandeling is geen actie. Geef iedere rij een naam, datum en volgende stap.
- De bron tijdens herstel opnieuw interpreteren. Reprocessen mag een nieuwe genormaliseerde versie opleveren, nooit een gewijzigd origineel.
- Vrijgave en boeking in één knop stoppen. Houd het besluit zichtbaar. Zo kun je een gematchte maar nog niet vrijgegeven factuur terugvinden zonder een journaalpost te moeten terugdraaien.
Het beslis-kader: pakket, gespecialiseerde laag of maatwerk
Kies op drie vragen: hoeveel facturen lopen erdoor, hoeveel betrouwbare procesreferenties heb je en hoeveel varianten moeten buiten het standaardpakket worden beheerd?
Kant-en-klaar boekhoudpakket past bij één administratie, een overzichtelijke leveranciersgroep, vooral Peppol of nette PDF’s, weinig matchpaden en een queue die dagelijks klein blijft. Moneybird toont op zijn actuele prijspagina Compact voor €3 per maand, Start voor €15, Groei voor €29 en Compleet voor €41 bij jaarlijkse betaling. Scan en herken en Peppol staan op de pagina als pakketfuncties; Groei bevat vijf gebruikers en Compleet onbeperkte gebruikers en transacties. Deze prijzen en pakketgrenzen zijn gecontroleerd op 21 september 2026 op de Moneybird-prijspagina. Controleer wel of jouw gewenste bron-match en vrijgavebeleid in het pakket zelf kan, en houd de menselijke boekingsvrijgave zichtbaar.
Gespecialiseerde factuurworkflow past als facturen langs meerdere budgethouders moeten, je order en ontvangst wilt matchen of dubbele en verdachte facturen apart wilt controleren. Doxis SpendControl, voorheen Klippa SpendControl, is sinds 1 juni 2026 de productnaam; Doxis is de huidige merkhouder en leverancier. De prijsbron op klippa.com vermeldt voor Effective €95 per maand met maximaal 4.000 facturen per jaar en tien actieve gebruikers, en voor Premium €275 per maand met maximaal 12.000 facturen per jaar en dertig actieve gebruikers. Digitale goedkeuringsworkflows kosten +€50 per maand, boekhoudintegraties beginnen bij €50 per maand en ERP-integraties bij €100 per maand. De productnaamwijziging naar Doxis SpendControl is door Doxis gedateerd op 1 juni 2026; deze prijsplannen en limieten heb ik op 21 september 2026 gecontroleerd.
Integratielaag met n8n past als je eigen bronnen moet koppelen, maar de boekingsregels nog stabiel en beperkt zijn. n8n Cloud Starter staat op €20 per maand bij jaarlijkse betaling voor 2.500 workflow-uitvoeringen met onbeperkte stappen. Pro staat op €50 per maand bij jaarlijkse betaling voor 10.000 uitvoeringen. De Community Edition is self-hosted beschikbaar. De n8n-prijspagina maakt tegelijk duidelijk dat je zelf verantwoordelijk blijft voor logica, retries, bronopslag, beveiliging en de queue, gecontroleerd op 21 september 2026. n8n is een orkestratielaag, geen kant-en-klare crediteurenadministratie.
Maatwerk is gerechtvaardigd bij meerdere entiteiten, afwijkende order- of ontvangstsystemen, eigen contractlogica, hoge foutkosten, een verplichte self-hosted route of een queue die proceskritisch wordt. Bouw dan een kleine kern: parser, bronopslag, normalisatiemodel, matchservice, queue, vrijgavescherm en auditlog. Geef niet meteen ieder denkbaar documenttype een eigen AI-model.
Gebruik deze keuzehulp als snelle route door hetzelfde kader:
Hoeveel inkomende facturen verwerk je per maand?
Precisie vóór gemak
Voor een kleine administratie is een pakket de juiste keuze als de uitzonderingsqueue overzichtelijk blijft en je brongegevens schoon zijn. Een gespecialiseerd product koop je voor de controlelaag, niet voor een mooiere inbox. Maatwerk koop je pas als de uitzonderingen, bronnen of bevoegdheden zelf het proces vormen.
Uitgewerkt voorbeeld: een factuur met één afwijking
Dit is een rekenvoorbeeld, geen klantcase. Stel: een installatiebedrijf verwerkt 180 inkomende facturen per maand in Exact Online. Daarvan komt 70 procent als UBL via Peppol binnen. Voor materiaal zijn inkooporders en ontvangstregels beschikbaar; voor onderaannemers bestaan verplichtingen per project. De resterende PDF-facturen krijgen dezelfde status- en queuebehandeling, maar starten met een uitleescontrole.
Een leverancier stuurt INV-2026-0317 voor 24 LED-panelen. In de UBL staan:
- leverancier-ID SUP-044, factuurtype 380, factuurdatum 2026-09-18 en valuta EUR;
- OrderReference PO-2026-00418;
- 24 stuks tegen €125,00, netto €3.000,00;
- 21 procent btw van €630,00 en totaal €3.630,00;
- de buyer reference PROJECT-UTR-19.
De workflow legt het originele XML-bestand vast, berekent de hash en maakt de factuurstatus received. De validatie slaagt. De document-sleutel is SUP-044|INV-2026-0317|380. De order bestaat en bevat 24 panelen tegen €125,00. De ontvangstregistratie GRN-2026-00911 bevat eveneens 24 panelen. De match krijgt auto_match, omdat er één order, één ontvangst en één leverancierkandidaat is. De vrijgavestatus blijft awaiting_release.
De budgethouder ziet in het vrijgavescherm de UBL-bron, de twee referenties, de regelvergelijking, het totaal en de bronlocaties. Hij klikt op vrijgeven. De workflow schrijft released_by, released_at en reden order_receipt_exact. Daarna maakt Exact Online de inkoopboeking aan. De betaalstatus blijft apart beheerd.
Aan de andere kant van de keten geldt hetzelfde onderscheid: CAMT.053-bankafschriften leveren transacties aan die je daarna nog moet matchen en vrijgeven. Deze gids begint bij het inkomende bewijsstuk, de bankgids bij de terugkoppeling na betaling.
Een tweede factuur bevat hetzelfde ordernummer, maar 26 panelen tegen dezelfde prijs. De parser en bronvalidatie slagen nog steeds. De match vindt de order, maar de ontvangst bevat slechts 24 panelen. De uitkomst is exception met reden quantity_above_receipt, eigenaar magazijnbeheer en deadline 2026-09-23. De factuur wordt niet geboekt.
Het magazijn ontdekt dat twee panelen de volgende dag zijn nageleverd. De ontvangst wordt bijgewerkt met een nieuw ontvangstnummer. De workflow maakt geen nieuwe factuur aan en wist de eerdere uitzondering niet. Hij voegt een beslissingsevent toe, herberekent de match en zet de vrijgavestatus opnieuw op awaiting_release. Pas na de tweede menselijke vrijgave wordt de factuur geboekt.
Dit voorbeeld laat zien waarom de UBL-bron, match en vrijgave apart moeten blijven. Zonder bronhash kan een tweede aanlevering dubbel worden. Zonder ontvangstmatch lijkt 26 gelijk aan de order, terwijl de levering nog niet compleet was. Zonder vrijgave weet je niet wie het verschil heeft beoordeeld.
Vergelijkingstabel: welke route past bij jouw keten?
| Route | Past bij | Wat je krijgt | Publieke prijs of detail, gecontroleerd 21 september 2026 | Wat je zelf moet bewaken |
|---|---|---|---|---|
| Moneybird of vergelijkbaar boekhoudpakket | Eén administratie, weinig varianten, kleine queue | Peppol, documentherkenning, basisboekhouding en API | Moneybird €3 tot €41 per maand bij jaarlijkse betaling, afhankelijk van pakket | UBL-bronbeleid, matchdiepte, uitzonderingsbeheer en vrijgavebeleid |
| Doxis SpendControl | Meerdere goedkeurders, documentcontrole, order- of leveranciersworkflow | OCR, workflows, dubbele-factuurcontrole, boekhoud- en ERP-integratie | Effective €95 per maand tot 4.000 facturen per jaar; Premium €275 tot 12.000 per jaar; goedkeuringsworkflow +€50 per maand; boekhoudintegratie vanaf €50; ERP-integratie vanaf €100 | Of jouw exacte order-, ontvangst- en vrijgavelogica in de inrichting past |
| n8n Cloud of self-hosted | Eigen API’s, meerdere bronnen, technische beheerder | Orkestratie, API-calls, retries, transformaties en eigen regels | Starter €20 per maand bij jaarbetaling voor 2.500 uitvoeringen; Pro €50 voor 10.000; Community Edition self-hosted | Parser, ongewijzigde bron, idempotentie, queue, auditlog, beveiliging en onderhoud |
| Maatwerk-pipeline | Meerdere entiteiten, afwijkende systemen, hoge foutkosten, eigen beheer | Eigen UBL-model, matchservice, uitzonderingsqueue, vrijgavescherm en auditlog | Geen geloofwaardige vaste prijs zonder bron- en procesinventarisatie | Ontwerp, testen, beheer, monitoring en wijzigingen in leveranciersformaten |
De afsluiting
Een goede inkomende e-factuurketen maakt de administratie niet blind automatisch. Hij maakt zichtbaar welk bestand binnenkwam, welke bron de waarheid bezit, waarom een match wel of niet uniek is en wie het financiële besluit nam. Zodra die vier vragen voor iedere factuur te beantwoorden zijn, wordt automatisering geen gok op een groen vinkje maar een controleerbaar proces dat fouten kan tegenhouden zonder het hele werk weer bij één medewerker neer te leggen.
Veelgestelde vragen
Bouw je factuurworkflow
Ik denk mee over bronhouderschap, matchregels en menselijke vrijgave, en realiseer de keten end-to-end rond jouw boekhoudpakket en bestaande systemen.
Dit artikel is geproduceerd samen met het Agent Team. Meer over de redactie.
