Pular para o conteúdo

Código de Exemplo — Visão geral

Esta seção traz implementações completas e prontas para produção em várias linguagens. Cada exemplo cobre o ciclo completo:

  • Carregamento do Token a partir de variável de ambiente
  • Cliente HTTP centralizado com headers padrão e timeout
  • Idempotência via numero-origem
  • Polling com backoff exponencial
  • Retry em erros transitórios
  • Tratamento de status: "050", "900", "999"
  • Captura do X-Request-Id para logs

Linguagens disponíveis

Padrão dos exemplos

Cada página segue a mesma estrutura:

  1. Setup — instalação de dependências e variáveis de ambiente.
  2. Cliente HTTP centralizado — com captura de X-Request-Id e tratamento de erro.
  3. Helper de polling reutilizável — chamado por todos os cenários assíncronos.
  4. Cenários por documento fiscal:
    • Emitir NFC-e (com polling)
    • Emitir NF-e (com transporte completo, faturas)
    • Emitir NFS-e (Nota Fiscal de Serviço)
    • Cancelar NF-e, NFC-e, NFS-e
    • Lançar carta de correção (CC-e)
    • Reconhecer nota de fornecedor (MD-e)
  5. Retry com backoff — apenas em erros transitórios.
  6. Listar com paginação — loop completo.
  7. Tratamento de erros — captura de X-Request-Id e propagação adequada.

Matriz de cobertura (todos os 40 endpoints da API)

Documentos fiscais

CenáriocURLJS/TSPythonPHPJavaC#GoRuby
NF-e Emissão (transporte, faturas)✅✅✅✅✅✅✅✅
NF-e Alteração (PUT)✅✅✅✅✅✅✅✅
NF-e Cancelamento✅✅✅✅✅✅✅✅
NF-e Carta de correção (CC-e)✅✅✅✅✅✅✅✅
NF-e Consulta completa por recibo✅✅✅✅✅✅✅✅
NF-e Listagem paginada✅✅✅✅✅✅✅✅
NFC-e Emissão✅✅✅✅✅✅✅✅
NFC-e Alteração (PUT)✅✅✅✅✅✅✅✅
NFC-e Cancelamento✅✅✅✅✅✅✅✅
NFC-e Consulta completa por recibo✅✅✅✅✅✅✅✅
NFC-e Listagem paginada✅✅✅✅✅✅✅✅
NFS-e Emissão✅✅✅✅✅✅✅✅
NFS-e Alteração (PUT)✅✅✅✅✅✅✅✅
NFS-e Cancelamento✅✅✅✅✅✅✅✅
NFS-e Listagem com dataInicial✅✅✅✅✅✅✅✅
Fornecedor Listagem✅✅✅✅✅✅✅✅
Fornecedor Reconhecimento (MD-e)✅✅✅✅✅✅✅✅

Clientes (CRUD)

CenáriocURLJS/TSPythonPHPJavaC#GoRuby
Cadastrar pessoa física✅✅✅✅✅✅✅✅
Cadastrar pessoa jurídica✅✅✅✅✅✅✅✅
Consultar por CPF/CNPJ✅✅✅✅✅✅✅✅
Buscar por nome (+ top_clientes)✅✅✅✅✅✅✅✅
Atualizar✅✅✅✅✅✅✅✅
Excluir✅✅✅✅✅✅✅✅

Produtos (CRUD)

CenáriocURLJS/TSPythonPHPJavaC#GoRuby
Cadastrar produto (com config fiscal)✅✅✅✅✅✅✅✅
Cadastrar serviço (tipo S)✅✅✅✅✅✅✅✅
Consultar por referência✅✅✅✅✅✅✅✅
Buscar por nome✅✅✅✅✅✅✅✅
Paginação com busca✅✅✅✅✅✅✅✅
Atualizar✅✅✅✅✅✅✅✅
Excluir✅✅✅✅✅✅✅✅

Infraestrutura e padrões

CenáriocURLJS/TSPythonPHPJavaC#GoRuby
Health check (sem auth)✅✅✅✅✅✅✅✅
Cliente HTTP centralizado✅✅✅✅✅✅✅✅
Helper de polling reutilizável✅✅✅✅✅✅✅✅
Retry com backoff✅✅✅✅✅✅✅✅
Captura X-Request-Id✅✅✅✅✅✅✅✅
Tratamento estruturado de erros✅✅✅✅✅✅✅✅

Variáveis de ambiente comuns

Todos os exemplos esperam:

Terminal window
export MYSE_API_BASE="https://api.mysebr.com.br/nfemyse-v3/rest"
export MYSE_API_TOKEN="seu_token_aqui"