BG-20Document level allowancesBG-21Document level chargesBG-25Invoice lineBT-95Document level allowance VAT category codeBT-102Document level charge VAT category codeBT-151Invoiced item VAT category code
Oficjalna treść reguły
[BR-B-02] An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is “Split payment" shall not contain an invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is “Standard rated”.
Tekst normatywny jest w języku angielskim i cytowany bez zmian.
Dlaczego pojawia się ten błąd
Reguły VAT wiążą kategorię VAT pozycji, rabatów i opłat z podsumowaniem VAT dokumentu. Walidator sprawdza, czy dla każdej użytej kategorii istnieje dokładnie jeden pasujący wpis podsumowania, czy stawka i powód zwolnienia pasują do kategorii oraz czy podstawa i kwota podatku zgadzają się w każdej kategorii.
Jak to naprawić
Stosuj jeden kod kategorii VAT (UNTDID 5305: S stawka podstawowa, Z stawka zerowa, E zwolnienie, AE odwrotne obciążenie, K WDT, G eksport, O poza zakresem) spójnie w pozycjach i w podsumowaniu. Dla E, AE, K, G i O stawka musi wynosić 0 i wymagany jest powód zwolnienia (tekst lub kod VATEX); dla S stawka musi być większa od 0 bez powodu zwolnienia. Przelicz podstawę dla każdej kategorii z pozycji.
Co sprawdza walidator
Sprawdzany element (kontekst):
UBL
/ubl:Invoice | /cn:CreditNoteTest (XPath):
((cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID ='B' or cac:AllowanceCharge/cac:TaxCategory/cbc:ID ='B' or //cac:ClassifiedTaxCategory/cbc:ID = 'B') and (not(cac:TaxTotal/cac:TaxSubtotal/cbc:ID ='S' or cac:AllowanceCharge/cac:TaxCategory/cbc:ID ='S' or //cac:ClassifiedTaxCategory/cbc:ID = 'S'))) or (not(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID ='B' or cac:AllowanceCharge/cac:TaxCategory/cbc:ID ='B' or //cac:ClassifiedTaxCategory/cbc:ID = 'B'))CII
/rsm:CrossIndustryInvoiceTest (XPath):
(//ram:CategoryCode ='B' and (not(//ram:CategoryCode ='S'))) or (not(//ram:CategoryCode ='B'))
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-AE-01Faktura zawierająca pozycję faktury, rabat na poziomie dokumentu lub…BR-AF-01Faktura zawierająca pozycję faktury, rabat na poziomie dokumentu lub…BR-AG-01Faktura zawierająca pozycję faktury, rabat na poziomie dokumentu lub…BR-E-01Faktura zawierająca pozycję faktury, rabat na poziomie dokumentu lub…BR-G-01Faktura zawierająca pozycję faktury, rabat na poziomie dokumentu lub…BR-IC-01Faktura zawierająca pozycję faktury, rabat na poziomie dokumentu lub…BR-O-01Faktura zawierająca pozycję faktury, rabat na poziomie dokumentu lub…BR-S-01Faktura zawierająca wiersz faktury, rabat na poziomie dokumentu lub…
Najczęstsze pytania
Co oznacza BR-B-02?
BR-B-02 to reguła podstawowa en 16931: An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is “Split payment" shall not contain an invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is “Standard rated”.
Czy moja faktura zostanie odrzucona z powodu BR-B-02?
Tak. BR-B-02 ma status „krytyczny”; walidatory (KSeF, punkty dostępowe Peppol, KoSIT) odrzucają fakturę do czasu poprawienia błędu.
Jakich formatów dotyczy BR-B-02?
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.