Validação sobre os Campos do Tipo Date, DateTime e Numeric
Conforme o padrão de validação para arquivos XML, os campos de tipo Date, DateTime e Numeric que não possuem valores válidos ou são informados com tags vazias (<tag></tag>) ou fechadas (<tag/>) resultam em rejeição por falha no esquema XML, então sugerimos que realize uma revisão em seus processos de geração de XML e evite possíveis paradas.
Abaixo listamos alguns valores válidos para cada um desses tipos de campo:
-
Date: Informe uma data válida (Ex.: <dVenc>2025-01-02</dVenc>)
-
DateTime: Informe uma data e hora válida (Ex.: <dhCont>2025-01-02T10:55:00</dhCont>)
-
Numeric: Indique um número válido (Ex.: <vProd>4.00</vProd>)
-
Caractere: Indique uma informação válida (Ex.: <xJust>Entrada em contingência devido a falha de conexão</xJust>)
Vale ressaltar que, essa validação ocorre para campos do tipo Numeric, Date, DateTime e Caractere. Desta forma, para adequar seu sistema, basta seguir a mesma lógica dos campos tipo Numeric e aplicá-la também sobre os campos do tipo Date, DateTime e Caractere, ou utilizar a regra padrão, se não precisa informar algum valor para um campo, não inclua a tag no XML.
A seguir, veja a relação de campos que devem ser revisados nos layouts de emissão:
| MODELO | CAMPO | DESCRIÇÃO | OBRIG. | FORMATO |
|---|---|---|---|---|
| NF-e/NFC-e | dhEmi | Data de emissão do documento fiscal | Sim | AAAA-MM-DDThh:mm:ss |
| NF-e | fusoHorario | Fuso horário da emissão | Sim | -03:00 |
| NF-e/NFC-e | dhSaiEnt | Data de Saída ou da Entrada da Mercadoria/Produto | Não | AAAA-MM-DDThh:mm:ss |
| NF-e/NFC-e | dhCont | Data e Hora da entrada em Contingência | Não | AAAA-MM-DDThh:mm:ss |
| NF-e | dDi | Data de Registro da DI/DSI/DA | Sim | AAAA-MM-DD |
| NF-e | dDesemb | Data do Desembaraço Aduaneiro | Sim | AAAA-MM-DD |
| NF-e | dFab | Data de fabricação/produção do produto | Sim | AAAA-MM-DD |
| NF-e | dVal | Data de validade | Sim | AAAA-MM-DD |
| NF-e | dCompet | Data da prestação do serviço | Sim | AAAA-MM-DD |
| NF-e/NFC- | dVenc | Data de vencimento | Sim | AAAA-MM-DD |
| MDF-e | dhEmi | Data de emissão do Documento Fiscal | Sim | AAAA-MM-DDTHH:MM:SS |
| MDF-e | dhIniViagem | Data e Hora de Início da Viagem | Sim | AAAA-MM-DDTHH:MM:SS |
| MDF-e | dataVoo | Data do Voo | Sim | AAAA-MM-DD |
| MDF-e | dhLiberacao | Data e Hora de liberação do trem na origem | Não | AAAA-MM-DDTHH:MM:SS |
| CT-e | dhEmi | Data e hora de emissão do CT-e | Sim | AAAA-MM-DDTHH:MM:SS |
| CT-e | dhCont | Data e Hora da entrada em contingência | Sim | AAAA-MM-DDTHH:MM:SS |
| CT-e | dProg | Data programada | Sim | AAAA-MM-DD |
| CT-e | dIni | Data inicial | Sim | AAAA-MM-DD |
| CT-e | dFim | Data final | Sim | AAAA-MM-DD |
| CT-e | dPrev_nfe | Data prevista de entrega | Não | AAAA-MM-DD |
| CT-e | dEmi_outros | Data de Emissão | Não | AAAA-MM-DD |
| CT-e | dPrev_outros | Data prevista de entrega | Não | AAAA-MM-DD |
| CT-e | dEmi_docAnt | Data de emissão | Sim | AAAA-MM-DD |
| CT-e | dEmi_occ | Data de emissão da ordem de coleta | Sim | AAAA-MM-DD |
| CT-e | dPrev_aer | Data prevista da entrega | Sim | AAAA-MM-DD |
| CT-e | dIni_duto | Data de início da prestação do serviço | Sim | AAAA-MM-DD |
| CT-e | dFim_duto | Data de fim da prestação do serviço | Sim | AAAA-MM-DD |
| CT-e | dVenc | Data de vencimento da duplicata | Não | AAAA-MM-DD |
| CT-e | dEmi_sub | Data de emissão do Documento Fiscal | Sim | AAAA-MM-DD |
| CT-e | dEmi_anu | Data de emissão da declaração do tomador não contribuinte do ICMS | Sim | AAAA-MM-DD |