Przejdź do głównej treści
EN 16931 · identyfikatory

Błąd BR-CO-09: numer VAT sprzedawcy lub nabywcy nie ma prefiksu kraju

W europejskiej fakturze elektronicznej numer VAT zawsze zaczyna się od dwóch liter kraju: DE, FR, BE, NL… BR-CO-09 jest regułą, która tego wymaga, i prawie zawsze się uruchamia, bo numer na kontakcie wpisano bez prefiksu. Wokół niej są jeszcze cztery reguły, które wymagają, żeby ten numer istniał, w zależności od rodzaju VAT na fakturze.

FlexigoTech · Odpowiada: Víctor Gómez · Aktualizacja: 4 listopada 2026

Najważniejsze

Wersje
Odoo 17, 18, 19 i 20
Sprawdzone
w kodzie źródłowym modułu, wersja 17.0 i 20.0 · w źródłach podanych na końcu
Czas czytania
3 min

Tekst BR-CO-09 w Schematronie EN 16931 (validation-1.3.17), z poziomem krytycznym fatal: „The Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) shall have a prefix in accordance with ISO code ISO 3166-1 alpha-2 by which the country of issue may be identified. Nevertheless, Greece may use the prefix ‘EL’.”

Dotyczy trzech numerów: Twojego (BT-31), Twojego przedstawiciela podatkowego, jeśli go masz (BT-63), oraz nabywcy (BT-48). Grecja jest wyjątkiem: może użyć EL zamiast GR.

Karta reguły BR-CO-09 z EN 16931
Prefiks ISO 3166-1 w numerach VAT sprzedawcy, przedstawiciela i nabywcy.

Reguły wymagające numeru

BR-CO-09 sprawdza format. Pozostałe sprawdzają, czy numer w ogóle jest, i zależą od kategorii VAT pozycji:

RegułaKiedy ma zastosowanieTekst
BR-CO-26ZawszeIn order for the buyer to automatically identify a supplier, the Seller identifier (BT-29), the Seller legal registration identifier (BT-30) and/or the Seller VAT identifier (BT-31) shall be present.
BR-S-02Pozycje ze stawką podstawowąAn Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Standard rated" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63).
BR-AE-02Odwrotne obciążenieAn Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Reverse charge" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47).
BR-IC-02Dostawa wewnątrzwspólnotowaAn Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Intra-community supply" shall contain the Seller VAT Identifier (BT-31) or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48).

Wszystkie cztery są krytyczne. Zwróć uwagę na różnicę: sprzedaż po stawce podstawowej wymaga tylko Twojego numeru, a odwrotne obciążenie lub dostawa wewnątrzwspólnotowa wymaga też numeru klienta.

Co sprawdza Odoo

Zanim wygeneruje plik, Odoo sprawdza, czy numer VAT Twojej firmy i klienta zaczyna się od dwóch liter. Jeśli nie, ostrzega komunikatem „The VAT of the %s should be prefixed with its country code.”, z „supplier” lub „customer”. W Odoo 17 to sprawdzenie działa tylko dla trzech formatów: Peppol BIS, XRechnung i NLCIUS (holenderski format); w Odoo 18, 19 i 20 znajduje się we wspólnej warstwie EN 16931.

Ostrzeżenie patrzy tylko na to, czy na początku są litery. Czy to właściwy kraj i czy numer jest poprawny, ta reguła już nie sprawdza.

Jak to wpisać w Odoo

Dobrze
Numer tak, jak publikuje go rejestr VAT danego kraju, z dwiema literami na początku: DE dla Niemiec, FR dla Francji, BE dla Belgii, NL dla Holandii.
Źle
Numer bez liter, ze spacjami lub kropkami w środku albo z prefiksem innego kraju.
Grecja
EL na początku, nie GR: wyjątek, który sama reguła przewiduje.

Z naszym modułem XRechnung i ZUGFeRD

Karta klienta w Odoo 20 z niemieckim numerem VAT z prefiksem i zakładką E-Invoicing modułu XRechnung
Pole VAT z prefiksem DE, tak jak wymaga BR-CO-09. Zrzut ekranu Odoo 20 z danymi demonstracyjnymi.

W Odoo 18, 19 i 20, z subskrypcją FlexigoTech Cloud, każdy XRechnung i każdy ZUGFeRD EN 16931 wygenerowany przez moduł jest walidowany regułami KoSIT, które obejmują także te z EN 16931: numer VAT bez prefiksu pojawia się jako BR-CO-09 w Validation Errors i faktura nie dostaje statusu Ready to send. W Odoo 17 opublikowana wersja nie waliduje.

Co poprawić

  1. Otwórz kartę wskazaną w komunikacie: Twoją firmę (supplier) lub klienta (customer).
  2. Wpisz numer VAT z prefiksem kraju, bez spacji.
  3. Przy odwrotnym obciążeniu lub sprzedaży do innego kraju UE sprawdź także numer klienta.
  4. Wygeneruj plik ponownie.

Czytaj dalej

Błędy BR-09 i BR-11: adres sprzedawcy lub nabywcy bez kodu krajuBR-09 i BR-11 wymagają kodu kraju w adresie sprzedawcy i nabywcy; BR-08 i BR-10 dotyczą samego adresu. Komunikat Odoo 17, 18, 19 i 20 oraz co uzupełnić.Błędy BR-E-10, BR-AE-10, BR-IC-10 i BR-G-10: powód zwolnienia z VATBR-E-10, BR-AE-10, BR-IC-10, BR-G-10 i BR-O-10 wymagają powodu zwolnienia z VAT; BR-S-10 i BR-Z-10 go zabraniają. Jak Odoo 17, 18, 19 i 20 go ustawia i gdzie to zmienić.XRechnung: błędy BR-DE-2 do BR-DE-7, BR-DE-27 i BR-DE-28, kontakt sprzedawcyBR-DE-2 do BR-DE-7 wymagają w XRechnung miasta, kodu pocztowego, osoby kontaktowej, telefonu i e-maila sprzedawcy. Co mówi każda reguła i jak ją spełnić w Odoo.
Sprawdzone w kodzie źródłowym modułu (wersja 17.0 i 20.0) i w podlinkowanych źródłach

Źródła