Next-Level Code. Nexuvibe Style ...

Hrs
Min
Sec
WooCommerce Tax Compliance & B2B Invoicing

How to Collect Customer VAT and Tax IDs
in WooCommerce (Step-by-Step)

VAT numbers, GST numbers, tax IDs — whatever your market calls them, collecting them correctly at WooCommerce checkout is a legal and operational requirement for B2B stores. This step-by-step guide explains exactly how to do it without code.

11 min read
Updated 2026
Tax Compliance & B2B Guide
How to collect customer VAT numbers and tax IDs in WooCommerce – step by step guide for B2B stores needing to capture EU VAT numbers, US tax IDs, ABN and other tax registration numbers at checkout in 2026

For many WooCommerce store owners, VAT and tax ID collection exists in an uncomfortable middle ground: they know they need to collect it for certain customers, they are not entirely sure how to do it correctly, and the default WooCommerce checkout does not help them at all. The result is often a patchwork of workarounds — order notes fields with instructions to enter your VAT number, post-purchase email requests for tax IDs, manual invoice corrections — that add administrative overhead, create inconsistent data, and occasionally cause genuine legal compliance problems.

The underlying requirement is not complicated. Business customers purchasing from VAT-registered suppliers need their VAT number on the invoice. In the European Union, this is a legal requirement for zero-rated intra-community B2B transactions — the buyer must provide a valid VAT number for the transaction to qualify for the zero rate, and the seller must record it. In other jurisdictions, the equivalent tax identification number (ABN in Australia, GSTIN in India, EIN or Resale Certificate in the US, company RFC in Mexico) serves similar roles in different tax frameworks. The WooCommerce checkout form, by default, has no field for any of these.

This guide provides a complete step-by-step walkthrough for adding VAT and tax ID collection to your WooCommerce checkout correctly — including which field type to use, how to configure validation, how to show the field only to customers who need it, how the collected data appears on invoices, and the specific formats for each major tax jurisdiction. The implementation uses a WooCommerce checkout field editor for VAT number and tax ID collection rather than custom code — no PHP, no hooks, no developer required.

Important note before we begin
This guide covers the technical implementation of VAT and tax ID collection in WooCommerce. It does not constitute legal or tax advice. VAT treatment for cross-border B2B transactions, the conditions under which zero-rating applies, and the specific record-keeping requirements in each jurisdiction are legal and tax questions. For guidance on your specific obligations, consult a qualified tax adviser in your jurisdiction. What this guide handles is the practical question of how to collect and display the tax ID data once you know you need to.
What this guide covers
Why WooCommerce has no native VAT or tax ID field and what that costs B2B stores.
The correct field type, label, and configuration for tax ID collection.
VAT and tax ID formats for EU, UK, Australia, India, US, Canada, and more.
How to use conditional logic so the field appears only for business buyers.
How to validate the format without rejecting legitimate entries.
How the collected tax ID appears in the WooCommerce order and on invoices.
Step-by-step implementation from start to live checkout, without code.

Why WooCommerce has no native tax ID field

WooCommerce was built as a general-purpose e-commerce platform serving primarily consumer (B2C) transactions. Consumer transactions, in most jurisdictions, do not require the seller to collect or record the buyer’s tax identification number — the transaction is simply subject to the applicable consumer tax rate with no further identification required. WooCommerce’s default checkout reflects this design assumption: it collects enough information to process the payment and deliver the goods, but nothing related to the buyer’s tax status.

The moment a store starts serving business customers across national borders — particularly within the European Union — this assumption breaks down. Under EU VAT rules, when a VAT-registered business in one EU member state sells goods or services to a VAT-registered business in another EU member state, the transaction can qualify for the zero rate of VAT, provided the seller verifies and records the buyer’s EU VAT number. Without the buyer’s VAT number on record, the seller cannot legally apply the zero rate — they must charge VAT at the full domestic rate, which may be refundable to the buyer but creates immediate cash flow and administrative costs for everyone involved.

The EU VAT intra-community supply rule in plain terms
Under Article 138 of the EU VAT Directive (Council Directive 2006/112/EC), the supply of goods from one EU member state to a VAT-registered buyer in another EU member state can be zero-rated, but only when the seller has verified that the buyer holds a valid VAT identification number in their member state. The European Commission’s VIES (VAT Information Exchange System) provides a public database for checking whether a given VAT number is currently registered and valid. Recording the buyer’s VAT number at the point of sale is the foundation of the documentary evidence the seller needs to justify zero-rating the transaction.

Outside the EU, similar requirements exist in different forms. Australian GST-registered businesses need their ABN (Australian Business Number) recorded for B2B transactions. Indian businesses need their GSTIN (Goods and Services Tax Identification Number). Canadian businesses need their GST/HST registration number. US businesses purchasing for resale often need to provide a Resale Certificate or State Tax Exemption Certificate. Each jurisdiction has its own system, its own format, and its own compliance requirements — but they all share the same fundamental need: the buyer’s tax identification number must be collected at the point of sale and recorded against the transaction.

Tax ID formats by jurisdiction: what you are collecting and what it looks like

Before configuring your field, it helps to understand the specific format of the tax identification number you are collecting. Format knowledge is necessary for writing useful placeholder text, for configuring basic validation rules, and for creating the correctly labeled field that the buyer immediately recognizes as the right place to enter their number.

Jurisdiction
Field label
Format
Example

EU (general)
VAT Number
2-letter country code + digits/letters
DE123456789

Germany
USt-IdNr.
DE + 9 digits
DE123456789

France
Numéro TVA
FR + 2 chars + 9 digits
FR12345678901

Spain
NIF / CIF
ES + letter + 7 digits + letter
ESA12345678

United Kingdom
VAT Number
GB + 9 digits
GB123456789

Australia
ABN
11 digits (no prefix)
51 824 753 556

India
GSTIN
15 alphanumeric characters
29AABCU9603R1ZX

Canada
GST/HST Number
9 digits + RT + 4 digits
123456789 RT0001

United States
EIN / Resale Cert.
EIN: 9 digits (XX-XXXXXXX)
12-3456789

Mexico
RFC
12–13 alphanumeric characters
XAXX010101000

Understanding these formats before you configure the field is important for two reasons. First, the field label you choose should match the terminology your customers use for their tax ID in their own jurisdiction — a German business buyer will look for a field labeled “USt-IdNr.” or “VAT Number,” not “Tax ID.” Second, the format information is what your placeholder text should show — an example in the correct format that the customer immediately recognizes as matching their own number.

Step-by-step: adding a VAT or tax ID field to WooCommerce checkout


WooCommerce additional checkout fields for VAT number and tax ID collection – adding a VAT number field to the checkout form using the Advanced WooCommerce Checkout Field Editor without custom code

Adding a custom field in Advanced WooCommerce Checkout Field Editor by NEXU WP — add a VAT number or tax ID field to any section of the checkout form from this panel, with full control over label, placeholder, validation, and conditional display rules.
1
Decide where in the checkout the field should appear

The VAT or tax ID field belongs in the billing section, close to the company name field. The logical sequence is: company name, then VAT/tax number. Both fields are billing identity fields — they identify who is making the purchase from a legal and tax perspective — and grouping them together creates a coherent “business billing details” section. In WooCommerce checkout field editors, this means adding the field to the billing fields section and positioning it immediately after the company name field using drag-and-drop reordering.

2
Choose the correct field type

Use a standard text input field for VAT and tax ID collection. Tax ID numbers are alphanumeric in most jurisdictions — they contain both letters (the country code prefix for EU VAT numbers, letters in GST/HST numbers, etc.) and digits, which rules out a pure number field type. A text field with appropriate placeholder text and validation is the correct choice. Do not use a textarea — tax IDs are single-line data entries and a textarea implies the customer should write more than one line, which creates unnecessary confusion.

3
Write the field label — jurisdiction-appropriate terminology matters

If your store primarily serves one jurisdiction, use the exact terminology that market uses for its tax number. “VAT Number” for UK and most EU stores. “ABN” for Australian stores. “GSTIN” for Indian stores. If your store serves multiple international markets, “VAT / Tax ID Number” is a reasonable universal label that most business buyers in different countries will recognize as the field intended for their tax identification number. Avoid generic labels like “Tax Number” without further context — they are ambiguous and may cause buyers to enter the wrong identifier.

For stores serving multiple EU countries, you can use the label “VAT Number” universally — EU business buyers in all member states recognize this term even in their local language context, and it is the most universally understood label for the EU intra-community VAT identification system.

4
Write placeholder text that shows the expected format

Placeholder text for a VAT or tax ID field should show an example number in the correct format for your primary market. For a UK store: “e.g. GB123456789.” For a German store: “e.g. DE123456789.” For a store serving all of Europe: “e.g. DE123456789 or GB123456789.” The example communicates both the expected prefix format and the approximate length of the number, which is the most common source of format errors. Customers who have their VAT number but are unsure whether to include the country code prefix will see from the example that it should be included.

5
Set required vs. optional status thoughtfully

Whether the VAT or tax ID field should be required depends on your specific business model and tax obligations. For stores where all orders are B2B and all are cross-border EU transactions, making it required is appropriate — every order needs the buyer’s VAT number for correct tax treatment. For stores that serve a mix of business and consumer customers, or domestic and international customers, making it required globally will block legitimate customers who genuinely do not have a tax ID to provide. The better approach is to make it optional globally, but required conditionally for customers who have identified themselves as business buyers from specific countries.

Add a help note beneath the field: “Required for VAT-exempt intra-EU business purchases. Leave blank if ordering as an individual.” This tells business buyers why they need it and reassures individual buyers that they can safely skip it.

6
Configure conditional logic to show the field only when relevant

Individual consumers do not have VAT numbers and will be confused by a VAT number field — either they leave it blank (fine operationally but creates form clutter) or they worry that their absence of a VAT number means something is wrong with their order (a trust concern). The cleanest implementation uses a “Business customer” checkbox or radio button at the top of the billing section, with the company name field and the VAT number field appearing conditionally when the business option is selected. Individual customers see neither field. Business customers see both, in immediate sequence, with the VAT number field labeled and placeholdered appropriately for their context.

7
Add format validation — but calibrate it carefully

Format validation for VAT numbers helps catch obvious errors — a number entered without the country prefix, a number that is too short or too long, a number with invalid characters. However, VAT number format validation must be calibrated to the diversity of formats you actually expect to receive. If you serve all of Europe, your validation needs to accommodate the format variations across all EU member states. If you only serve UK businesses, a simple “starts with GB, 9 digits follow” rule is sufficient. The most common mistake is using a regex that is correct for one country’s format and incorrectly rejects valid numbers from another country.

For pan-European stores, a minimum length constraint (minimum 9 characters including the country prefix) and a maximum length constraint (maximum 15 characters) catches obviously malformed entries without being so strict that it rejects valid numbers from member states with unusual format structures.

8
Verify the data appears in the order and on invoices

Place a test order with a sample VAT number and confirm that the number appears in the WooCommerce order detail view in your admin panel. Then check the order confirmation email to confirm it is included there too. If you use an invoice plugin (such as WooCommerce PDF Invoices, Germanized, or a third-party invoicing integration), check that the VAT number field data from custom checkout fields is mapped into the invoice template. A VAT number that is collected at checkout but does not appear on the invoice defeats the entire compliance purpose of collecting it.


WooCommerce billing field management for VAT and tax ID collection – viewing the complete billing field setup including VAT number field positioned after company name in the checkout form

Billing field overview in Advanced WooCommerce Checkout Field Editor by NEXU WP — the VAT number field sits immediately after company name in the billing section, visible and clearly positioned for business buyers.

Handling multiple tax jurisdictions on one checkout form

Stores serving customers across multiple countries face a more complex configuration challenge: the correct field label, placeholder text, and validation rules differ by country. A customer in Germany expects to see a field relevant to their VAT number format. A customer in Australia expects an ABN field. A customer in India expects a GSTIN field. Running a separate checkout page for each country is impractical. The better approach uses country-based conditional logic to show jurisdiction-appropriate fields.


Advanced WooCommerce checkout field editor for multi-jurisdiction VAT collection – using conditional logic to show country-appropriate tax ID fields based on the customer's selected billing country

Field editor interface in Advanced WooCommerce Checkout Field Editor — configure country-based conditional rules to show the right tax ID field with the right label and placeholder for each billing country.

The multi-jurisdiction implementation creates a separate tax ID field for each jurisdiction you serve, each with its market-appropriate label, placeholder text, and validation rule, and each shown conditionally based on the billing country selected. When a customer selects Germany as their billing country, the “USt-IdNr.” field appears. When they select Australia, the “ABN” field appears instead. When they select the United States, neither field appears unless your US workflow requires an EIN or resale certificate collection.

This approach requires more initial configuration than a single universal tax ID field, but it produces a meaningfully better experience for buyers in each market and higher-quality, correctly formatted data for your tax records and invoice system. The time investment in setting up country-specific fields is recovered quickly in reduced invoice correction requests and cleaner tax documentation.

VIES validation: format checking vs. real-time validity checking

There is an important distinction that store owners implementing EU VAT number collection should understand: the difference between format validation (checking that the number matches the expected structural pattern for the country) and real-time validity checking (verifying against the European Commission’s VIES database that the number is currently registered and active).

Format validation

Checks that the entered number matches the structural pattern for the selected country. A UK VAT number starting with “GB” followed by 9 digits passes format validation even if that specific number is not registered. Format validation catches obvious entry errors — wrong prefix, wrong length, invalid characters — at the moment of form submission, before the order is placed.

Implementable at checkout field level — no external API required

VIES real-time validation

Checks the entered VAT number against the European Commission’s VIES database in real time, confirming whether the number is currently active and registered in the stated member state. VIES validation catches structurally valid numbers that belong to businesses whose registration has lapsed or was never valid. It requires an API call to the VIES service during checkout submission.

Requires integration with the VIES API — beyond basic field configuration

For most WooCommerce stores, format validation at the checkout field level is the right starting point. Real-time VIES validation is a valuable additional layer for high-volume B2B stores or stores where VAT fraud risk is a genuine concern, but it adds API dependency, response latency to the checkout process, and occasional VIES service unavailability that must be handled gracefully. The European Commission’s VIES service itself acknowledges response time variability and recommends not blocking transactions if the service is temporarily unavailable.

A practical middle ground: implement format validation at checkout to catch entry errors, and perform VIES validity verification as a post-order batch process rather than a real-time checkout gate. This approach captures the data accurately, prevents the most common format errors, and leaves VIES verification as an asynchronous process that does not introduce latency or failure risk into the checkout flow itself.

Ensuring the tax ID appears on WooCommerce invoices

Collecting the VAT or tax ID at checkout is only half the requirement. The number must appear on the invoice issued to the buyer — this is the documentary record that substantiates the zero-rating or tax exemption for both the seller and the buyer’s accounts payable. A VAT number collected as a checkout field custom meta value needs to be pulled through to the invoice template.


WooCommerce checkout field configuration for VAT collection – exporting the complete field setup including VAT number field configuration for backup and replication across multiple WooCommerce stores

Export your VAT field configuration in Advanced WooCommerce Checkout Field Editor — once your VAT number setup is complete, back it up or replicate it across other stores instantly.
WooCommerce PDF invoice plugins

Plugins like WooCommerce PDF Invoices and Packing Slips by WP Overnight, Germanized for WooCommerce, and similar invoice plugins typically allow you to include custom order meta fields in the invoice template. After placing a test order with your VAT number field, check the order meta in the order detail view (often accessible through the WooCommerce order screen under custom fields) and use the meta key for your VAT number field to reference it in the invoice template. The specific implementation varies by invoice plugin — refer to the plugin’s documentation for custom field inclusion.

Order confirmation emails

Custom checkout field data collected through a quality field editor plugin is stored as WooCommerce order meta and can be included in order confirmation emails. For most invoice and order email customization, the custom field data appears automatically in the order detail section if the plugin stores it correctly — test by placing an order and reviewing the order confirmation email received. If the VAT number does not appear automatically, adding it to the email template requires editing the WooCommerce email template or using an email customizer plugin that supports order meta display.

Quick-reference implementation summary

Configuration decision
Recommended approach

Field type
Text input — VAT numbers are alphanumeric

Field position
Billing section, immediately after company name

Label (single-market)
Use the local terminology: VAT Number, ABN, GSTIN, EIN

Label (multi-market)
“VAT / Tax ID Number” — broadly recognized across markets

Placeholder text
“e.g. GB123456789” — show the expected prefix and length

Required status
Optional globally, required conditionally for business buyers

Conditional display
Show only when business customer toggle is selected

Validation type
Format validation (length, prefix) — not real-time VIES at checkout

Post-configuration test
Confirm data in order admin, email, and invoice before going live

VAT and tax ID collection at WooCommerce checkout is one of those requirements that feels more complex than it is before you start, and straightforwardly manageable once you understand the specific pieces: field type, label, placeholder, conditional display, validation, and invoice integration. The implementation described in this guide — using a WooCommerce checkout field editor with conditional logic for business tax ID collection — handles all of these pieces without requiring custom development or ongoing code maintenance.

The result is a checkout form that serves both consumer and business customers correctly: individual buyers see a clean form with no unnecessary business fields, while B2B buyers see a professionally configured billing section that includes exactly the tax identification field their purchasing and accounts payable processes require. That combination — frictionless for everyone, precise for each type — is what a well-configured WooCommerce B2B checkout looks like in practice.

VAT Numbers · Tax IDs · Conditional Logic · No Code

Collect VAT and tax IDs at checkout — correctly, cleanly, and without code

Advanced WooCommerce Checkout Field Editor gives you text field creation, country-based and business-type conditional logic, format validation, placeholder text configuration, and WooCommerce Blocks support — everything you need to implement professional VAT and tax ID collection for your B2B customers.

Advanced WooCommerce Checkout Field Editor – VAT number and tax ID collection plugin for B2B WooCommerce stores

Advanced WooCommerce Checkout Field Editor by NEXU WP
WooCommerce Plugin · VAT & Tax ID Fields · B2B Ready · Blocks Compatible


Set Up VAT Collection on Your Checkout

Picture of Mahdi Jabinpour

Mahdi Jabinpour

As a sales-driven developer and the founder of NexuWP, Mahdi focuses on building WordPress solutions that don't just work—they convert. From AI-powered bulk translation engines to high-efficiency media offloading, he helps business owners automate the "grind" so they can focus on global growth. He is a pioneer in integrating advanced LLMs into the WordPress workflow.

RELATED POSTS

RELATED POSTS

3 Reviews
Thomas Johnson 3 months ago

Finally a clear guide for ABN collection! Saved me so many headaches

Mahdi Jabinpour 3 months ago

That's exactly what we hoped this would do for you.

Margaret Williams 3 months ago

Just wanted to drop a quick note to say this guide was a total lifesaver for setting up VAT fields in WooCommerce. The tip about placing the field right after the company name was perfect it keeps everything looking clean and makes sense for business buyers. The only thing I'd tweak is adding a little note about using conditional logic so the field only shows up if someone selects "business" at checkout. that'd save my clients from dealing with extra fields they don't need.

Mahdi Jabinpour 3 months ago

Thanks for the kind words! Conditional logic is a great idea we'll consider adding that to the guide in the next update

Susan Brown 3 months ago

This guide was a total lifesaver for setting up VAT fields for my B2B customers. The part about conditional logic for business buyers only was exactly what I needed no coding, just simple, clear steps.

Mansour jabinpour 3 months ago

Thank you.

Please log in to leave a review.