Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Sales
  3. VAT Check | VIES | VIES EU Validation | VAT Validation Odoo | EU VAT VIES v 19.0
  4. Sales Conditions FAQ

VAT Check | VIES | VIES EU Validation | VAT Validation Odoo | EU VAT VIES

by Alaska Hub https://alaskahub.io
Odoo
v 19.0 Third Party 5
Download for v 19.0 Deploy on Odoo.sh
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Versions 17.0 18.0 19.0
You bought this module and need support? Click here!
Versions 17.0 18.0 19.0
  • Description
  • Manifest

EU VAT Compliance — Free

Validate VAT numbers,
automatically

Check EU VAT numbers against the official VIES service with one click — right where you work. Free and fully functional.

VIES validation Audit log Orders, invoices & contacts Batch checking
odoo.yourdomain.com / sales / S00042
VAT Check on a sale order

What's included

Everything you need for VAT validation

Validate EU VAT numbers and keep a full audit trail — from sale orders, invoices, and contact forms. Completely free.

✅
VIES validation
Validate VAT numbers against the official European Commission VIES service. Results posted directly in the record chatter.
📋
Full audit log
Every check is logged with date, result, trader details, and who triggered it. Filter by status, country, or date range.
🌎
Country filtering
Choose which EU countries to validate. All 27 VIES-supported countries are pre-selected on install. Non-EU countries are skipped automatically.
🔔
Smart activities
Creates to-do activities when attention is needed — invalid VAT, missing VAT, or VIES errors. Assign to salesperson or manager.
👥
Batch checking
Select multiple records in the list view, run Check VAT from the Actions menu, and they are all queued for validation.

Need more?

Upgrade to Pro

The Pro version adds official proof documents and Consultation Numbers for full audit compliance.

⚙️ Auto-check triggers
Automatically validate VAT when an order is created, confirmed, or both — no manual clicks needed.
📄 Proof documents
Generates a dated HTML proof document with VAT status, trader details, and Consultation Number. Attached directly to the record.
🔎 Consultation Numbers
Set your company VAT as requester to receive an official VIES Consultation Number — verifiable on the EU website for audits.

Built for the real world

Edge cases handled

Real sales data is messy. The module handles every scenario gracefully.

Partner has no VAT Activity created: "Fill in the VAT number and click Check VAT"
Non-EU country (US, UK, etc.) Chatter note posted immediately — no VIES call, no delay
Country removed from list Marked as Not Applicable with a chatter note
VIES service is down Retries up to 5 times over 10 minutes, then creates an activity
Spanish VAT — no name returned Expected by VIES design — no activity created
VAT has dots, dashes, or spaces Cleaned automatically before validation

FAQ

Common questions

Everything you need to know before installing.

Does it work on Odoo.sh? +

Yes. Fully compatible with Odoo.sh, on-premise, and Community installations. The module calls the VIES service over HTTPS, which is allowed by default on all hosting types.

Does it require any configuration after install? +

No. Install and it works immediately. All EU countries are pre-selected. Settings are in Settings → General Settings → VAT Validation.

What happens if VIES is down? +

The module retries automatically. Checks are processed by a scheduled action every 2 minutes. If a call fails, it is retried on the next cycle — up to 5 attempts over 10 minutes. After that, the record is marked as Error and a to-do activity is created so you can check manually.

Does it validate non-EU VAT numbers? +

No. VIES only covers the 27 EU member states plus Northern Ireland (XI). Records from non-EU countries are detected instantly and a chatter note is posted — no delay, no false activity.

Does it block order confirmation if VAT is invalid? +

No. The module is non-blocking by design. It validates and informs, but never prevents an order from being confirmed. Invalid results create a to-do activity for the responsible person to review.

What's the difference with the Pro version? +

Proof documents and Consultation Numbers. The Pro version generates a dated HTML proof document attached to the record, and uses the VIES checkVatApprox endpoint to obtain an official Consultation Number that can be verified on the EU website for audit purposes.

Step by step

How it works

From the moment you click Check VAT to the result in your chatter — here is everything the module does behind the scenes.

1
VAT number is extracted from the contact
The module reads the VAT number from the invoice contact. It strips spaces, dots, and dashes, then splits the country prefix from the number. If the VAT starts with a VIES country code (like DE, FR, NL), that prefix is used. Otherwise, the partner's country determines the prefix. Greece is handled automatically — Odoo uses GR, VIES expects EL.
2
Country eligibility is checked
If the partner's country is not in the EU, the check stops immediately and a chatter note is posted explaining that VIES only validates EU countries. If the country is in the EU but not in your configured "Included Countries" list, it is also skipped with a note.
3
VIES is called via the official SOAP service
The module calls the European Commission's VIES web service using the checkVat endpoint. If VIES is temporarily unavailable, the module retries automatically across cron cycles (up to 5 attempts over 10 minutes) before flagging an error.
4
Results are posted in the chatter
A summary note appears in the record's chatter with the result (Valid or Invalid), the full VAT number, and trader name. Your team sees the result immediately without opening any files.
5
Activities are created when action is needed
The module only creates activities when something requires human attention: an invalid VAT number, a missing VAT on the contact, or a VIES service error after all retries. Activities are assigned to the salesperson or sales manager, based on your settings. Valid results — no activity, no interruption.

Settings → General Settings → VAT Validation (VIES)

Configuration

After installation, all settings are available under Settings → General Settings. Look for the VAT Validation (VIES) section. Sensible defaults are set on install — you can start using the module immediately.

•
Included countries
A multi-select field listing all 27 EU member states. Remove countries you do not trade with to skip checks for those. All are pre-selected on install.
•
Activity responsible
Choose who gets the to-do activity when a VAT check requires attention: Salesperson (the person assigned to the order) or Sales Team Manager.

Sale orders, invoices & contacts

Check VAT from anywhere

The module adds a Check VAT button to three places: the sale order header, the invoice header, and the contact form (as a stat button, visible when a VAT number is filled in). The chatter note and activity are always attached to the record you clicked from.

→
Check VAT button
On sale orders and invoices: a header button next to Cancel / Confirm. On contacts: a stat button that appears when a VAT number is present. One click queues the record for VIES validation.
→
VAT Check Status field
A read-only status field is added to the record. Values: Not Checked, Pending, Valid, Invalid, Error, or Not Applicable. Filter and group your records by this field in list view.
→
Check Date field
Shows when the last VAT check was performed. Only visible after a check has been completed.

List view → Actions menu

Batch VAT check

Need to validate dozens of records at once? In the list view for sale orders, invoices, or contacts, select the records you want to check, open the Actions menu, and click Check VAT.

All selected records are set to Pending status. A scheduled action picks them up every 2 minutes and processes them one by one. Results appear in each record's chatter as they are completed. Use the search filters (VAT Valid, VAT Invalid, VAT Pending, VAT Not Checked) to monitor progress.

Sales → Orders → VAT Check Log

Audit log

Every VAT check is recorded in a dedicated log accessible under Sales → Orders → VAT Check Log. The log is read-only for salespeople and fully manageable by sales managers.

Check date When the VIES call was made
Source Sale Order, Invoice, or Contact
VAT number The full VAT number that was validated
Result Valid, Invalid, or Error — shown as a colored badge
Trader name & address Company details as returned by VIES
Triggered by Which user triggered the check

Use the built-in search filters to find checks by result (Valid / Invalid / Error), group by country code, or filter by date range.

All list views

Search & filter by VAT status

The module adds search filters to the sale order, invoice, and contact list views so you can quickly find records by their VAT check status.

VAT Valid VAT Invalid VAT Pending VAT Not Checked Group by VAT Status

Combine these with Odoo's default filters (My Orders, This Month, etc.) to quickly identify which records still need attention.

Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Discuss (mail)
• Invoicing (account)
Lines of code 691
Technical Name alaskahub_vat_check
LicenseLGPL-3
Websitehttps://alaskahub.io

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with