{"id":1797,"date":"2026-06-12T13:28:50","date_gmt":"2026-06-12T11:28:50","guid":{"rendered":"https:\/\/newcraft.dev\/posts\/does-vies-check-if-a-vat-number-matches-the-company-name-and-invoice-address\/"},"modified":"2026-06-12T13:29:55","modified_gmt":"2026-06-12T11:29:55","slug":"does-vies-check-if-a-vat-number-matches-the-company-name-and-invoice-address","status":"publish","type":"marketing-post","link":"https:\/\/newcraft.dev\/nl\/posts\/does-vies-check-if-a-vat-number-matches-the-company-name-and-invoice-address\/","title":{"rendered":"Does VIES Check If a VAT Number Matches the Company Name and Invoice Address?"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>TL;DR:<\/strong> No. VIES confirms that a VAT number exists and is currently active. It does not check whether the company name or the invoice address on your order belongs to that number. For some countries VIES shows the registered name and address so you can compare them yourself. For German numbers it shows nothing at all. If you approve wholesale customers on Shopify, our <a href=\"https:\/\/apps.shopify.com\/b2b-portal-1\" target=\"_blank\" rel=\"noopener\">B2B Account Approval EU<\/a> app runs the VIES check the moment a buyer applies and puts the result next to everything they typed, so mismatches surface before anyone gets tax-free prices.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Every merchant who sells B2B in Europe has this moment eventually. A wholesale application comes in, the VAT number checks out in VIES, and something still feels off. The company name rings no bells. The invoice address is a residential street. So you start wondering what that green &#8220;valid&#8221; actually covered.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What &#8220;valid&#8221; actually means in VIES<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">VIES looks like one big EU database, but it isn&#8217;t. When you check a number, the European Commission&#8217;s site passes your question to the tax administration of the country that issued the number, and relays the answer back.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&#8220;Valid&#8221; means exactly one thing: this number is currently registered for cross-border business in that country. That&#8217;s the whole message.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It says nothing about the person who typed the number into your form. VIES doesn&#8217;t compare names, and it doesn&#8217;t look at invoice addresses. The standard check only contains a country code and the number itself, so there&#8217;s nothing for it to compare against.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Sometimes you get a name and address back. Sometimes two dashes.<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Each member state decides how much company data it shares through VIES, and the differences are bigger than most merchants expect.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Check a Dutch or Irish number and you&#8217;ll get the registered company name and address along with the result. Useful, because now you can hold them next to the application and see whether it&#8217;s the same business.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Check a German number and you get &#8220;valid&#8221; plus dashes where the name and address should be. We ran several well-known German companies&#8217; numbers through VIES while writing this in June 2026. Every one of them came back the same way: valid, no name, no address.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table>\n<thead>\n<tr><th>Number issued in<\/th><th>What VIES returns<\/th><\/tr>\n<\/thead>\n<tbody>\n<tr><td>Netherlands<\/td><td>Valid or invalid, plus the registered name and address<\/td><\/tr>\n<tr><td>Ireland<\/td><td>Valid or invalid, plus the registered name and address<\/td><\/tr>\n<tr><td>Germany<\/td><td>Valid or invalid. Nothing else.<\/td><\/tr>\n<\/tbody>\n<\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">So in the best case, VIES hands you the registered details and leaves the comparing to you. In the worst case it hands you nothing and you&#8217;re comparing against thin air. The German case is common enough that we covered it separately: <a href=\"https:\/\/newcraft.dev\/posts\/german-vat-ids-ust-idnr-in-shopify-why-valid-isnt-always-enough\/\">German VAT IDs in Shopify, and why valid isn&#8217;t always enough<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">A valid number that isn&#8217;t theirs: easier than you&#8217;d think<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">VAT numbers are not secrets. They&#8217;re printed on invoices, on quotes, in email footers. German companies are required to publish their USt-IdNr. in their website imprint. Anyone can copy a real, valid VAT number from a company they have nothing to do with, in seconds.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Shopify is unusually direct about this in its own <a href=\"https:\/\/changelog.shopify.com\/posts\/vat-number-validation-available-in-checkout\" target=\"_blank\" rel=\"noopener\">checkout validation announcement<\/a>: validation &#8220;doesn&#8217;t guarantee the customer is authorized to use the number&#8221;. Their suggested response when something looks off, like a name that doesn&#8217;t match, is to check VIES yourself. Which lands you right back at the limitation this article is about. We&#8217;ve also broken down <a href=\"https:\/\/newcraft.dev\/posts\/shopify-now-validates-vat-numbers-natively-what-it-does-and-whats-still-missing\/\">what Shopify&#8217;s native VAT validation does and what it still misses<\/a> if you want the full picture.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Why this matters: when you remove VAT from a B2B order, you do it on the strength of that number. If it later turns out the number belongs to a different company than the one on your invoice, that mismatch is exactly what a tax inspector picks out. You&#8217;ll want to show you took reasonable care, with records to back it up. We wrote a separate guide on <a href=\"https:\/\/newcraft.dev\/posts\/shopify-vat-audit-trail-how-to-prove-tax-exemptions-to-eu-authorities\/\">what EU tax authorities expect you to keep on file<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">So who checks the name and address? You do.<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">There is no EU service that stamps &#8220;this number, this name and this address belong together&#8221; for every country. The check is yours. The good news: it takes about two minutes per customer once it&#8217;s part of your approval routine, instead of a panic two years later.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>Compare the names.<\/strong> Where VIES returns a registered name, hold it next to the name on the application. &#8220;Mueller Trading&#8221; against &#8220;M\u00fcller Trading GmbH&#8221; is fine. A completely different company is not.<\/li>\n\n\n<li><strong>Look at the email domain.<\/strong> An application in the name of an established company, sent from a free webmail address, deserves one extra question.<\/li>\n\n\n<li><strong>Open their website.<\/strong> Most European companies list their VAT number and legal details on their site. If it all matches the application, you&#8217;re done.<\/li>\n\n\n<li><strong>When in doubt, ask.<\/strong> One short email. Real wholesale buyers answer quickly. People using someone else&#8217;s number tend to go quiet.<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Build the check into your approval flow<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">None of this helps if it happens after the first tax-free order has shipped. The check belongs at the door, when the customer applies. That goes double for wholesale buyers in company accounts, because <a href=\"https:\/\/newcraft.dev\/posts\/shopify-b2b-vat-validation-checkout-field-vs-company-location-tax-id\/\">Shopify&#8217;s validation doesn&#8217;t run in B2B-specific checkouts<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s the job our <a href=\"https:\/\/apps.shopify.com\/b2b-portal-1\" target=\"_blank\" rel=\"noopener\">B2B Account Approval EU<\/a> app does. Wholesale buyers apply through a signup form you design, with company name, address, VAT number and any other fields you want. The app validates the number against VIES the moment the application arrives.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You review everything on one screen: what the buyer entered, and whether the number checks out, with a one-click recheck when you want a fresh answer. Auto-approval is optional and only fires when the VAT number is valid; anything doubtful waits in your queue. You can even require a valid number before the form can be submitted at all.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And because numbers don&#8217;t stay valid forever, the app re-checks approved companies on a schedule. If a number goes invalid later, you get an email and the account can be paused automatically until it&#8217;s sorted out. If you&#8217;d rather automate the clear cases and only review the rest, we&#8217;ve written about <a href=\"https:\/\/newcraft.dev\/posts\/how-to-auto-approve-b2b-customers-on-shopify-based-on-vat-validation\/\">auto-approving B2B customers based on VAT validation<\/a> in detail.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Frequently asked questions<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Does VIES check the company name?<\/h3>\n\n\n<p class=\"wp-block-paragraph\">No. For some countries VIES shows the registered company name with the result so you can compare it yourself. It never blocks or flags a mismatch, and for countries like Germany it shows no name at all.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Does VIES verify the invoice address?<\/h3>\n\n\n<p class=\"wp-block-paragraph\">No. An address in a VIES result is the registered address from the national database, not a judgment about the invoice address your customer gave you. Comparing the two is up to you.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">The VAT number is valid but the company name is different. Now what?<\/h3>\n\n\n<p class=\"wp-block-paragraph\">Treat the application as unverified and ask. Sometimes it&#8217;s innocent: a trade name instead of the legal name, a recent rename, a parent company invoicing for a subsidiary. Sometimes it&#8217;s someone using a number that isn&#8217;t theirs. The difference is usually one email away.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Is a valid VAT number enough to sell without charging VAT?<\/h3>\n\n\n<p class=\"wp-block-paragraph\">A valid number at the time of sale is one condition for the reverse charge, not the whole story. Tax authorities expect you to take reasonable care that the buyer is who they claim to be, and to keep evidence of your checks. When the name and address clearly don&#8217;t match the number, &#8220;but VIES said valid&#8221; is a thin defense.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Approve B2B customers with the VAT check already done.<\/strong> B2B Account Approval EU validates every application against VIES, holds the doubtful ones for review and keeps re-checking numbers after approval. <a href=\"https:\/\/apps.shopify.com\/b2b-portal-1\" target=\"_blank\" rel=\"noopener\">Try it free for 7 days<\/a>, $19 per month after that.<\/p>\n\n","protected":false},"excerpt":{"rendered":"<p>VIES tells you a VAT number is valid. It doesn&#8217;t tell you who is using it. Here&#8217;s what to check.<\/p>\n","protected":false},"featured_media":0,"template":"","meta":{"_acf_changed":false,"_breakdance_hide_in_design_set":false,"_breakdance_tags":""},"class_list":["post-1797","marketing-post","type-marketing-post","status-publish","hentry"],"acf":{"related_apps":null},"_links":{"self":[{"href":"https:\/\/newcraft.dev\/nl\/wp-json\/wp\/v2\/marketing-post\/1797","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/newcraft.dev\/nl\/wp-json\/wp\/v2\/marketing-post"}],"about":[{"href":"https:\/\/newcraft.dev\/nl\/wp-json\/wp\/v2\/types\/marketing-post"}],"wp:attachment":[{"href":"https:\/\/newcraft.dev\/nl\/wp-json\/wp\/v2\/media?parent=1797"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}