6 min di lettura
Messaggi di errore SAF-T dell'AT: "Ficheiro inválido", "Rejeitado" ed errori cvc-
Cosa significa ogni messaggio del Portal das Finanças e del validatore SAF-T dell'AT e come correggerlo: "Ficheiro inválido", stati del file, errori di invio, e cvc-pattern-valid, cvc-identity-constraint e altri messaggi del validatore.
I messaggi dell'AT sono brevi e quasi mai dicono quale riga del file è sbagliata. Ecco quelli che vedrai più probabilmente, con il significato di ciascuno e come correggerlo. I messaggi del Portal das Finanças sono citati in portoghese, esattamente come appaiono; quelli del validatore sono tecnici e in inglese.
"Ficheiro inválido"
Il rifiuto più comune. Significa che il file non rispetta la struttura definita per il SAF-T (PT) (Portaria n.º 302/2016), e l'AT non dice dove. Varianti più vecchie che potresti ancora vedere: "Ficheiro SAF-T (PT) inválido" e "O ficheiro seleccionado não está de acordo com o formato exigido".
Cause tipiche, in ordine di frequenza:
- Codifica: il file è in UTF-8, o i suoi byte non corrispondono alla dichiarazione nella prima riga. Come correggerlo.
- Un BOM (byte order mark) prima di
<?xml. - Un errore di schema: un campo obbligatorio vuoto, un valore nel formato sbagliato, un riferimento a un cliente o articolo che non compare nel file. I messaggi del validatore qui sotto indicano quale.
Correzione: valida il file per vedere ogni problema con il numero di riga, correggilo, esporta di nuovo e reinvia.
Stato del file "Rejeitado" o "Integrado parcialmente"
Dopo l'invio, e-Fatura mostra uno stato per il file. Secondo l'AT:
- Pendente / Em processamento: in attesa o in elaborazione.
- Integrado com sucesso: tutti i documenti sono stati registrati.
- Integrado parcialmente: alcuni documenti non sono stati registrati. Di solito erano già stati comunicati (con un file precedente o via webservice) e vengono ignorati come duplicati, il che non è un problema.
- Rejeitado: un problema di contenuto ha impedito l'elaborazione, oppure nessun documento è stato registrato. Succede anche quando tutti i documenti del file erano già stati comunicati via webservice senza modifiche.
Prima di reinviare un file rifiutato, verifica se il tuo software invia già le fatture via webservice: si comunica tramite file oppure webservice, non entrambi.
"Ocorreu um erro ao enviar o ficheiro"
È fallito l'invio stesso; il file non è stato nemmeno controllato. Verifica la connessione internet e che un firewall o un proxy non blocchi il sito di e-Fatura, poi riprova.
"Falhou o Envio. O cliente da linha de comandos que está a utilizar não se encontra atualizado"
Il tuo software invia tramite il client a riga di comando dell'AT (un file Java chiamato FACTEMICLI…jar) e quella versione non è più accettata. Scarica la versione attuale dal sito di e-Fatura, sostituisci il vecchio file dove il software lo conserva e invia di nuovo. Anche i file grandi, che il portale non accetta, passano da questo client.
Messaggi del validatore: cvc-…
Il validatore dell'AT segnala gli errori di schema con i messaggi standard di Java (Xerces). I codici sono criptici ma precisi:
cvc-pattern-valid: Value '…' is not facet-valid with respect to pattern '…'
Un valore ha la forma sbagliata. Esempio: InvoiceNo deve essere il tipo di documento, uno spazio, la serie, una barra e il numero, come FT A/123; FT123 non va.
cvc-minLength-valid: Value with length = '0' is not facet-valid with respect to minLength '1'
Un campo obbligatorio è vuoto: spesso un articolo senza descrizione, o un'azienda o un cliente senza località.
cvc-maxLength-valid: Value '…' with length = '…' is not facet-valid with respect to maxLength '…'
Un valore è troppo lungo, come un codice articolo di oltre 60 caratteri o un nome di oltre 100.
cvc-enumeration-valid: Value '…' is not facet-valid with respect to enumeration '[…]'
Un codice non è nell'elenco ammesso, ad esempio un tipo di documento o un codice d'imposta inventato dal software. Se il valore rifiutato è FS (fattura semplificata), il validatore è obsoleto: FS è valido nella versione 1.04_01.
cvc-complex-type.2.4.a: Invalid content was found starting with element '…'. One of '{…}' is expected.
Mancano elementi o sono nell'ordine sbagliato. Il messaggio indica l'elemento trovato e quello atteso in quella posizione.
cvc-identity-constraint.4.3: Key '…' with value '…' not found for identity constraint
Un documento rimanda a qualcosa che non compare nel file. InvoiceCustomerIDConstraint: una fattura usa un CustomerID senza cliente corrispondente nel file. InvoiceProductCodeConstraint: lo stesso per un articolo. Di solito l'esportazione ha filtrato l'elenco di clienti o articoli in modo diverso dai documenti.
Vedere tutti gli errori in una volta
SAFTCheck valida con lo schema attuale dell'AT e mostra questi problemi in un linguaggio semplice con il numero di riga, insieme ai controlli che lo schema non può esprimere (codifica, cifre di controllo del NIF, ATCUD, date). Valida il tuo SAF-T; la prima validazione è gratuita e non richiede un account.