Changelog
Shopware 6
Section titled “Shopware 6”- First release for Shopware 6.6 and 6.7.
- VAT numbers: normalised as typed (spaces, dots, missing country prefix), checked offline first (NL elfproef or mod-97, BE mod-97), then server-side with VIES. Four results: valid, not registered, impossible format, could not be checked. A VIES outage never blocks a customer.
- Autofill of company name and address from VIES for Dutch and Belgian businesses; Dutch addresses re-resolved via PDOK. A value the customer typed is never overwritten without asking.
- Dutch postcode + house number lookup (PDOK, free, no key) with an addition picker and manual entry.
- Belgian street suggestions and address check (BeST, free, no key), bilingual street names.
- Optional KvK lookup with your own KvK API key, or the KvK test environment; KvK number stored on customer and order. Live KvK lookups are the in-app upgrade “KvK live” (test mode stays free); without it the configuration shows what it costs and where to buy it, and nothing is deleted.
- Requires Shopware 6.6.9 or newer (in-app purchases).
- Administration: “Test connection” per service, step-by-step guide for your own KvK key, KvK calls per month, VAT/KvK status card on customer and order, lookup log with plain-language reasons.
- Support card in the configuration: “Copy diagnostics” copies a plain-text report for support mails (versions, KvK mode, health per service, circuit breakers, last failed lookups masked; never a key), with a text box when the browser blocks the clipboard. Support scope: we support the plugin, not your hosting or server setup.
- Circuit breaker, caching and rate limiting on all lookups. Only the number or postcode is sent; no cookies, no third-party scripts.
- Texts in English, German and Dutch.
- Lookup log kept 30 days by default, at most 180 days.
- Ready for Shopware 6.8: PHP service and route configuration, administration without
$tcand without the deprecatedsw-card/sw-buttonstyles; the address form also works with the 6.8 layout. - Address lookups ignore a late answer for a postcode, house number or street the customer has already changed, so it can no longer put the old address (or postcode) back into the form.
WooCommerce
Section titled “WooCommerce”All notable changes to the WooCommerce plugins (free vat-company-autofill and paid vat-company-autofill-plus).
Versions follow semver; the free plugin’s readme.txt has the same entries for wordpress.org.
1.0.0 (unreleased)
Section titled “1.0.0 (unreleased)”Free plugin (wordpress.org)
Section titled “Free plugin (wordpress.org)”- VAT check with VIES (offline checksum first), autofill of company name + address for NL and BE, conflict prompt.
- Dutch postcode + house number lookup (PDOK), addition picker, manual entry.
- Belgian street suggestions and address check (BeST); on the block checkout through WooCommerce’s address-provider API (“Enable predictive address search”).
- Classic checkout, checkout block (Store API) and My Account address forms; server-side re-check of every order.
- Accept-and-flag when VIES is down; optional “reject not registered”; optional VAT exemption (P-08).
- Admin: VAT/KvK status on the order screen (HPOS) and the user profile, lookup log with filters and plain-language reasons, “Test connection” per service, “Copy diagnostics” (no keys).
- Rate limit per visitor (atomic), daily log cleanup, keep-or-delete data on uninstall.
- English, Dutch (NL, BE), French (BE), German.
Plus add-on
Section titled “Plus add-on”- KvK lookup with the merchant’s own key (BYOK) or KvK’s test environment; establishment picker, KvK art. 5(2) text with the retrieval date; field optional/required, Dutch addresses only.
- “Get your own KvK key” guide, monthly KvK call counter, KvK test connection.
- Lookup log CSV export; bulk VAT check of existing customers (Action Scheduler).
- Licences through Freemius behind a multi-provider interface (updates + support only, 30-day trial).
Magento 2
Section titled “Magento 2”All notable changes to this module. The format follows Keep a Changelog and the module uses Semantic Versioning.
[1.0.0] - 2026-10-27
Section titled “[1.0.0] - 2026-10-27”- First release for Magento Open Source 2.4.7, 2.4.8 and 2.4.9 and Mage-OS 3.6.0 (tested on 2.4.7-p10 with PHP 8.3, 2.4.8-p5, 2.4.9 and Mage-OS 3.6.0 with PHP 8.4), PHP 8.2 – 8.4. Luma and the free Hyvä theme 1.5.3 with Hyvä’s Luma checkout fallback.
- VAT numbers: normalised as typed (spaces, dots, missing country prefix), checked offline first (NL elfproef or mod-97, BE mod-97), then on the server with VIES. Four results: valid, not registered, impossible format, could not be checked. A VIES outage never blocks a customer (accept and flag, or reject “not registered”: your choice).
- Magento’s own VAT validation (customer group assignment, per-transaction validation) uses the same VIES client, cache and circuit breaker; an outage gives “validation error”, never “invalid”.
- Autofill of company name and address from VIES for Dutch and Belgian businesses. A value the customer typed is never overwritten without asking.
- Dutch postcode + house number lookup (PDOK, free, no key) with an addition picker and manual entry; Belgian street suggestions and address check (BeST, free, no key), Dutch/French street names, province from the postcode.
- Optional KvK lookup with your own KvK API key, or the free KvK test environment; KvK number field on registration, address book and checkout; optional full address (Basisprofiel, paid per call on your key).
- Registration with a business address, address book and checkout incl. guest checkout; server-side re-check on every customer and address save and at order placement.
- Admin: settings per website and store view; “How to get a KvK API key” guide and KvK calls counter; “Test connection” per source; “Copy diagnostics”; lookup log grid (Reports > VAT & Company Autofill > Lookup log); “VAT & Company Autofill” tab on the customer and block on the order (status, date, source, VIES request ID, KvK).
- Lookup log with masked input and the reason in plain words, kept 30 days by default (max 180), daily cleanup.
- Address lookups drop an answer that arrives after the customer changed the postcode or house number.
- Circuit breaker, caching and an atomic per-visitor rate limit on all lookups. Only the number or postcode is sent; no third-party cookies or scripts.
- Storefront texts in English, Dutch, German and French (Belgium): en_US, nl_NL, de_DE, fr_BE.
- Uninstall keeps the data by default;
module:uninstall --remove-dataremoves tables, columns, attributes and settings. - Support scope: we support the extension, not your hosting or server setup.
PrestaShop
Section titled “PrestaShop”- First release for PrestaShop 8.0 – 9.x (tested on 8.2.8 with PHP 8.1 and 9.2.0 with PHP 8.4), Classic and Hummingbird themes, the four-step checkout and PrestaShop 9’s one-page checkout.
- VAT numbers: normalised as typed (spaces, dots, missing country prefix), checked offline first (NL elfproef or mod-97, BE mod-97), then on the server with VIES. Four results: valid, not registered, impossible format, could not be checked. A VIES outage never blocks a customer (accept and flag, or reject “not registered”: your choice).
- Autofill of company name and address from VIES for Dutch and Belgian businesses. A value the customer typed is never overwritten without asking.
- Dutch postcode + house number lookup (PDOK, free, no key) with an addition picker and manual entry; Belgian street suggestions and address check (BeST, free, no key), Dutch/French street names.
- Optional KvK lookup with your own KvK API key, or the free KvK test environment; KvK number field on the address.
- Reverse charge (optional): takes over PrestaShop’s VAT number management so only VIES-valid EU numbers get 0 % VAT.
- Back office: settings per shop (multistore), “Test” button per service, step-by-step guide for your own KvK key with the KvK calls of the month, lookup log with plain-language reasons, VAT/KvK status on the customer and the order (status, date, source, VIES request identifier).
- Support panel: “Copy diagnostics” (module, PrestaShop and PHP versions, health per service, circuit breakers, last failed lookups masked, module errors; never a key). Support scope: we support the module, not your hosting or server setup.
- Address lookups drop an answer that arrives after the customer changed the postcode or house number (P-19).
- Circuit breaker, caching and an atomic per-visitor rate limit on all lookups. Only the number or postcode is sent; no cookies of third parties, no third-party scripts.
- Storefront in Dutch, French, German and English; back office in English, Dutch, German and French.
Shopify
Section titled “Shopify”1.0.0 (first App Store submission)
Section titled “1.0.0 (first App Store submission)”All plans
- Theme app block in the cart: VAT number (offline check, then VIES) and optional KvK number with an establishment picker, company preview, hidden cart attributes for the order. Falls back to a plain field when a register is down or the free plan’s checks are used up; the buyer is never stranded.
- Customer account block “Company & VAT”: check and save the VAT number; with one click, use the registered company address as the default address.
- Checkout rule (cart and checkout validation Function): blocks a VAT number our server found invalid (if you choose to reject those) or a tampered status; can require a VAT number for B2B-only shops. Works in express checkouts too.
- After every order: VAT, KvK and the NL/BE shipping address are checked again; order tags, a metafield with the audit proof (date, VIES request id) and a risk assessment with plain reasons. Customers get a VAT status tag and metafield. Optional EU reverse-charge tax exemption (off by default).
- Embedded admin: plans with a 30-day free trial, order and customer check options, the settings dashboard (KvK key, lookup log, connection tests, data export) and Copy diagnostics for support mails (versions, plan, health per source, circuit breakers, last failed lookups masked; never a key or token).
Shopify Plus (Plus checkout plan)
- Checkout block “Company details” after the delivery address: VAT and KvK fields; VIES/KvK fill the empty address fields and ask “Registered as X: use this?” before changing anything the buyer typed. Writes the same cart attributes, so the checkout rule and the post-order checks apply unchanged.
- Address autocomplete provider: Dutch postcode + house number (PDOK, additions as separate suggestions) and Belgian postcode + street (BeST, house number verified) in Shopify’s own address field.
Privacy and operations
- GDPR webhooks (customer data request, customer redact, shop redact); data removed 48 hours after uninstall.
- Only the number or postcode leaves the server; the lookup log is masked and kept 30 days by default.
Lightspeed eCom
Section titled “Lightspeed eCom”Not released yet: the Lightspeed app is coming soon.