Guia Geral - MDF-e – Central de Atendimento
17 de fevereiro de 2022 17:20
O Componente MDFe-e da Tecnospeed é uma biblioteca contendo todos os métodos necessários para emitir o Manifesto Eletrônico de Documentos Fiscais. É a escolha ideal para quem pode consumir OCX e prefere manter todo o processo de mensageria do MDF-e dentro do próprio ambiente. Para utilizar o Componente em seu software, basta instanciá-lo em seu projeto, implementar chamadas para cada um dos métodos e configurá-los de acordo com sua necessidade.
Instanciar Componente MDFe
Enviar Manifesto
Imprimir Manifesto
Cancelar Manifesto
Instalar Componente MDFe
Após aprovação do pedido de adesão, em até 24 horas úteis, nossa equipe financeira irá realizar o faturamento e disponibilizar o Componente MDF-e para download na Central do Cliente. Você pode acessar a Central do Cliente com os dados de acesso que você preencheu no formulário de registro.
Além do Componente MDF-e, você também precisará de um CNPJ com Inscrição Estadual e um certificado digital deste CNPJ cadastrado no Web Service da SEFAZ.
Existem dois instaladores disponíveis para download na Central do Cliente: O Setup MDFe Full e o Setup MDFe Dependencies. O primeiro deve ser instalado no ambiente de desenvolvimento e o segundo no ambiente onde o sistema for ser executado.
Além das DLLs, é necessário que o componente tenha acesso às pastas de Esquemas e Templates e aos arquivos com o endereço dos servidores. Estas pastas e arquivos são criados no diretório de instalação da versão Full (TecnoSpeed/MDFe/Arquivos). É necessário colocá-los no ambiente do cliente e configurar o diretório delas nas propriedades DiretorioEsquemas, DiretorioTemplates, ArquivoServidoresHom e ArquivoServidoresProd.
MDFeX.ocx
MDFeGovX.ocx
A instalação manual trata-se do usuário instalar o componente MDF-e através de seu arquivo binário na extensão .dpk (Delphi Package). Caso opte em instalar o componente manualmente siga as instruções abaixo:
Deverá ter em mãos o dpk do componente MDF-e DataSet na versão de Delphi desejada e abri-lo.
Após abrir o projeto do MDF-e DataSet, poderá compilar e em seguida instalar normalmente.
Em seguida, para instalar o componente MDF-e deverá ter em mãos seu respectivo dpk na versão de Delphi desejada e abri-lo.
Após realizar esses passos, poderá finalmente instalar o seu componente MDF-e, conforme a imagem abaixo:
spdMDFe,
spdMDFeUtils,
spdMDFeTypes,
MDFe: TspdMDFe;
MDFe := TspdMDFe.Create(nil);
Dim MDFe As MDFeX.spdMDFeX
Dim MDFeDataSet As spdMdfeDatasetX.spdMdfeDatasetX
Set MDFe = New MDFeX.spdMDFeX
Set MDFeDataSet = New spdMdfeDatasetX.spdMdfeDatasetX
using spdMDFeX;
public MDFeX.spdMDFeX _spdMDFeX = new MDFeX.spdMDFeX();
Fluxo ideal da emissão MDFe
No envio síncrono, a SEFAZ retornará direto a situação da nota, não sendo necessário fazer uma consulta de chave ou recibo após o envio. Porém nós não recomendamos o uso do envio síncrono, pois a SEFAZ não costuma responder de forma estável.
Para assinar o XML de envio, é necessário utilizar o método AssinarMDFe. Como parâmetro, é necessário informar o XML sem assinatura como string. O método retornará o mesmo XML passado como parâmetro na função, porém ele terá as tags de assinatura em seu conteúdo.
Em alguns casos, antes de enviar a nota à SEFAZ, é importante validar o XML. Esta validação mostrará possíveis rejeições e avisos a serem corrigidos antes de enviar em produção. Para validar uma nota, é possível utilizar o validador da Sefaz.
Para utilizar o Validador MDF-e da SEFAZ, basta colar um XML, no quadro, clicar em Validar e conferir o resultado da validação abaixo.
Enviar MDFe
Para enviar uma nota de forma assíncrona, é necessário utilizar o método EnviarMDFe. No envio assíncrono, a SEFAZ retornará um XML com um número de recibo. É necessário capturar este número de recibo e realizar a consulta utilizando o método ConsultarRecibo.
<retConsReciMDFe versao="3.00" xmlns="http://www.portalfiscal.inf.br/mdfe">
<nRec>419000007322414</nRec>
<protMDFe versao="3.00">
<infProt Id="MDFe941190000031345">
<chMDFe>41191208187168000160581220000021751000021750</chMDFe>
</retConsReciMDFe>
<verAplic>RS20181016152059</verAplic>
<nRec>419000006686806</nRec>
Para enviar uma nota de forma síncrona, é necessário utilizar o método EnviarMDFeSincrono. No envio síncrono, a SEFAZ retornará um XML mostrando se a nota foi autorizada (cStat igual a 100) ou qual foi o motivo da rejeição.
Imprimir MDFe
O DAMDFE pode ser impresso na impressora ou salvo como um arquivo PDF. Em ambos os casos, é necessário informar o conteúdo de um XML de uma nota autorizada na SEFAZ (cStat igual a 100).
Para imprimir uma nota, é necessário utilizar o método ImprimirDAMDFE. Como parâmetro, é necessário informar o XML autorizado, o caminho para o arquivo de modelo do DAMDFE (extensão .rtm), e o nome da impressora que será utilizada para imprimir (caso seja vazio, será utilizada a impressora padrão do Windows).
Veja mais sobre o método ImprimirDAMDFE >
Para exportar o DAMDFE em PDF, é necessário utilizar o método ExportarDAMDFe. Como parâmetro, é necessário informar o XML autorizado, o caminho para o arquivo de modelo do DAMDFE (extensão .rtm), e o diretório que o PDF deve ser salvo (caso seja vazio, será mostrada a tela de salvar arquivo do Windows).
O MDF-e pode ser cancelado até 24 horas após a autorização. Para cancelar uma nota dela deve estar autorizada na SEFAZ (cStat igual a 100).
Para cancelar um MDFe, é necessário utilizar o método CancelarMDFe. Como parâmetro, é necessário informar a chave desta MDF-e, o número de protocolo de registro, uma justificativa de cancelamento, a data e hora de cancelamento, a sequência deste evento, e o fuso horário.
Veja mais sobre o método CancelarNFeEvento >
Imprimir Manifesto Cancelado
Para imprimir uma nota que foi cancelada, é necessário utilizar o método ImprimirDAMDFe. Como parâmetro, é necessário informar o XML autorizado, o XML cancelado, o caminho para o arquivo de modelo do DAMDFE (extensão .rtm), e o nome da impressora que será utilizada para imprimir (caso seja vazio, será utilizada a impressora padrão do Windows).