Overview
The Compliance Check flags expense documents that may not meet the formal requirements for VAT recovery, so you can review them before they go into a claim.
In VAT4U, compliance means only whether an invoice or receipt meets the formal requirements for VAT deduction or recovery in the country of refund.
It does not pertain to other compliance topics outside of VAT recovery criteria. Always ensure that invoices meet jurisdictional standards for VAT purposes.
Compliance Check Types
VAT4U has two kinds of compliance check: Standard and Advanced. The automatic check that runs after OCR is Standard, unless the expense's last check was Advanced.
Standard (Rule-based)
The standard compliance check uses deterministic pattern matching against the OCR text of the document. It searches for specific keywords, claimant information, VAT numbers, and other indicators based on the country of refund rules.
This method is fast, does not consume AI Credits, and is well-suited for high-volume processing.
Advanced (AI-powered)
The advanced compliance check uses AI with document vision and semantic analysis to evaluate compliance. Instead of keyword matching, it analyses the full context of the document - understanding layout, stamps, watermarks, and meaning.
Key differences from Standard:
Context-aware detection - for example, the word "copy" in an email address will not trigger a false positive, whereas a "COPY" stamp on the document will.
Fuzzy matching - company name variations and partial address matches are handled more intelligently.
Document vision - the AI can see the actual document image, not just the OCR text.
Consumes AI Credits - an estimate is shown before processing begins, and consumption of AI credits is offset against your current balance only for successfully processed expenses.
Note: The AI-powered compliance check is ran by default as part of the Smart AI expense enrichment process when processing expenses via Batch AI.
Note: When OCR has not yet been processed for some documents, the system will automatically run OCR first and then trigger the AI-powered compliance check once the OCR result is available.
| Standard (Rule-based) | Advanced (AI-powered) |
How it works | Pattern matching on the document's OCR text: keywords, your company details, VAT numbers and other indicators, based on the rules of the country of refund | AI with document vision and semantic analysis: it looks at the document image and understands layout, stamps, watermarks, meaning and it is context aware |
What it checks | The core items (see next section) | The core items, plus vendor details, invoice number and date, VAT amount and rate, and exchange rate |
Copy detection | Keyword-based | Context-aware: a "COPY" stamp is flagged, while "copy" in an email address or copyright notice is not |
Company name matching | Matches the names configured for your company | Fuzzy matching of name variations and partial addresses, unless your company has Require exact match turned on |
Cost | Free | Consumes AI Credits (see Billing) |
Best for | Fast, high-volume processing | Higher accuracy where documents vary in layout or quality |
You can see which type of check was performed for each expense in the Compliance Check Type column in the Manage Expenses table.
The possible values are Standard or Advanced. If no check has been run, the field will be empty.
What is checked
The table lists each item the compliance check looks at, the non-compliance reason recorded when it is flagged, and what the flag means.
Non-compliance reasons are shown in the Non-Compliance Reasons column, in Data Entry and in the expense export.
After an Advanced check, the Compliance check results box in Data Entry also lists each item as passed or flagged.
What is checked | Non-compliance reason |
Whether the document is marked as a copy or duplicate | Invoice copy or similar |
Whether the document contains pro-forma, quote or similar wording | Proforma or similar |
Whether the document contains wording that disqualifies it as a VAT invoice | Disqualifying keyword found |
Whether the document is a VAT invoice or receipt | Not a VAT invoice or receipt |
Whether the document is only a card payment slip | Credit card slip detected |
Whether a local VAT term appears on the document | Missing VAT local name |
Whether the claimant company name appears on the document | Missing claimant details |
Whether the claimant VAT number appears on the document | Missing claimant VAT ID |
Whether the claimant company address appears on the document | Missing claimant address |
Whether VAT was charged on a service where it typically applies | Potentially incorrectly charged VAT |
Whether the vendor name appears on the document | Missing vendor name |
Whether the vendor VAT or tax number appears on the document | Missing vendor VAT or tax number |
Whether an invoice number appears on the document | Missing invoice number |
Whether an invoice date appears on the document | Missing invoice date |
Whether a VAT amount appears on the document | Missing VAT amount |
Whether a VAT rate appears on the document | Missing VAT rate |
Whether a foreign-currency invoice shows an exchange rate or VAT in local currency | Missing exchange rate or VAT in local currency |
Whether a KSeF verification QR code appears on the document | Missing KSeF verification QR code |
Whether the KSeF QR code links to the official KSeF portal | KSeF QR code does not point to official portal |
When an item does not apply to an invoice, the Advanced results show it as not required, with the reason. For example: "Claimant company name on the document" with "Not required below the simplified invoice limit" or "Not required for public transport"
When claimant details are checked
Claimant company name is checked on invoices at or above the simplified-invoice limit of the country of refund. In Germany it is also checked below that limit for accommodation, car rental and tooling, but never for public transport. For Swiss (13th Directive) claims it is always checked.
Claimant VAT number is checked only in Austria, Czech Republic, Greece, Italy, Malta, Poland, Portugal, Romania, Slovenia and Spain, and only at or above the simplified-invoice limit.
To avoid false flags, add the other names the company trades under as alternative company names in the company settings.
Potentially incorrectly charged VAT
This is checked for foreign VAT refund claims (8th and 13th Directive) when VAT was charged on one of these categories: car repair (service only), cross-border flight, lawyer or consultancy services, marketing services, online services, other services, subscription, subscription reduced rate, EU reverse-charge transport service, and training.
Polish KSeF compliance
KSeF (Krajowy System e-Faktur) is Poland's national e-invoicing system. It is centralized electronic invoicing platform, operated by the Polish Ministry of Finance.
It was introduced to close the VAT gap, standardize invoice exchange, and give tax authorities real-time visibility into B2B transactions.
Every structured invoice issued through KSeF receives a unique KSeF number and a QR code that link the document to its authoritative record in the national system - making invoice authenticity independently verifiable.
KSeF usage becomes mandatory in Poland from 1 February 2026 for large taxpayers (turnover above PLN 200 million in 2024) and from 1 April 2026 for all remaining VAT-registered businesses. From these dates onward, a valid KSeF reference is a prerequisite for an invoice to be considered compliant for VAT purposes - and, critically, for VAT reclaim.
Both check types look for this QR code when the country of refund is Poland.
E-invoices
For structured e-invoices, the compliance status also reflects the e-invoice's own validation. An e-invoice received as XML only, with no PDF, is assessed by these checks alone.
What is checked | Non-compliance reason | Flagged when |
Whether the buyer on the e-invoice is the claimant company | E-invoice buyer does not match your company | The buyer named in the e-invoice is not the claimant company. |
Whether the e-invoice VAT rates are valid for the country of refund | E-invoice contains a VAT rate not valid for the country of refund | A line item uses a VAT rate that was not valid in the country of refund on the invoice date. |
Whether the supplier VAT number is valid | E-invoice supplier VAT number could not be verified | The supplier's VAT number has an invalid format or could not be verified in the EU VIES registry. |
Whether the e-invoice data matches the PDF copy | E-invoice data does not match the PDF copy | Some e-invoice details (invoice number, supplier name, supplier VAT number, gross amount or invoice date) were not found in the attached PDF. |
Other e-invoice validation | E-invoice validation issue | The e-invoice failed another validation check. |
In the Advanced results, each e-invoice row also explains what was found. A check that could not be performed, for example because the VIES registry was unavailable, is shown as skipped with the reason.
Compliance statuses
Every expense has one of five compliance statuses. The automated checks set the first three. Only a reviewer can set the last two.
Keep in mind that the system's compliance checks rely on OCR and AI, meaning accuracy may vary depending on document quality.
Status | Meaning | Set by |
Not verified | Not assessed yet. The document has not been read yet, has no country of refund, OCR information is not available, or a new check is in progress | System |
Looks compliant | No issues were found (no non-compliance reasons are identified). This does not guarantee compliance, but it indicates that the document appears to meet VAT recovery requirements based on the data available | Check |
Potentially not compliant | One or more possible issues were found (VAT4U detects potential non-compliance); see the non-compliance reasons | Check |
Compliant | Confirmed compliant by a reviewer. This decision overrides the system's automated checks. | Reviewer |
Not compliant | Confirmed not compliant by a reviewer. The expense is excluded from claims. This decision overrides the system's automated checks. | Reviewer |
Reviewing results in Data Entry
Open an expense in the Data Entry module to see why it was flagged and to confirm the result.
After an Advanced check, a Compliance check results box shows the status, the country of refund, and one row per item checked. Each row reads as a finding, for example "No copy or duplicate marking found", "Claimant company name found on the document" or "VAT rate found". Items that do not apply to the invoice are shown as not required, with the reason (for example "Not required below the simplified invoice limit"). The box ends with the note: "These results are AI-generated and AI-checked. Treat them with caution."
After a Standard check, a yellow box lists the reasons the document is potentially not compliant.
In both cases, when issues were found, you can check the document and mark it as Compliant or Not compliant. The decision is applied when you save the expense.
Marking Compliant clears the non-compliance reasons.
Marking Not compliant also excludes the expense from claims.
To set the status for many expenses at once, use Batch actions > Update status > Compliance status. This changes only the compliance status; it does not exclude the expenses.
A reviewer's decision is kept when the expense is edited or its document is processed again. Running a new batch of Compliance & Smart Checks on the expense resets it, though (see below).
Running Compliance & Smart Checks
Use Compliance & Smart Checks to check many expenses at once. Smart Checks run OCR where it is missing, evaluate compliance, and assess data quality.
Open the Manage Expenses table and select or filter the expenses you want to check.
Click Batch actions and choose Use table selection or Use filtered data.
Select Compliance & Smart Checks and click Next.
Under Choose compliance check type, select Standard (selected by default) or Advanced.
For Advanced, review the Estimated AI Transactions and your Available balance.
Review the verification summary showing the number of documents to process per check type (OCR, Compliance, Data Quality, Page Recognition).
Click Update to start processing.
The checks run in the background; you can follow them on the Running Jobs page. When they finish, the following fields will be updated: Compliance Status, Compliance Check Type, Non-Compliance Reasons, Data Quality Match, VAT Amount Match, Invoice Date Match.
Notes:
Expenses without an uploaded document are skipped.
If OCR has not finished for a document, OCR runs first and the compliance check follows automatically.
Important: a batch check first resets each expense's compliance status to Not verified and then checks it again. This includes expenses a reviewer already marked Compliant or Not compliant, so leave those out of your selection if you want to keep the decision.
When checks run automatically
Event | What happens |
A document is read by OCR (upload, bulk import, connector, mailbox, API) | A Standard check runs |
You save an expense in Data Entry after changing the country, company, date, amounts, categories or document | A Standard check runs and replaces the previous result, including an Advanced one |
The document is replaced | The compliance check runs again, using last used check type |
Smart AI extraction | If your user has the Use AI Compliance Check permission, the AI check is included. Its result is applied only when you choose to run Smart Checks while applying the Smart AI results |
For a bulk import, turn on Run OCR Automatically after import (or Run SmartAI Extraction after import) in the last step, so documents are read and checked as soon as the import finishes. Checks never change a status a reviewer has confirmed, except a batch check as described above.
Billing
The Standard check is free. The Advanced check costs 0.25 AI Transactions per expense, which is 1 AI Transaction per 4 expenses checked.
Who is charged: the AI Transactions are taken from the balance of the home company of the user who started the check, not of the company that owns the expenses. This is also the balance shown as Available in the batch dialog. For service providers, this means checks run on client expenses use the provider's balance.
Estimate: the estimate is based on the number of selected expenses, so it can be higher than the final charge when some expenses have no document.
Only successful checks are charged. A check that fails is not billed.
Insufficient balance: if your balance may not cover the batch, the dialog warns you. Processing stops once your AI Transactions run out, and the remaining expenses stay Not verified.
Inside Smart AI extraction, the AI compliance check is included in the extraction and is not charged separately.
Tips
Combine compliance with VAT Amount Match. If Compliance Status is Looks compliant and VAT Amount Match is Matched, VAT is very likely shown on the document with the correct amount. If Compliance Status is Looks compliant but VAT Amount Match is Not matched, review the expense manually or enrich it with Smart AI.
Use the Compliance view. The Manage Expenses table has a predefined Compliance view, and you can filter on Compliance Status, Compliance Check Type and Non-Compliance Reasons.
Compare check types. Filter on Compliance Check Type to see whether the Advanced check adds value for your kind of documents.
Tune the check to your company. In your company settings, add alternative company names so your name is recognised in all its forms.
Compliance Check Disclaimer
The compliance check feature in VAT4U, powered by AI, is designed to assist users in evaluating whether invoices are eligible for VAT recovery. Its results are generated automatically using OCR and AI and are informational only, so accuracy depends on document quality. This tool does not provide a guarantee of compliance. Users remain fully responsible for verifying outputs, ensuring accuracy, and confirming compliance with jurisdictional requirements. Always perform a thorough review before proceeding with VAT recovery claims.

