Como emitir NFCe com VB6?

Chegou a hora de conhecer uma forma fácil e simples de emitir NFCe com VB6, levando essa funcionalidade para os clientes da sua software house!
Tempo de Leitura: 4 minutos

Chegou a hora de conhecer uma forma fácil e simples de emitir NFCe com VB6, levando essa funcionalidade para os clientes da sua software house!


Lançado em 1998, o Visual Basic 6 é uma linguagem de programação muito utilizada em aplicações de legado, ainda que sua popularidade tenha sido ultrapassada por diversos outros formatos.

Seu baixo custo a torna uma opção para as software houses que desejam criar ERPs para emitir NFCe com VB6, sua última versão.

Se esse é o caso do seu negócio, é possível que a equipe tenha algumas dificuldades para encontrar soluções que atendam a essa linguagem.

Muitas optam por desenvolver seus próprios módulos e recursos, deparando-se com os desafios comuns do mercado.

Emitir NFCe no VB6 traz as suas dificuldades, especialmente porque as notas exigem uma série de requisitos nos sistemas.

Quer saber mais sobre o assunto e descobrir formas de implementar um módulo de forma rápida e prática? Continue a leitura!

Quais são os desafios de um ERP para emitir NFCe com VB6?

A Nota Fiscal do Consumidor Eletrônica é um dos vários tipos de notas fiscais que um ERP é capaz de emitir, fazendo parte do SPED fiscal.

Para satisfazer as necessidades dos clientes, é importante que o seu software esteja preparado e adequado para essa tarefa.

Então, a sua equipe deve conhecer todos os requisitos de sistema para criar as comunicações exigidas pelos sistemas do governo.

A Secretaria da Fazenda (SEFAZ) tem sua própria plataforma digital para receber as notas, sendo fundamental que o ERP seja integrado a ela para que os documentos sejam emitidos no prazo estipulado — 24 horas após a venda.

Além do seu programa para emitir NFCe com VB6, o empreendedor precisa ter credenciamento na SEFAZ, ter um certificado digital válido no padrão ICP-Brasil, ter um Código de Segurança do Contribuinte e estar com a Inscrição Estadual em dia.

A internet também é importante, mas o processo de contingência permite que as notas sejam enviadas mesmo se o sinal cair.

Diante dessas exigências, há algumas questões a serem levadas em conta no desenvolvimento de um módulo de emissão das notas.

Você já conheceu o Manager Saas? emita a NFCe MS aqui.

Certificado Digital

O seu ERP precisa ser capaz de acessar o certificado digital para realizar a validação e assinatura — o tipo mais comum é o modelo A1.

Sem a devida compatibilidade com essa ferramenta, um software financeiro não será capaz de completar a solicitação de envio das notas.

Correção de erros

Não é raro que o comerciante se atrapalhe nas descrições de itens e serviços, precisando cancelar uma nota.

Além disso, pode haver erros de cadastro que exigem a correção para validação da NFCe.

O ERP precisa estar apto para gerenciar essas questões, permitindo cancelar e re-emitir os documentos.

Regras e normas da Legislação

Uma característica normal do sistema financeiro é a frequente alteração de leis e normas referentes aos procedimentos.

Nesse contexto, vale ressaltar que cada região tem suas regras específicas, dificultando uma padronização dos processos.

Para um ERP ser capaz de emitir NFCe com VB6, é importante acompanhar as mudanças e atualizar o software sempre que necessário.

Do contrário, um sistema em desacordo com as regras vigentes poderá comprometer o envio dos arquivos XML. Esses passarão a ser rejeitados, deixando o seu cliente desprotegido contra multas e outras penalidades.

Armazenamento e consulta de notas

Embora o sistema da SEFAZ permita consultar as notas, a responsabilidade de armazená-las e mantê-las em ordem é do contribuinte.

O comerciante precisa tê-las em mãos por pelo menos 5 anos, período esse ao qual está passível de fiscalização.

Com isso, é importante que o módulo para emitir NFCe em VB6 permita acesso aos arquivos, bem como o armazenamento dos documentos em seu sistema.


Saiba mais sobre teste de software e as vantagens que ele pode trazer para a sua aplicação.


NFC-e da TecnoSpeed

Como emitir NFCe com VB6?

Agora que você já conhece os requisitos, desafios e necessidades de um ERP para emitir NFCe com VB6, é hora de conhecer uma forma prática e simples de permitir ao seu cliente realizar essa tarefa.

Contratar um módulo pronto é uma forma muito mais interessante de permitir que a sua equipe se concentre em tarefas mais importantes, facilitando o desenvolvimento do ERP.

Por isso, você pode contar com a nossa solução NFCe TecnoSpeed, adaptada para todas as linguagens de programação!

Para emitir NFCe em VB6, você precisa ter o certificado digital instalado na máquina, baixar o componente, bem como a demonstração do componente.

Na pasta de instalação — caminho “C:\Program Files\TecnoSpeed\NFCe\” — acesse Arquivos, copie e cole o conteúdo na pasta de demonstração, substituindo os arquivos já existentes.

Em seguida, abra o arquivo NFCeServidoresHom.ini e verifique se a UF desejada tem dois ou três blocos de servidores:

  • 2 blocos;
  • 3 blocos — a UF já tem um WebService para testes, mas é necessário verificar se há autorização para utilizá-lo, garantindo sempre a validação dos links.

Para utilizar um ambiente aberto a contribuintes de todo o país, será necessário incluir um novo bloco (primeiro caso) ou substituir o terceiro (segundo caso) com as seguintes informações:

  • NfeRecepcao3=https://homnfce.sefaz.am.gov.br/nfce-services-nac/services/NfeAutorizacao
  • NfeRetRecepcao3=https://homnfce.sefaz.am.gov.br/nfce-services-nac/services/NfeRetAutorizacao
  • NfeInutilizacao3=https://homnfce.sefaz.am.gov.br/nfce-services-nac/services/NfeInutilizacao2
  • NfeConsulta3=https://homnfce.sefaz.am.gov.br/nfce-services-nac/services/NfeConsulta2
  • NfeStatusServico3=https://homnfce.sefaz.am.gov.br/nfce-services-nac/services/NfeStatusServico2
  • nfeRecepcaoEvento3=https://homnfce.sefaz.am.gov.br/nfce-services-nac/services/RecepcaoEvento

No projeto de demonstração para emitir NFCe em VB6, as linhas a seguir indicam as informações que devem ser preenchidas de acordo com a necessidade. Realize o preenchimento adequado:

  • spdNFCeDataSet.SetCampo (“dhEmi_B09=” & Format(Now(), “yyyy-mm-ddThh:mm:ss”) & “-03:00”) ‘Verifique se o fuso corresponde ao de sua UF.
  • spdNFCeDataSet.SetCampo (“cMunFG_B12=4115200”)                                     ‘Informe o código de seu municipio.
  • spdNFCeDataSet.SetCampo (“cMun_C10=4115200”)                                         ‘Informe o código de seu municipio.
  • spdNFCeDataSet.SetCampo (“xMun_C11=MARINGA”)                                      ‘Informe o nome de seu municipio.

No ambiente de testes do AM, você pode ignorar essa etapa a seguir. Se estiver no ambiente de testes específico da sua UF, altere também os campos:

  • spdNFCeDataSet.SetCampo (“cUF_B02=51”)                                                   ‘Informe o código de sua UF.
  • spdNFCeDataSet.SetCampo (“IE_C17=9044016688”)                                        ‘Informe a IE do emitente.
  • spdNFCeDataSet.SetCampo (“CRT_C21=3”)                                                    ‘Informe 1 para simples nacional, 2 para simples nacional com excedente e 3 para normal.

Feito isso, salve e faça a compilação do projeto. Vá para o certificado no ComboBox e clique em “Abrir Ini”. O nome do certificado selecionado será escrito na função NomeCertificado . Já no arquivo aberto, você deve preencher os dados de CNPJ e UF, com Ambiente=2 e VersaoManual=5.0.

Feche o arquivo, vá para a demonstração e clique em “Carregar Configurações ” para carregar as alterações no componente. Clique em “2. Gerar via Dataset” para converter os dados do dataset em XML, seguido de “3. Assinar XML” e “4.1 Enviar NFCe Sincrono”.

Após a notificação de autorização, o processo de emitir NFCe em VB6 estará concluído. Você poderá, por fim, visualizar, exportar ou imprimir a nota.

Muito simples, não é? Leve essa praticidade para o seu software. Entre em contato e adquira já a NFCe TecnoSpeed!

Geison Durães
Geison Durães
Formado em Comunicação em Multimeios. Analista de Marketing da TecnoSpeed, focado em produção de conteúdos para mídias digitais.

Comments are closed.