{"id":298109,"date":"2026-04-23T15:59:44","date_gmt":"2026-04-23T15:59:44","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/vatify-eu-vat-validator\/"},"modified":"2026-04-23T15:59:25","modified_gmt":"2026-04-23T15:59:25","slug":"vatigo-eu-vat-validator","status":"publish","type":"plugin","link":"https:\/\/sv.wordpress.org\/plugins\/vatigo-eu-vat-validator\/","author":12495480,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.0","stable_tag":"1.0.0","tested":"6.9.4","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"Vatigo \u2013 EU VAT Validator","header_author":"Stephan Lenhart","header_description":"Validates EU VAT IDs (UIDs) in WordPress forms. Supports Contact Form 7, WPForms, Fluent Forms and more.","assets_banners_color":"fcf8f8","last_updated":"2026-04-23 15:59:25","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/uidesign.at\/work\/vatigo","header_author_uri":"https:\/\/uidesign.at","rating":0,"author_block_rating":0,"active_installs":0,"downloads":49,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"deb_ugger","date":"2026-04-23 15:59:25"}},"upgrade_notice":{"1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3514042,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3514042,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3514042,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3514042,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3514035,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3514035,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3514035,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3514035,"resolution":"4","location":"assets","locale":""}},"screenshots":{"1":"Settings page \u2013 active integrations with hook reference","2":"EU VAT ID field in a WPForms contact form","3":"Required field validation \u2013 all mandatory fields highlighted","4":"Format validation \u2013 invalid EU country code error message"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[10553,395,260936,724,19126],"plugin_category":[],"plugin_contributors":[260937],"plugin_business_model":[],"class_list":["post-298109","plugin","type-plugin","status-publish","hentry","plugin_tags-b2b","plugin_tags-eu","plugin_tags-uid","plugin_tags-validation","plugin_tags-vat","plugin_contributors-deb_ugger","plugin_committers-deb_ugger"],"banners":{"banner":"https:\/\/ps.w.org\/vatigo-eu-vat-validator\/assets\/banner-772x250.png?rev=3514042","banner_2x":"https:\/\/ps.w.org\/vatigo-eu-vat-validator\/assets\/banner-1544x500.png?rev=3514042","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/vatigo-eu-vat-validator\/assets\/icon-128x128.png?rev=3514042","icon_2x":"https:\/\/ps.w.org\/vatigo-eu-vat-validator\/assets\/icon-256x256.png?rev=3514042","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/vatigo-eu-vat-validator\/assets\/screenshot-1.png?rev=3514035","caption":"Settings page \u2013 active integrations with hook reference"},{"src":"https:\/\/ps.w.org\/vatigo-eu-vat-validator\/assets\/screenshot-2.png?rev=3514035","caption":"EU VAT ID field in a WPForms contact form"},{"src":"https:\/\/ps.w.org\/vatigo-eu-vat-validator\/assets\/screenshot-3.png?rev=3514035","caption":"Required field validation \u2013 all mandatory fields highlighted"},{"src":"https:\/\/ps.w.org\/vatigo-eu-vat-validator\/assets\/screenshot-4.png?rev=3514035","caption":"Format validation \u2013 invalid EU country code error message"}],"raw_content":"<!--section=description-->\n<p><strong>Vatigo \u2013 EU VAT Validator<\/strong> adds EU VAT ID validation to your WordPress forms with zero configuration. Install, activate, done.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>Pattern validation for all <strong>27 EU member states<\/strong><\/li>\n<li>Works with <strong>Contact Form 7<\/strong>, <strong>WPForms<\/strong>, and <strong>Fluent Forms<\/strong><\/li>\n<li>Real-time inline feedback while the user types (WPForms)<\/li>\n<li>Server-side validation on every submission<\/li>\n<li>Custom error messages via settings page<\/li>\n<li>Clean settings page showing active integrations and hooks used<\/li>\n<li>Extensible: register custom integrations for any other form plugin<\/li>\n<li>No external API calls \u2013 fully offline (free version)<\/li>\n<li>GDPR-friendly: no personal data stored or transmitted<\/li>\n<\/ul>\n\n<h4>Supported Countries<\/h4>\n\n<p>AT, BE, BG, CY, CZ, DE, DK, EE, EL, ES, FI, FR, HR, HU, IE, IT, LT, LU, LV, MT, NL, PL, PT, RO, SE, SI, SK<\/p>\n\n<h4>Usage with Contact Form 7<\/h4>\n\n<p>Add <code>[uid_vat uid-field]<\/code> or <code>[uid_vat* uid-field]<\/code> (required) to your form template.<\/p>\n\n<p>Example with placeholder:<\/p>\n\n<pre><code>[uid_vat* eu-vat-id placeholder \"e.g. ATU12345678\"]\n<\/code><\/pre>\n\n<h4>Usage with WPForms<\/h4>\n\n<p>Drag the <strong>EU VAT ID<\/strong> field from the field panel into your form. The field supports required validation, custom labels, placeholder text, and real-time inline feedback while the user types.<\/p>\n\n<h4>Usage with Fluent Forms<\/h4>\n\n<p>Drag the <strong>EU VAT ID<\/strong> field from the General Fields section into your form.<\/p>\n\n<h4>Styling the inline feedback<\/h4>\n\n<p>WPForms shows real-time validation feedback next to the field. To hide it, add this to your theme's CSS:<\/p>\n\n<pre><code>.vatigo-feedback { display: none; }\n<\/code><\/pre>\n\n<h4>For Developers<\/h4>\n\n<p>Register integrations for any other form plugin:<\/p>\n\n<pre><code>add_action( 'vatigo_register_integrations', function( $manager ) {\n    $manager-&gt;register( new My_Custom_Integration() );\n} );\n<\/code><\/pre>\n\n<p>Your class must extend <code>Vatigo_Integration_Base<\/code> and implement all abstract methods.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code><\/li>\n<li>Activate via <strong>Plugins \u2192 Installed Plugins<\/strong><\/li>\n<li>Go to <strong>Settings \u2192 EU VAT Validator<\/strong><\/li>\n<li>Enable integrations for the forms you use<\/li>\n<li>Add the EU VAT ID field to your forms<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20call%20an%20external%20api%3F\"><h3>Does this call an external API?<\/h3><\/dt>\n<dd><p>No. The free version validates patterns only, entirely offline. No data leaves your server.<\/p><\/dd>\n<dt id=\"does%20it%20support%20vies%20live%20validation%3F\"><h3>Does it support VIES live validation?<\/h3><\/dt>\n<dd><p>Not in the free version. Pro version coming soon.<\/p><\/dd>\n<dt id=\"can%20i%20add%20support%20for%20another%20form%20plugin%3F\"><h3>Can I add support for another form plugin?<\/h3><\/dt>\n<dd><p>Yes. Extend <code>Vatigo_Integration_Base<\/code> and register your class via the <code>vatigo_register_integrations<\/code> action hook. See the Settings page for a code example.<\/p><\/dd>\n<dt id=\"is%20this%20gdpr%20compliant%3F\"><h3>Is this GDPR compliant?<\/h3><\/dt>\n<dd><p>Yes. No personal data is stored or transmitted. VAT IDs are validated in memory and discarded.<\/p><\/dd>\n<dt id=\"can%20i%20customise%20the%20error%20messages%3F\"><h3>Can I customise the error messages?<\/h3><\/dt>\n<dd><p>Yes. Go to <strong>Settings \u2192 EU VAT Validator<\/strong> and enter a custom error message. Leave empty to use the default per-country messages.<\/p><\/dd>\n<dt id=\"the%20inline%20feedback%20looks%20different%20from%20my%20theme%20%E2%80%93%20can%20i%20style%20it%3F\"><h3>The inline feedback looks different from my theme \u2013 can I style it?<\/h3><\/dt>\n<dd><p>Yes. The feedback element uses the class <code>.vatigo-feedback<\/code>. You can hide or restyle it via your theme's CSS.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Contact Form 7 integration with SWV required validation support (CF7 5.6+)<\/li>\n<li>WPForms integration with real-time inline feedback<\/li>\n<li>Fluent Forms integration<\/li>\n<li>Pattern validation for all 27 EU member states<\/li>\n<li>Admin settings page with integration toggle and hook reference<\/li>\n<li>Custom error message override<\/li>\n<li>Extensible integration API<\/li>\n<\/ul>","raw_excerpt":"Validate EU VAT IDs in your WordPress forms. Supports Contact Form 7, WPForms, and Fluent Forms out of the box.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/298109","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=298109"}],"author":[{"embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/deb_ugger"}],"wp:attachment":[{"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=298109"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=298109"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=298109"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=298109"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=298109"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=298109"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}