How Do I Add a VAT Number Field to WooCommerce Checkout?
Why a VAT Field Needs More Than a Text Input
For EU B2B transactions specifically, a valid VAT number often triggers the "reverse charge" mechanism, where VAT isn't charged on the sale itself, and the responsibility for accounting for it shifts to the buyer's own VAT return. Getting this right requires actually verifying the VAT number is valid and active (via the EU's VIES lookup service), not just accepting whatever's typed into a field, since applying reverse charge based on an unverified or fake number is a real compliance risk.
What a Proper WooCommerce VAT Setup Needs
- Live validation against VIES (the EU's official VAT number verification system) at checkout, rejecting or flagging numbers that don't validate rather than accepting anything typed in.
- Correct reverse-charge tax logic applied only when the validated VAT number and the customer's country combination actually qualify, since the rules differ for domestic versus cross-border B2B transactions within the EU.
- The VAT number stored properly on the order for accounting and audit purposes, not just displayed at checkout and then discarded.
- Handling for customers outside this specific scenario (non-EU businesses, or EU consumers rather than businesses) who shouldn't see or need this field at all.
Setting It Up Properly
- Use a dedicated EU VAT number plugin that handles VIES validation and reverse-charge tax logic together, rather than building a plain custom field alone.
- Test the full flow with both valid and invalid VAT numbers to confirm tax is applied correctly in each case.
- Confirm the VAT number is properly recorded on orders for accounting and reporting purposes.
Need proper EU VAT handling set up for a B2B store? See custom WooCommerce development.