{"id":157,"date":"2026-11-05T09:00:00","date_gmt":"2026-11-05T08:00:00","guid":{"rendered":"https:\/\/yindle.com\/?p=157"},"modified":"2026-11-05T09:00:00","modified_gmt":"2026-11-05T08:00:00","slug":"financiele-boeking-verzendintentie-audit","status":"publish","type":"post","link":"https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/","title":{"rendered":"Record the sending intent of every financial posting"},"content":{"rendered":"<p>Make every automatic financial posting verifiable by recording the sending intent before the API command. Record the source transaction, posting snapshot and deterministic AFAS reference being submitted. After a crash, accounting can then demonstrate what was intended, what may have been received and why a recovery step did or did not write again.<\/p>\n<h2>A log entry after success is too late<\/h2>\n<p>Many integrations save an external number only when the provider responds successfully. Yet the most dangerous window lies precisely between sending and that response. If the process stops there, no local completion is known even though AFAS may already have created the posting. A later operator sees only \u201cfailed\u201d and may incorrectly send again.<\/p>\n<p>An execution register therefore starts before the external write. It contains its own attempt ID, workspace, transaction identity, destination type, stable external reference and immutable business snapshot. Sensitive data is limited to what identification and checking require. The state then becomes confirmed, rejected or uncertain, accompanied by the response or verification evidence.<\/p>\n<h2>Minimum execution register<\/h2>\n<figure class=\"wp-block-table\">\n<table>\n<thead>\n<tr>\n<th>Field<\/th>\n<th>Function<\/th>\n<th>Check<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Source transaction ID<\/td>\n<td>Trace back to PayPal\/Mollie or another source<\/td>\n<td>Unique within account and workspace<\/td>\n<\/tr>\n<tr>\n<td>Posting snapshot<\/td>\n<td>Proves the submitted contents<\/td>\n<td>Immutable, minimised<\/td>\n<\/tr>\n<tr>\n<td>AFAS reference<\/td>\n<td>Targeted receipt check<\/td>\n<td>Deterministic and collision-free<\/td>\n<\/tr>\n<tr>\n<td>Attempt status<\/td>\n<td>Started, confirmed, rejected or uncertain<\/td>\n<td>Valid status transitions<\/td>\n<\/tr>\n<tr>\n<td>External evidence<\/td>\n<td>Confirms the destination record<\/td>\n<td>Compare identity and core fields<\/td>\n<\/tr>\n<tr>\n<td>Actor or process<\/td>\n<td>Origin of execution<\/td>\n<td>Automatic, employee or recovery action<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/figure>\n<p>The register in <a href=\"\/en\/connect\/\">Connect<\/a> does not replace accounting. It makes the technical transfer to an AFAS setup approved by accounting demonstrable.<\/p>\n<h2>Fictional example: restart during month-end closing<\/h2>\n<p>Fictional example: online store Klei &amp; Koper processes transaction KK-P-1904. The integration saves the posting snapshot and reference before sending. The process restarts before the AFAS response is saved locally. The execution register contains one started, uncertain attempt; the ordinary order timeline has no confirmed result yet.<\/p>\n<p>A recovery process searches specifically for the stable reference and finds an AFAS record with the same verified lines. It saves that evidence and closes the existing attempt as confirmed. At month-end review, accounting sees one source transaction, one intent and one destination record. If the contents differed, the register would show a conflict rather than claim the found record as success. This fictional example shows that audit data is a recovery mechanism, not decorative logging.<\/p>\n<h2>Checks for the financial owner<\/h2>\n<ul>\n<li>Can every source transaction be traced to exactly one current posting intent?<\/li>\n<li>Is it clear whether a new attempt is a retry, correction or separate record?<\/li>\n<li>Is an operator prevented from starting a second command while receipt is uncertain?<\/li>\n<li>Is AFAS evidence compared with snapshot contents, rather than merely found by reference?<\/li>\n<li>Are unknown transaction types handled separately instead of under a default account?<\/li>\n<li>Can a manual decision be traced with its reason and authorisation?<\/li>\n<\/ul>\n<p>In <a href=\"\/en\/desk\/\">Desk<\/a> the order can show an understandable status while financial administration reviews execution evidence. More about the technical order route appears in <a href=\"\/en\/woocommerce-afas-integration-guide\/\">connecting WooCommerce and AFAS<\/a>. Always have experts establish posting schemes and legal requirements separately.<\/p>\n<p>Perform a completeness check that counts more than confirmed postings. Include started, uncertain, rejected and manually closed attempts. A report showing only successes may hide precisely the transactions that received no response. Compare active intent counts per source transaction and allow at most one executable intent at a time. A correction must reference the original identity but remain recognisable as a new, explicit type; do not alter an old snapshot retrospectively to make the total fit.<\/p>\n<p>Test the register with a restart at every transition: before sending, immediately afterwards, after the provider response and while saving evidence. Check that two restarts still produce the same recovery decision. Give financial administrators an export of identities and statuses, not raw secrets or complete customer payloads. Agree a retention period that permits investigation without keeping all source data indefinitely. When someone closes an attempt manually, the reason and selected external evidence must be mandatory. The chain then remains explainable under time pressure too.<\/p>\n<p>Always link a correction to the original intent while retaining it as a separate decision. Changing an old amount retrospectively destroys evidence of what was actually sent.<\/p>\n<p>Want financial integration steps to be demonstrable before anything is sent? <a href=\"\/en\/contact\/\">Design the execution register with Yindle<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>An after-the-fact success log misses the most dangerous window. An execution register records exactly what the integration intended before sending.<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-157","post","type-post","status-publish","format-standard","hentry","category-integraties"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Financi\u00eble boeking: leg intentie vast v\u00f3\u00f3r verzending<\/title>\n<meta name=\"description\" content=\"Registreer brontransactie, boekingssnapshot en vaste AFAS-referentie v\u00f3\u00f3r de API-write, zodat herstel na crash of time-out aantoonbaar blijft.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Financi\u00eble boeking: leg intentie vast v\u00f3\u00f3r verzending\" \/>\n<meta property=\"og:description\" content=\"Registreer brontransactie, boekingssnapshot en vaste AFAS-referentie v\u00f3\u00f3r de API-write, zodat herstel na crash of time-out aantoonbaar blijft.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/\" \/>\n<meta property=\"og:site_name\" content=\"Yindle\" \/>\n<meta property=\"article:published_time\" content=\"2026-11-05T08:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/yindle.com\/wp-content\/themes\/yindle\/assets\/images\/yindle-social-share.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Yindle\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Yindle\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/record-the-sending-intent-of-every-financial-posting\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/record-the-sending-intent-of-every-financial-posting\\\/\"},\"author\":{\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/#organization\"},\"headline\":\"Leg de verzendintentie van iedere financi\u00eble boeking vast\",\"datePublished\":\"2026-11-05T08:00:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/record-the-sending-intent-of-every-financial-posting\\\/\"},\"wordCount\":688,\"publisher\":{\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/#organization\"},\"articleSection\":[\"Integraties\"],\"inLanguage\":\"en-GB\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/record-the-sending-intent-of-every-financial-posting\\\/\",\"url\":\"https:\\\/\\\/yindle.com\\\/en\\\/record-the-sending-intent-of-every-financial-posting\\\/\",\"name\":\"Financi\u00eble boeking: leg intentie vast v\u00f3\u00f3r verzending\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/#website\"},\"datePublished\":\"2026-11-05T08:00:00+00:00\",\"description\":\"Registreer brontransactie, boekingssnapshot en vaste AFAS-referentie v\u00f3\u00f3r de API-write, zodat herstel na crash of time-out aantoonbaar blijft.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/record-the-sending-intent-of-every-financial-posting\\\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/yindle.com\\\/en\\\/record-the-sending-intent-of-every-financial-posting\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/record-the-sending-intent-of-every-financial-posting\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/yindle.com\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Leg de verzendintentie van iedere financi\u00eble boeking vast\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/yindle.com\\\/en\\\/\",\"name\":\"Yindle\",\"description\":\"Software voor e-commerce en klantprocessen\",\"publisher\":{\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/yindle.com\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/#organization\",\"name\":\"Yindle B.V.\",\"url\":\"https:\\\/\\\/yindle.com\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/yindle.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/yindle-site-icon.png\",\"contentUrl\":\"https:\\\/\\\/yindle.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/yindle-site-icon.png\",\"width\":512,\"height\":512,\"caption\":\"Yindle B.V.\"},\"image\":{\"@id\":\"https:\\\/\\\/yindle.com\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"legalName\":\"Yindle B.V.\",\"address\":{\"@type\":\"PostalAddress\",\"streetAddress\":\"Markt 43\",\"postalCode\":\"5554 CA\",\"addressLocality\":\"Valkenswaard\",\"addressCountry\":\"NL\"},\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"KvK\",\"value\":\"99695367\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Financial posting: record intent before sending","description":"Record source transaction, posting snapshot and stable AFAS reference before the API write so recovery after a crash or timeout remains demonstrable.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/","og_locale":"en_GB","og_type":"article","og_title":"Financi\u00eble boeking: leg intentie vast v\u00f3\u00f3r verzending","og_description":"Registreer brontransactie, boekingssnapshot en vaste AFAS-referentie v\u00f3\u00f3r de API-write, zodat herstel na crash of time-out aantoonbaar blijft.","og_url":"https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/","og_site_name":"Yindle","article_published_time":"2026-11-05T08:00:00+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/yindle.com\/wp-content\/themes\/yindle\/assets\/images\/yindle-social-share.png","type":"image\/png"}],"author":"Yindle","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Yindle","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/#article","isPartOf":{"@id":"https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/"},"author":{"@id":"https:\/\/yindle.com\/en\/#organization"},"headline":"Leg de verzendintentie van iedere financi\u00eble boeking vast","datePublished":"2026-11-05T08:00:00+00:00","mainEntityOfPage":{"@id":"https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/"},"wordCount":688,"publisher":{"@id":"https:\/\/yindle.com\/en\/#organization"},"articleSection":["Integraties"],"inLanguage":"en-GB"},{"@type":"WebPage","@id":"https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/","url":"https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/","name":"Financial posting: record intent before sending","isPartOf":{"@id":"https:\/\/yindle.com\/en\/#website"},"datePublished":"2026-11-05T08:00:00+00:00","description":"Record source transaction, posting snapshot and stable AFAS reference before the API write so recovery after a crash or timeout remains demonstrable.","breadcrumb":{"@id":"https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/yindle.com\/en\/record-the-sending-intent-of-every-financial-posting\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/yindle.com\/en\/"},{"@type":"ListItem","position":2,"name":"Leg de verzendintentie van iedere financi\u00eble boeking vast"}]},{"@type":"WebSite","@id":"https:\/\/yindle.com\/en\/#website","url":"https:\/\/yindle.com\/en\/","name":"Yindle","description":"Software for e-commerce and customer processes","publisher":{"@id":"https:\/\/yindle.com\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/yindle.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Organization","@id":"https:\/\/yindle.com\/en\/#organization","name":"Yindle B.V.","url":"https:\/\/yindle.com\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/yindle.com\/en\/#\/schema\/logo\/image\/","url":"https:\/\/yindle.com\/wp-content\/uploads\/2026\/09\/yindle-site-icon.png","contentUrl":"https:\/\/yindle.com\/wp-content\/uploads\/2026\/09\/yindle-site-icon.png","width":512,"height":512,"caption":"Yindle B.V."},"image":{"@id":"https:\/\/yindle.com\/en\/#\/schema\/logo\/image\/"},"legalName":"Yindle B.V.","address":{"@type":"PostalAddress","streetAddress":"Markt 43","postalCode":"5554 CA","addressLocality":"Valkenswaard","addressCountry":"NL"},"identifier":{"@type":"PropertyValue","propertyID":"KvK","value":"99695367"}}]}},"_links":{"self":[{"href":"https:\/\/yindle.com\/en\/wp-json\/wp\/v2\/posts\/157","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/yindle.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/yindle.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/yindle.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/yindle.com\/en\/wp-json\/wp\/v2\/comments?post=157"}],"version-history":[{"count":1,"href":"https:\/\/yindle.com\/en\/wp-json\/wp\/v2\/posts\/157\/revisions"}],"predecessor-version":[{"id":1050,"href":"https:\/\/yindle.com\/en\/wp-json\/wp\/v2\/posts\/157\/revisions\/1050"}],"wp:attachment":[{"href":"https:\/\/yindle.com\/en\/wp-json\/wp\/v2\/media?parent=157"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/yindle.com\/en\/wp-json\/wp\/v2\/categories?post=157"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/yindle.com\/en\/wp-json\/wp\/v2\/tags?post=157"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}