MDF-e: Acesso e Distribuição de DF-e | NT 2015.002
MDF-e e o Serviço de Distribuição de DF-e (NT 2015.002). Informações sobre documentos fiscais eletrônicos, padrões técnicos de comunicação e certificação digital.
MDF-e: Acesso e Distribuição de DF-e | NT 2015.002
O Manifesto Eletrônico de Documentos Fiscais (MDF-e) integra projetos de Documentos Fiscais Eletrônicos para fornecer informações de interesse aos atores envolvidos nos processos. A Nota Técnica 2015.002 detalha o serviço de distribuição de DF-e, visando disponibilizar dados e documentos fiscais eletrônicos relevantes para esses participantes.
Arquitetura de Comunicação
O Web Service de Distribuição de DF-e opera de forma síncrona. O aplicativo do contribuinte envia uma mensagem com os parâmetros de pesquisa. Em resposta, o Web Service devolve uma mensagem confirmando o recebimento e processamento da solicitação na mesma conexão.
Padrões Técnicos
A comunicação segue padrões técnicos para garantir a integridade e segurança das informações.
Padrão de documento XML
A especificação XML segue a recomendação W3C para XML 1.0, com codificação de caracteres em UTF-8. A declaração <?xml version="1.0" encoding="UTF-8"?> deve iniciar todos os documentos XML.
O documento XML exige uma declaração única de namespace no elemento raiz, seguindo o padrão <distDFeInt xmlns='http://www.portalfiscal.inf.br/mdfe' >. O uso de prefixos de namespace é vedado para otimizar o tamanho do arquivo XML.
Antes do envio, a mensagem XML precisa ser validada pelo Schema (XSD - XML Schema Definition), disponibilizado pelo Ambiente Autorizador. Isso assegura a correta formação dos arquivos e a integridade das informações.
Padrão de Comunicação
A comunicação utiliza a Internet como meio físico, com protocolo TLS versão 1.2 ou superior e autenticação mútua. Este método identifica servidor e cliente via certificados digitais. O modelo segue o padrão de Web Services WS-I Basic Profile.
A troca de mensagens ocorre no padrão SOAP versão 1.2, com mensagens XML no padrão Style/Encoding: Document/Literal. A chamada ao Web Service distDFeInt é feita com o envio de uma mensagem XML no campo mdfeDadosMsg. A versão do leiaute (versaoDados) e o código da UF requisitada (cUF) são informados no mdfeCabecMsg do SOAP header.
Padrão de Certificado Digital
O certificado digital exigido é emitido por Autoridade Certificadora credenciada pela ICP-Brasil, tipo A1 ou A3. Deve conter o CNPJ da pessoa jurídica ou CPF da pessoa física titular. Ele é utilizado na transmissão das mensagens entre o servidor do contribuinte e o Ambiente Autorizador, com a extensão "Autenticação Cliente" em Extended Key Usage.
Padrão de Compactação
O projeto adota o padrão de compactação Gzip (GNU zip). Este padrão é implementado em plataformas como Java e .NET framework 2.0.
Padrão de Mensagens dos Web Services
As chamadas e retornos dos Web Services seguem um padrão com cUF, versaoDados e a Área de Dados. O cUF indica o código da UF de origem da mensagem, e versaoDados a versão do leiaute XML. A Área de Dados contém a estrutura XML específica do Web Service.
A Nota Técnica 2015.002 inclui uma tabela com os códigos das Unidades Federadas, organizados por região.
Informações de controle e área de dados das mensagens
O elemento mdfeCabecMsg no SOAP Header armazena informações de controle, como a UF de origem (cUF) e a versão do leiaute XML (versaoDados). A área de dados, contida no soap12:Body, é um documento XML que deve seguir o leiaute definido para o Web Service acessado.
Validação da estrutura XML das Mensagens dos Web Services
As mensagens XML são validadas por um analisador sintático (parser) que verifica a conformidade com o Schema XML. Alterações de leiaute são controladas por um número de versão. A validação bem-sucedida exige que a mensagem seja submetida ao Schema XML correto e que o campo versaoDados no mdfeCabecMsg informe a versão do leiaute. Divergências na estrutura XML resultam em erro de validação.
Serviço de Distribuição MDF-e Atores (MDFeDistribuicaoDFe)
Este serviço permite que atores do MDF-e, sejam pessoas físicas ou jurídicas, acessem documentos fiscais eletrônicos (DF-e) que não foram gerados por eles, mas que são de seu interesse. A consulta é realizada utilizando um certificado digital de PJ ou PF.
No caso de Pessoa Jurídica, a autenticação ocorre pelo CNPJ base, permitindo consultas com qualquer CNPJ da empresa, desde que o CNPJ base consultado seja o mesmo do certificado digital. Os documentos fiscais eletrônicos permanecem disponíveis para distribuição por até 6 meses após a recepção pelo Ambiente Nacional do MDF-e.
Os documentos disponibilizados para terceiros (informados na tag autXML), para contratantes do serviço (grupo infContratante do modal rodoviário) e para proprietários de veículos (quando o RNTRC do proprietário for diferente do RNTRC do emitente) incluem:
- MDF-e
- Evento de Cancelamento
- Evento de Encerramento / Encerramento do Fisco
- Evento de Inclusão de Condutor
Leiaute Mensagem de Entrada
A mensagem de entrada é uma estrutura XML para consulta do MDF-e. A TAG raiz é distDFeInt, com o versao do leiaute e tpAmb (1=Produção / 2=Homologação). O interessado informa seu CNPJ ou CPF.
A consulta pode ocorrer de duas formas:
- distNSU: Grupo para distribuição de DF-e de interesse a partir de um
ultNSU(último NSU recebido pelo ator). Se informado com zero ou um NSU muito antigo, a consulta retorna informações dos DF-e recepcionados nos últimos 6 meses. - consNSU: Grupo para consultar um DF-e específico a partir de um
NSU. Utilizado para fechar lacunas de NSU identificadas na base do interessado.
Leiaute Mensagem de Retorno
A mensagem de retorno (retDistDFeInt) contém o resultado da consulta, incluindo versao, tpAmb, verAplic (versão do aplicativo que processou), cStat (código de status da resposta), xMotivo (descrição do status) e dhResp (data e hora da resposta).
Elementos importantes no retorno são:
ultNSU: Último NSU pesquisado no Ambiente Nacional.maxNSU: Maior NSU existente no Ambiente Nacional para o CNPJ/CPF informado.loteDistDFeInt: Conjunto de informações de documentos fiscais.docZip: Informação do documento fiscal eletrônico, compactada. Inclui oNSUdo documento e oschemaXML para validação (procMDFe_v3.00.xsd, por exemplo).
Mensagem de Retorno Compactada
Para otimizar o uso da infraestrutura de rede, cada documento na mensagem de retorno é compactado individualmente na tag:docZip utilizando o padrão Gzip. Estima-se uma redução de até 60% no tamanho da mensagem de retorno. A aplicação cliente deve descompactar o documento para processamento.
Descrição do Processo de Distribuição de DF-e de Interesse
O serviço é acessível a atores relacionados como autorizados ao XML, contratantes e proprietários de veículos envolvidos em MDF-e, desde que possuam certificado digital de PF ou PJ. O Ambiente Nacional gera um Número Sequencial Único (NSU) para cada interessado, garantindo uma sequência sem intervalos.
O XML do pedido de distribuição suporta dois tipos de consultas, definidas pelas tags distNSU e consNSU.
distNSU - Distribuição de Conjunto de DF-e a Partir do NSU Informado
A aplicação cliente deve informar o ultNSU que possui. Se o NSU informado for menor que o primeiro NSU disponível, o Ambiente Nacional fornece os documentos a partir do primeiro.
consNSU - Distribuição de DF-e vinculado ao NSU Informado
Este método permite consultar pontualmente um NSU específico que foi identificado como faltante na base de dados do interessado. A aplicação cliente informa o NSU desejado.
CNPJ ou CPF do interessado no DF-e
É necessário informar o CPF da pessoa ou CNPJ da empresa para recuperação dos DF-e. Isso permite que uma empresa recupere DF-e de qualquer um de seus estabelecimentos utilizando um único certificado digital PJ.
Envio das informações
O pedido de distribuição é enviado via Web Service, exigindo um certificado digital de PJ ou PF válido. A aplicação cliente envia uma mensagem conforme os padrões do manual.
Processamento da Requisição de Distribuição (distNSU)
O Web Service gera lotes de até 50 documentos para o interessado, com NSU superior ao informado. Se o NSU enviado for menor que o primeiro disponível, os documentos são fornecidos a partir do primeiro. A criação do lote segue ordem crescente de NSU, pode conter qualquer tipo de documento válido, e não inclui documentos emitidos pela própria empresa.
O processo de recepção e sincronização ocorre em ordem cronológica de emissão ou autorização de uso. O Ambiente Nacional do MDF-e gera o NSU de forma assíncrona, permitindo a recuperação de documentos de interesse assim que processados para distribuição. É recomendado manter controle do primeiro NSU válido para consulta.
As possíveis respostas do Web Service são:
- Rejeição, com o motivo da falha no
cStat. - Nenhum documento localizado (
cStat='137'). - Documento localizado (
cStat='138'), com os documentos fiscais encontrados.
Para evitar sobrecarga, o interessado deve aguardar no mínimo uma hora antes de fazer uma nova solicitação se o ultNSU informado for igual ao maxNSU do Ambiente Nacional, indicando que não há mais documentos a serem pesquisados no momento.
Processamento da Requisição de Distribuição (consNSU)
O Ambiente Nacional gera NSU sem lacunas. Se houver falhas na distribuição, identificando lacunas, o interessado deve consultar pontualmente os NSU faltantes. Isso é feito pelo método mdfeDistDFeInteresse, informando o NSU desejado na tag consNSU do XML de requisição.
As respostas podem ser:
- Rejeição, com o motivo da falha no
cStat. - Nenhum documento localizado (
cStat='137'), indicando que o NSU não foi gerado. - Documento localizado (
cStat='138'), com o documento fiscal encontrado.
Regras de Validação Básicas do Serviço
O serviço aplica diversas regras de validação para garantir a segurança e conformidade.
Validações de Certificado
Incluem a verificação de validade do certificado de transmissor (existência, versão, Basic Constraint, KeyUsage), validade temporal, cadeia de certificação (AC emissora, revogação), Lista de Certificados Revogados (LCR) e presença da extensão de CNPJ ou CPF. Muitas dessas validações são tratadas pelo protocolo TLS.
Validação Inicial da Mensagem
A mensagem é validada quanto ao tamanho (não pode exceder 10 Kbytes, sob pena de rejeição com erro 214 ou interrupção da conexão), formato XML (XML Malformado - 243) e disponibilidade do serviço (Serviço Paralisado Momentaneamente - 108, ou Serviço Paralisado sem Previsão - 109).
Validação das Informações de Controle da Chamada ao Web Service
O mdfeCabecMsg no SOAP Header é verificado para garantir a existência dos campos cUF e versaoDados, e para validar a UF e a versão informadas. Informações inexistentes ou inválidas levam à rejeição da solicitação.
Validação da Área de Dados da Mensagem
A área de dados da mensagem é submetida a validações de forma:
- Verificação do Schema XML (erro 215).
- Ausência de namespace diverso do padrão
http://www.portalfiscal.inf.br/mdfe(erro 598). - Ausência de caracteres de edição no início/fim ou entre as tags (erro 599).
- Não uso de prefixo no namespace (erro 404).
- Uso de codificação UTF-8 (erro 402).
Validações das Regras de Negócio
Regras de negócio específicas são aplicadas, como:
- Ambiente do MDF-e divergir do ambiente do Web Service (erro 252).
- CNPJ (erro 489) ou CPF (erro 490) do interessado inválido.
- CNPJ-Base do certificado digital diferente do CNPJ consultado (erro 491) ou CPF do certificado digital diferente do CPF consultado (erro 492).
- NSU informado superior ao maior NSU disponível (erro 493).
- NSU informado corresponder a documento autorizado há mais de seis meses (erro 730).
Recomendações Para Evitar o Uso Indevido
O ambiente fiscal implementa controles para identificar e prevenir o uso indevido do serviço, como aplicações em "loop" que consomem recursos desnecessariamente. Tentativas sucessivas de busca de registros já disponibilizados são rejeitadas com o erro "678 - Rejeição: Consumo Indevido".
Endereço do Web Service
Os endereços do Web Service de Distribuição do Ambiente Nacional para MDF-e estão disponíveis no Portal dos Documentos Fiscais Eletrônicos da SVRS (http://dfe-portal.svrs.gov.br/MDFe), no link 'Serviços' / 'Relação de Serviços Web'.
- Produção:
https://mdfe.svrs.rs.gov.br/WS/MDFeDistribuicaoDFe/MDFeDistribuicaoDFe.asmx - Homologação:
https://mdfe-homologacao.svrs.rs.gov.br/WS/MDFeDistribuicaoDFe/MDFeDistribuicaoDFe.asmx
Tabela de Códigos e Descrições de Mensagens de Erros
A Nota Técnica 2015.002 detalha uma tabela completa de códigos e descrições de mensagens de erros, tanto para resultados de processamento bem-sucedidos ou sem documentos, quanto para motivos de não atendimento da solicitação. Estes códigos abrangem desde problemas de certificado digital e XML malformado até validações de regras de negócio e consumo indevido.
Conclusão
O serviço de distribuição de DF-e para atores do MDF-e, detalhado na Nota Técnica 2015.002, fornece um método padronizado e seguro para acessar documentos fiscais eletrônicos de interesse. A comunicação via Web Service, os padrões técnicos de XML, compactação e certificação digital, juntamente com as regras de validação rigorosas, garantem a confiabilidade do processo. Contadores e empresários devem compreender esses padrões para integrar suas soluções e garantir o acesso eficiente aos documentos fiscais eletrônicos relevantes para suas operações, especialmente em relação ao NSU e aos limites de consulta.