How to create a customer with the right tax details
What is it for?
The customer's name, address and tax number (NIF) are printed on every invoice and go to the Tax and Customs Authority (AT) in the SAF-T. Once the first document for that customer has been issued, they can no longer be corrected freely. The Country, the tax number and, for a customer in another European Union country, the validation of the tax number in VIES also decide, on their own, the VAT on that customer's invoices. That is why it pays to create the form with the right details the first time.
fiscaldoo checks a Portuguese tax number by its check digit and warns you if another customer with the same tax number already exists.
When to use it?
- Before invoicing a new customer, Portuguese or foreign.
- When a customer asks you for an invoice with their tax number and does not have a form yet.
- When you want to check whether a customer already exists before creating them again.
For a private individual who does not give a tax number, do not create a form: use the Final consumer customer, which already exists (see “Important notes”).
Where to find it?
Billing › Customers and items › Customers › New
Before you start
- Your profile is Administrative or Accountant.
- Have to hand the customer's full name, address and tax number, as shown on their card or on one of their invoices. For a customer in another European Union country, the tax number is the VAT number with the country prefix (for example
DE…), and it is validated in VIES before the first invoice (step 6).
How to use it
- Open Billing › Customers and items › Customers and click New.
- In Name (company or person), type the full name, for example
Papelaria Exemplo, Lda. - In Address, fill in the street, the city, the Zip and, in Country, choose the customer's country (Portugal in the example). For a customer in another European Union country, fill in the Country on the form and type the tax number with the country code in front (step 4): without the Country, or with the tax number without the country code, an invoice with 0% EU is refused (see “Common problems”).
- In NIF, type the number without spaces, for example
599999993, and move to another field. For a Portuguese tax number, Valid tax number appears next to it. - Save the form (the cloud icon, next to the form name).
- For a customer in another European Union country, click Validate VIES, next to the tax number, and check that it becomes Valid. Without this, invoices to that customer carry Portuguese VAT (see “Customer from another country: the VAT changes on its own”).
Expected result
- The form is saved, with the Billed, Receivable, Late and Statement buttons at the top, still at €0.00.
- For a Portuguese customer, the tax number shows Valid tax number, with no VIES state and no Validate VIES button: those only appear for customers in other EU Member States (step 6).
- The customer now appears in the Customers list and can be chosen on an invoice: How to issue a certified invoice.
Demo video
No telemóvel, rode-o para a horizontal e veja o vídeo em ecrã inteiro: o texto do ecrã fica legível.
Transcrição
Customer from another country: the VAT changes on its own
fiscaldoo chooses the Fiscal Position of each invoice from the customer's form: the Country, the NIF and, for a customer in another European Union country, the validation of the tax number in VIES. The fiscal position replaces the product's rate. On an ordinary sale, do not choose it by hand. This is what was seen on 30/10/2026, on a €10.00 draft for the product [KIT-CAN] Kit de canetas (23%):
| Customer form | Fiscal Position on the invoice (Other Info tab) | Taxes column | Total |
|---|---|---|---|
| Country Portugal | Portugal | 23% | €12.30 |
Another European Union country, with the tax number Valid in VIES (for example Germany, DE811128135, after Validate VIES) | Intra-comunitário (UE) | 0% EU (exemption reason M16, RITI art. 14) | €10.00 |
| Another European Union country, with the tax number typed but not yet validated in VIES (Not checked) | Intra-comunitário privado (UE) | 23%, with the warning “The VAT number of this EU customer is not validated in VIES, so Portuguese VAT was applied and not the intra-community exemption…” | €12.30 |
| Another European Union country, no tax number | Intra-comunitário privado (UE) | 23%, with two warnings: the one about the customer with no taxpayer number, treated as a final consumer of that country (see “Important notes”), and “Distance sale to a consumer in another EU country, below the 10,000 EUR limit: the Portuguese VAT applies…” | €12.30 |
| Country outside the European Union (for example United States) | Extra-comunitário (Não UE) | 0% EX (exemption reason M05, VAT Code (CIVA) art. 14) | €10.00 |
With the tax number to validate: Portuguese VAT
For a tax number from another European Union country that has just been typed, the form shows Tax number to validate, Not checked and the Validate VIES button, and a banner at the top: “Until the VAT number is validated in VIES, the invoices of this customer carry Portuguese VAT: the intra-community exemption (art. 14 of the RITI) only applies by itself with a valid number. Press “Validate VIES” beside the VAT number; an invoice with the intra-community exemption (0 % EU) cannot be confirmed before that.”
An invoice to that customer comes with 23% and shows the warning at the top of the draft:
Validating the tax number in VIES: the four states
Validate VIES asks VIES, the European Commission service that confirms whether a VAT number is active, and saves the state and the date and time of the validation on the form. The state appears next to the date, below the tax number:
| State | What the form shows | VAT on new invoices to that customer |
|---|---|---|
| Not checked (nobody has validated it yet) | Tax number to validate and the banner “Until the VAT number is validated in VIES…” (above) | 23%, position Intra-comunitário privado (UE) |
| Valid | Valid tax number, no VIES banner | 0% EU, position Intra-comunitário (UE) |
| Invalid | The Invalid state and the banner “VIES says this VAT number is not valid. Correct it with the customer and validate it again: an invoice with the intra-community exemption cannot be confirmed with an invalid number.” | 23%, position Intra-comunitário privado (UE) |
| Service unavailable (VIES did not answer) | Tax number to validate and the banner “VIES could not be reached, so the VAT number was neither confirmed nor rejected. Try again later: until the number is validated, an invoice with the intra-community exemption cannot be confirmed.” | 23%, position Intra-comunitário privado (UE) |
Only the Valid state gives 0% EU. With Invalid, check the number with the customer; if it was wrong, correct it on the form and click Validate VIES again. For a customer who already has issued documents, the tax number is not changed on the form: the Certified accountant corrects it with Audited correction, in the banner at the top of the form (I cannot change an invoice already issued). With Service unavailable, click Validate VIES again later.
In the demo, Validate VIES does not go to the real VIES: a simulator answers, set to give each of the states. The images in this article were taken with it. On a real database, the answer is the one from VIES.
Draft made before validation: click “Recalculate VAT” before confirming
A draft does not change on its own when the tax number becomes Valid: it stays with 23% and Intra-comunitário privado (UE), and the top now says “The VAT number of this EU customer is valid in VIES now, but this draft still has the fiscal position and the VAT of before the validation. Press Recalculate VAT to apply the fiscal position and the taxes of the customer. Issued documents are never changed.”
- Click Recalculate VAT, inside that warning. The warning disappears and the chatter, below the invoice, shows “VAT recalculated: taxes of the lines according to the fiscal position Intra-comunitário (UE).”.
- Check the Taxes column (0% EU) and, on the Other Info tab, the Fiscal Position (Intra-comunitário (UE)).
- Click Confirm.
In the demo, the recalculated invoice became FT D26/38, for €10.00, with the journal entry: debit €10.00 to 2111 Clientes gerais and credit €10.00 to 711 Mercadorias, with no VAT line. A new draft to the same customer came with 0% EU and Intra-comunitário (UE) already, with no warning.
If you confirm without recalculating, fiscaldoo does not refuse: the invoice is issued with Portuguese VAT and the previous position, and the chatter shows “Issued without “Recalculate VAT” although the taxes of the lines did not match the fiscal position Intra-comunitário privado (UE) (the draft was made before the VIES validation, or the position was changed by hand). Check the taxes of this document.”. In the demo, FT D26/37 was issued like this, for €12.30: debit €12.30 to 2111 Clientes gerais, credit €10.00 to 711 Mercadorias and €2.30 to 2433 IVA - Liquidado. An issued invoice can no longer be recalculated: if the sale was exempt, it is corrected with a credit note and a new invoice, with the certified accountant. Pending validation by a certified accountant: VAT regularisation of an intra-Community sale invoiced with Portuguese VAT (VAT Code (CIVA), art. 78).
The exemption set by hand: one banner per state
With the tax number not yet Valid, the exemption can be entered by hand in two ways:
- On the line: replace 23% with 0% EU S (services), which the line list shows, or with 0% EU (goods), which only appears under Search more....
- Through the position: choose, in Other Info, the Fiscal Position Intra-comunitário (UE). The top of the draft then says “The taxes of some lines do not match the fiscal position of this draft (for instance because the position was changed after the lines were added). Press Recalculate VAT to apply the taxes of the position; the position itself does not change. Issued documents are never changed.” When you click Recalculate VAT, the line changes to 0% EU.
With a line at 0% EU or 0% EU S and the company option on (for it off, see “The company option”), the top of the draft shows a single red banner, the one for the customer's state, and Confirm refuses the invoice with the Invalid Operation window. The messages in that window, word for word, are in The customer's tax number is invalid or missing. In the demo, the refusal was seen with the Administrative, Accountant and Certified accountant profiles.
| Customer state | Banner at the top of the draft | Can the Certified accountant decide to issue it? |
|---|---|---|
| Not checked | “This invoice has the intra-community exemption (0 % EU), but the customer's VAT number is not yet validated in VIES, so it cannot be confirmed. Open the customer and press “Validate VIES”, or change the tax. If the certified accountant decides to issue it anyway, the Fiscal Officer writes the reason below; it is recorded in the audit log.” | Yes |
| Service unavailable | “This invoice has the intra-community exemption (0 % EU), but the VIES service was unavailable at the last check, so the customer's VAT number is not proven and the invoice cannot be confirmed. Open the customer and press “Validate VIES” again later, or change the tax. If the certified accountant decides to issue it anyway, the Fiscal Officer writes the reason below; it is recorded in the audit log.” | Yes |
| Invalid | “This invoice has the intra-community exemption (0 % EU) but VIES says the VAT number of the customer is invalid, so it cannot be confirmed, not even with a reason of the Fiscal Officer. Correct the VAT number on the customer and press “Validate VIES”, or change the tax.” | No |
| Customer from Portugal or from outside the European Union | “This invoice has the intra-community exemption (0 % EU), but the customer is not established in another EU Member State (it is from Portugal or from a country outside the EU), so it cannot be confirmed, not even with a reason of the Fiscal Officer. Choose the right tax (the standard or reduced rate for a Portuguese customer) or correct the customer's country.” (see How to choose the right VAT rate and know which exemption reason is printed) | No |
| Customer with no Country (with any VIES state) | “This invoice has the intra-community exemption (0 % EU) but the customer has no country, so it cannot be confirmed, not even with the reason of the Fiscal Officer: without the country the invoice would have no fiscal position and no intra-EU classification, and could be left out of box 7 and of the recapitulative statement. Fill in the country on the customer (the one of the VAT number prefix) and validate the number in VIES, or change the tax.” | No |
Tax number without the country code in front (for example 811128135) | “This invoice has the intra-community exemption (0 % EU) but the customer's VAT number has no country code in front, so it cannot be validated in VIES and the invoice cannot be confirmed, not even with the reason of the Fiscal Officer. Open the customer, write the VAT number with the country code in front (for example DE123456789), validate it in VIES, or change the tax.” | No |
To remove the exemption:
- If you set it on the line: click Recalculate VAT, the link at the end of the red banner (with the tax number Not checked, Invalid or Service unavailable). The line goes back to the position's Portuguese rate (23% in the example), the red banner gives way to the yellow Portuguese VAT warning and the chatter shows “VAT recalculated: taxes of the lines according to the fiscal position Intra-comunitário privado (UE).”. You can also change the line's rate by hand.
- If you set it through the position: the red banner has no link, because the taxes already match the position. Set the original position, Intra-comunitário privado (UE), back in Other Info, and click Recalculate VAT in the banner that appears.
The Certified accountant's decision
Only with the tax number Not checked or Service unavailable, and only after the certified accountant has decided so:
- With the Certified accountant profile, open the draft. Below the red banner is the Reason to issue without a valid VIES check box, with the placeholder text “Why is this invoice issued with the exemption? (kept in the audit log)”. The Administrative and Accountant profiles do not see it; the administrator does.
- Write the reason, with the certified accountant's decision and where the evidence is, and save (the cloud icon). A reason made only of spaces is refused: “The reason to issue without a valid VIES check cannot be blank. Write why the invoice is issued, or leave the field empty.”
- Once saved, the red banner gives way to a yellow one: “The Fiscal Officer recorded the reason to issue this invoice with the intra-community exemption (0 % EU), although the customer's VAT number is not valid in VIES: it can be confirmed and the reason is kept in the audit log. Risk (RITI art. 14): without proof that the customer is a taxable person in another Member State, the Tax Authority may refuse the exemption and assess the VAT. Keep the evidence.”
- Click Confirm. The invoice is issued, and the chatter shows “Issued with the intra-community exemption (customer "Software Berlin GmbH"). Situation in VIES: the VAT number has not been validated in VIES yet. Decision of the Fiscal Officer: …”, followed by the reason. With Service unavailable, the situation says “the VIES service was unavailable at the last check”.
The issued document keeps a red banner at the top: “This document applies the intra-community exemption, but the customer's VAT number is not validated in VIES. Without proof that the customer is a taxable person in another Member State (RITI art. 14), the Tax Authority may refuse the exemption and assess the VAT. Validate the VAT number on the customer's form (“Validate VIES”) and keep the evidence.”
In the demo, the invoices issued this way (with the tax number Not checked or Service unavailable), for €10.00 with 0% EU, kept the position Intra-comunitário privado (UE) and the journal entry: debit €10.00 to 2111 Clientes gerais and credit €10.00 to 711 Mercadorias, with no VAT line. The chatter has the decision and the reason, and the invoice's intra-Community classification.
The company option
The refusal is a per-company option, Intra-community exemption needs a valid VIES check, which comes turned on. Where it is and the update warning are in How to configure the company's VAT. With it turned off (administrator, in Empresa Demonstração):
- with the tax number Not checked or Service unavailable, Confirm issues the invoice with the exemption. Before that, instead of the refusal, the draft shows a red banner that depends on how the exemption was entered:
- on the line (0% EU or 0% EU S): the issued-document banner, “This document applies the intra-community exemption…” (above);
- through the position (Intra-comunitário (UE) in Other Info, followed by Recalculate VAT): “The intra-community exemption was chosen by hand, but the VAT number of this customer is not validated in VIES. The fiscal position is respected and recorded in your name.” In other words, the choice is recorded in the name of whoever made it.
- in both cases, the issued invoice keeps the risk banner at the top, and the chatter shows “Intra-community exempt sale to "Cliente Alemanha Exemplo GmbH" issued, but the VAT number has not been validated in VIES yet. Risk (RITI art. 14): the exemption depends on proof that the customer is a taxable person in another Member State; without it the Tax Authority may refuse it and assess the VAT. Validate the VAT number with “Validate VIES” on the customer's form and keep the evidence.” With Service unavailable, the note says “but the VIES service was unavailable at the last check”. In the demo, the €10.00 invoice with the position set by hand was issued with 0% EU and position Intra-comunitário (UE), and with the journal entry: debit €10.00 to 2111 Clientes gerais and credit €10.00 to 711 Mercadorias, with no VAT line;
- with the tax number Invalid, and with a customer from Portugal or from outside the European Union, the refusal remains.
The option is saved on the company chosen at the top of the screen: check it before you Save. Do not turn it off without the certified accountant.
Important notes
- Final consumer. The database already has the Final consumer contact, with tax number
999999990, for private individuals who do not give a tax number. You choose it in the invoice's Customer field by typingConsumidor; it only appears in the Customers list after the first invoice. A new form without a tax number is saved without a warning. If the Country is Portugal (or empty), the invoice to that form is issued, but before that the draft warns that it is treated as issued to a final consumer: the PDF says “Consumidor final”, the QR code carries tax number 999999990 and the SAF-T declares the customer the same way, with a warning and not an error. With another Country, the draft warns in the same way and the invoice is treated as issued to a final consumer of that country: the QR code and the SAF-T carry tax number 999999990 with the customer's country, and the file remains valid. Both cases, with the warning word for word, are in How to issue a certified invoice, “Important notes”. Once the invoice is issued, the tax number can only be added to the form, not to the invoice: if the customer has a tax number, enter it on the form before invoicing. Pending validation by a certified accountant: when you may invoice without the customer's tax number, and what to do for a private individual from another country who does not give a tax number. - After invoicing, the customer's name and tax number can no longer be changed on the form: fiscaldoo refuses, because they have already appeared on certified documents. The address can be changed. For an error in those details, see I cannot change an invoice already issued.
Common problems
“The tax number “…” is not valid”
- Symptom: with Country Portugal, when you save, the Validation Error window opens: “The tax number “123456780” is not valid. Why: the last digit (check digit) does not match the other eight. How to fix it: Check the number on the citizen card or tax identification document and type it again.”
- Cause: the last digit of a Portuguese tax number is calculated from the other eight; the number typed does not add up. It is almost always a swapped digit.
- What to do: click Close, check the number with the customer and type it again. With an invalid tax number typed in, the form is not saved.
“The NIF number [DE123] for partner does not seem to be valid”
- Symptom: with the Country of another country, when you save, Validation Error opens: “The NIF number [DE123] for partner does not seem to be valid. Note: the expected format is DE123456788 or 12/345/67890”.
- Cause: the number does not have the VAT number format of that country.
- What to do: click Close and ask the customer for the full VAT number, with the country prefix.
The invoice with “0% EU” is refused: the customer has no Country, or the tax number has no country code
- Symptom: the draft shows the red banner from the “Customer with no Country” or “Tax number without the country code in front” row of the table in “The exemption set by hand”, and Confirm opens Invalid Operation. The messages are in The customer's tax number is invalid or missing.
- Cause: without the Country, the invoice would not have the intra-Community fiscal position; without the country code, the tax number cannot be validated in VIES. In the demo, the customer with no Country was refused even with tax number
DE811128135Valid in VIES. - What to do: click Close, open the customer's form, fill in the Country (the one in the tax number prefix) or type the tax number with the country code in front, save and click Validate VIES. Then, on the draft, click Recalculate VAT if the warning asks for it. For a customer who already has issued documents, the tax number is not changed on the form (see the next problem).
“Validate VIES”: the tax number “does not start with the code of a European Union country”
- Symptom: when you click Validate VIES, Invalid Operation opens: “The VAT number "811128135" of "Cliente DE sem prefixo" does not start with the code of a European Union country, so it cannot be checked in VIES. Write it with the country code in front (e.g. ES, DE, FR).” The state stays Not checked.
- Cause: the tax number was typed without the country code in front. In the demo, the form of a customer from Germany was saved with
811128135, without error, but VIES only checks numbers with the country code. The form shows, above it, the banner “The VAT number has no country code in front, so it cannot be validated in VIES and an invoice with the intra-community exemption (0 % EU) cannot be confirmed. Write it with the code of the country in front (for example DE123456789).” For a Portuguese customer, the button does not appear: VIES is not used for a Portuguese tax number. - What to do: click Close, type in NIF the number with the country code in front (in the example,
DE811128135), save and click Validate VIES again. For a customer who already has issued documents, the tax number is not changed on the form: see I cannot change an invoice already issued.
“Possible duplicates: … (Same tax number)” appears
- Symptom: after saving, a yellow banner appears above the form, for example “Possible duplicates: Papelaria Exemplo, Lda (Same tax number)”.
- Cause: another customer with the same tax number already exists.
- What to do: click the name in the banner to open the other form. If it is the same customer, use that one and stop using the new one: in the ⋮ menu (three dots, next to the new form's name), click Archive and confirm. Do not delete a customer that already has documents.