cvc-complex-type.2.4.b: elementul nu e complet (lipsește un sub-element obligatoriu)
Mesajul din SPV
cvc-complex-type.2.4.b: The content of element 'cac:Party' is not complete. One of '{"urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2":PartyLegalEntity, "urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2":Contact}' is expected.Numele elementelor și listele din mesaj diferă de la factură la factură; codul de la început (cvc-complex-type.2.4.b) e același.
Ce înseamnă
Elementul din mesaj s-a închis (</…>) înainte să apară un copil obligatoriu. Lista „One of '…' is expected” spune ce trebuia să mai fie înăuntru. Diferența față de 2.4.a: aici validatorul a ajuns la finalul elementului, nu la un alt element.
Cauze frecvente în e-Factura
cac:Partyfărăcac:PartyLegalEntity(denumirea firmei, BT-27 / BT-44);cac:TaxTotalfărăcbc:TaxAmount;cac:TaxSubtotalfărăcac:TaxCategory;cac:InvoiceLinefărăcac:Itemsau fărăcac:Price;cac:PostalAddressfărăcac:Country;cac:LegalMonetaryTotalfărăcbc:PayableAmount.
Exemplu
Greșit:
<cac:TaxSubtotal> <cbc:TaxableAmount currencyID="RON">1000.00</cbc:TaxableAmount> <cbc:TaxAmount currencyID="RON">210.00</cbc:TaxAmount> </cac:TaxSubtotal>
Corect:
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="RON">1000.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="RON">210.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>21</cbc:Percent>
<cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>Cum o repari
- Găsește elementul numit în mesaj (
The content of element 'X'). - Adaugă în el, la final sau în poziția din schemă, unul dintre elementele din lista „One of … is expected”.
- Dacă programul de facturare nu completează câmpul, verifică datele de bază (denumirea firmei, țara, cota TVA a produsului) – de obicei lipsa vine de acolo.
Verifică XML-ul înainte să-l încarci din nou
Lipește XML-ul facturii: vezi toate erorile odată (schemă UBL, CIUS-RO, EN 16931), cu corectura pentru fiecare. Gratuit, 3 verificări pe zi; fișierul nu e păstrat.
Întrebări frecvente
Pot pune un element gol ca să treacă de eroare?
Nu e o idee bună: un element gol trece de schemă doar uneori și pică apoi la regulile de business (BR-…) sau la tipul de date. Completează valoarea reală.
Mesajul are o listă lungă de elemente așteptate. Pe care îl pun?
Primul obligatoriu din listă care lipsește la tine; restul sunt opționale permise în același loc.
Alte erori din SPV
- cvc-complex-type.2.4.a la e-Factura: „Invalid content was found starting with element”
- cvc-complex-type.2.4.d la e-Factura: „No child element is expected at this point”
- cvc-complex-type.4 la e-Factura: „Attribute 'currencyID' must appear on element”
- cvc-complex-type.3.2.2 la e-Factura: „Attribute … is not allowed to appear in element”
- cvc-datatype-valid.1.2.1 la e-Factura: „is not a valid value for 'date'” / „'decimal'”
- cvc-elt.1.a la e-Factura: „Cannot find the declaration of element 'Invoice'”
- „Content is not allowed in prolog” la e-Factura: cauza și soluția
- „Invalid byte 1 of 1-byte UTF-8 sequence” la e-Factura: diacriticele
- „The element type … must be terminated by the matching end-tag” la e-Factura
- Factură respinsă în SPV (nok): cum citești eroarea și ce faci