BT-7Value added tax point dateBT-8Value added tax point date code
Oficjalna treść reguły
[BR-CO-03] Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.
Tekst normatywny jest w języku angielskim i cytowany bez zmian.
Dlaczego pojawia się ten błąd
Data powstania obowiązku podatkowego VAT (BT-7) i kod tej daty (BT-8) wzajemnie się wykluczają: podaj albo konkretną datę, albo kod wskazujący, która data ma zastosowanie, nigdy oba naraz. W UBL BT-7 to cbc:TaxPointDate, a BT-8 to cac:InvoicePeriod/cbc:DescriptionCode; w CII BT-7 to ram:TaxPointDate, a BT-8 to ram:DueDateTypeCode w ram:ApplicableTradeTax. Konflikt zwykle wynika z mapowania w ERP, które zawsze wypełnia datę i dodatkowo na sztywno wstawia kod.
Jak to naprawić
Zdecyduj, którego elementu potrzebujesz, i usuń drugi. Jeśli obowiązek podatkowy powstaje w konkretnym dniu, zachowaj cbc:TaxPointDate / ram:TaxPointDate (format RRRR-MM-DD w UBL, format 102 RRRRMMDD w CII) i usuń kod. Jeśli chcesz wskazać, że obowiązek powstaje w dniu wystawienia faktury / dostawy / zapłaty, zachowaj tylko kod z UNTDID 2005: 3 (data wystawienia dokumentu), 35 (data dostawy), 432 (data zapłaty). Większość faktur nie potrzebuje żadnego z nich; gdy data dostawy jest datą powstania obowiązku podatkowego, zwykle wystarcza cac:Delivery/cbc:ActualDeliveryDate (BT-72).
Przykład (poprawny)
<cac:InvoicePeriod>
<cbc:DescriptionCode>35</cbc:DescriptionCode>
</cac:InvoicePeriod>
Co sprawdza walidator
Sprawdzany element (kontekst):
UBL
/ubl:Invoice | /cn:CreditNoteTest (XPath):
(exists(cbc:TaxPointDate) and not(cac:InvoicePeriod/cbc:DescriptionCode)) or (not(cbc:TaxPointDate) and exists(cac:InvoicePeriod/cbc:DescriptionCode)) or (not(cbc:TaxPointDate) and not(cac:InvoicePeriod/cbc:DescriptionCode))CII
//ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTaxTest (XPath):
((//ram:TaxPointDate) and not(//ram:DueDateTypeCode)) or (not (//ram:TaxPointDate) and (//ram:DueDateTypeCode)) or (not (//ram:TaxPointDate) and not (//ram:DueDateTypeCode))
Sprawdź swoją fakturę
Upuść plik XML lub PDF w walidatorze; każda naruszona reguła ma link do swojej strony tutaj. Bezpłatnie, bez konta, plik nie jest zapisywany.
To samo sprawdzenie przez API:
curl -F file=@invoice.xml https://einvoicechecker.com/v1/validatePowiązane reguły
BR-CO-04Pozycja faktury bez kodu kategorii VAT (BT-151)BR-CO-05Kod przyczyny i przyczyna rabatu na poziomie dokumentu muszą…BR-CO-06Kod przyczyny i przyczyna opłaty na poziomie dokumentu muszą wskazywać…BR-CO-07Kod przyczyny i przyczyna rabatu pozycji faktury muszą wskazywać…BR-CO-08Kod przyczyny i przyczyna opłaty pozycji faktury muszą wskazywać ten sam…BR-CO-09Identyfikator VAT bez prawidłowego prefiksu krajuBR-CO-10Suma kwot netto pozycji (BT-106) nie zgadza się z pozycjamiBR-CO-11Błędna suma rabatów na poziomie dokumentu (BT-107)
Najczęstsze pytania
Co oznacza BR-CO-03?
BR-CO-03 to reguła podstawowa en 16931: Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.
Czy moja faktura zostanie odrzucona z powodu BR-CO-03?
Tak. BR-CO-03 ma status „krytyczny”; walidatory (KSeF, punkty dostępowe Peppol, KoSIT) odrzucają fakturę do czasu poprawienia błędu.
Jakich formatów dotyczy BR-CO-03?
Każda faktura EN 16931: XRechnung, ZUGFeRD 2.x / Factur-X (profile EN 16931, EXTENDED, XRECHNUNG), Peppol BIS Billing 3.0 oraz krajowe CIUS. Składnia: UBL i CII.
Źródło: EN 16931-1:2017 schematron (CEN TC434, via Peppol BIS 3.0.20). Katalog wygenerowany z oficjalnych zestawów reguł dnia 2026-10-15.