Documentação da API

v1.1.0 Atualizado em:

Visão Geral e Primeiros Passos

Bem-vindo à API do Emissor NF-e. Nossa arquitetura RESTful permite que você integre a emissão de documentos fiscais (NF-e, NFC-e, NFS-e) diretamente em sua aplicação de forma transparente e segura.

Pré-requisitos Obrigatórios

Antes de realizar qualquer requisição via API, é necessário realizar a configuração inicial da conta:

  1. Acesse o painel do emissor em emissor.rpvtecnologia.com.br.
  2. Complete 100% do Checklist de Inicialização (dados da empresa, regime tributário, etc).
  3. Acesse o menu > Configurações da API para gerar seu Token e API Secret.

Somente com o checklist concluído e as credenciais geradas, você poderá autenticar suas requisições e usufruir da API tranquilamente.

Autenticação

Todas as chamadas devem ser autenticadas enviando as credenciais no Header:

Token: <SEU_TOKEN>
Api-Secret: <SEU_API_SECRET>

Ambientes (Base URL)

A API disponibiliza dois ambientes. Nos endpoints abaixo, substitua {{URL_BASE}} pela URL do ambiente desejado:

// Produção (Validade Jurídica)
URL_BASE: https://api.rpvtecnologia.com.br

// Sandbox (Testes - Sem valor fiscal)
URL_BASE: https://sandbox.rpvtecnologia.com.br

Tomadores

GET {{URL_BASE}}/emissor/tomadores/listar/

Listar Tomadores

Retorna a lista de clientes já cadastrados na sua conta.
Utilize este endpoint para buscar o id de um cliente e usá-lo no campo id_tomador nas emissões de NF-e e NFS-e, evitando a necessidade de reenviar todos os dados cadastrais (endereço, bairro, etc) a cada nova nota.

Autenticação no GET:

Como esta é uma requisição GET, recomendamos enviar o Token e a Api-Secret através do Cabeçalho (Header) da requisição.

Headers Obrigatórios:

  • Token Seu token de acesso.
  • Api-Secret Sua chave secreta de validação.
  • Content-Type application/json
Resposta de Sucesso (200 OK)
{
  "total": 2,
  "tomadores": [
    {
      "id": 105,
      "nome_razao_social": "Empresa Cliente LTDA",
      "cpf_cnpj": "12345678000199"
    },
    {
      "id": 108,
      "nome_razao_social": "Fulano de Tal",
      "cpf_cnpj": "11122233344"
    }
  ]
}

Tabela de Retornos

Status Mensagem / Erro Causa Provável
200 {"total": X, "tomadores": [...]} Listagem realizada com sucesso.
400 Token não enviado (header ou JSON) A credencial Token não foi encontrada na requisição.
400 API Secret não enviada (header ou JSON) A credencial Api-Secret não foi encontrada na requisição.
401 Token ou API Secret inválidos As credenciais informadas não correspondem a nenhum cliente ativo.
405 Apenas GET é permitido Foi utilizado um método HTTP incorreto (ex: POST ou PUT).
500 Erro interno ao validar token Falha na conexão com nossa base de dados durante a autenticação.
500 Erro interno ao buscar tomadores Falha na execução da query de busca dos tomadores.
POST {{URL_BASE}}/emissor/tomadores/cadastrar/

Cadastrar Tomador

Cadastra um novo cliente/tomador na base de dados.
Ao realizar o cadastro, a API retorna o id interno deste tomador, que poderá ser utilizado nas emissões de nota para evitar o preenchimento repetitivo dos dados de endereço e contato.

Exemplo de Requisição (JSON)
{
  "nome_razao_social": "João da Silva LTDA",
  "cpf_cnpj": "12345678000199",
  "email": "joao@email.com",
  "telefone": "11999998888",
  "tipo_pessoa": "J",
  "cep": "01001000",
  "logradouro": "Praça da Sé",
  "numero": "10",
  "complemento": "Sala 5",
  "bairro": "Sé",
  "cidade": "São Paulo",
  "uf": "SP",
  "ibge_cidade": "3550308",
  "inscricao_estadual": "ISENTO",
  "indicador_ie": "9"
}
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "message": "Tomador cadastrado com sucesso.",
  "id": 154
}

Tabela de Retornos

Status Mensagem / Erro Causa Provável
200 Tomador cadastrado com sucesso Cadastro realizado. O ID retornado pode ser usado para emitir notas.
400 Campos obrigatórios faltando: [lista] Faltou enviar dados essenciais (Ex: cpf_cnpj, nome, cep, ibge_cidade).
400 JSON inválido O corpo da requisição não está formatado corretamente.
401 Token ou Api-Secret inválidos Credenciais incorretas ou não enviadas no Header/JSON.
405 Apenas o método POST é permitido Foi realizada uma requisição GET, PUT ou DELETE.
500 Erro ao cadastrar tomador Falha interna na base de dados (ex: CPF/CNPJ duplicado ou falha de conexão).

NFC-e (Consumidor)

POST {{URL_BASE}}/emissor/nfce/emitir/

Emitir NFC-e

Endpoint para emissão síncrona de Nota Fiscal de Consumidor Eletrônica (Modelo 65).

Atenção à Estrutura: O payload deve ser enviado sempre como uma Lista (Array) de objetos JSON, mesmo que você esteja emitindo apenas uma nota por vez.

Headers Obrigatórios:

  • Token Seu token de acesso.
  • Api-Secret Sua chave secreta de validação.
  • Content-Type application/json
Exemplo de Requisição (JSON)
[
  {
    "natureza": "Venda de mercadoria",
    "presencial": true,
    "consumidorFinal": true,
    
    "emitente": {
      "cpfCnpj": "07945469000142",
      "inscricaoEstadual": "ISENTO"
    },

    "destinatario": {
      "cpfCnpj": "84965231000125",
      "email": "cliente@teste.com",
      "endereco": {
        "cep": "18550015",
        "logradouro": "Rua José Vitiello",
        "numero": "88",
        "bairro": "Centro",
        "codigoCidade": "3507001",
        "descricaoCidade": "Boituva",
        "estado": "SP"
      }
    },

    "itens": [
      {
        "codigo": "2",
        "descricao": "Teclado 70%",
        "ncm": "84716052",
        "cest": "0123456",
        "cfop": "5102",
        "valor": 220.00,
        "valorUnitario": {
          "comercial": 220.00,
          "tributavel": 220.00
        },
        "tributos": {
          "pis": { 
            "cst": "99", 
            "valor": 0, 
            "aliquota": 0,
            "baseCalculo": {
                "valor": 0,
                "quantidade": 0
            }
          },
          "cofins": { 
            "cst": "07", 
            "valor": 0, 
            "aliquota": 0,
            "baseCalculo": {
                "valor": 0
            }
          },
          "icms": { 
            "cst": "00", 
            "origem": "0", 
            "valor": 0, 
            "aliquota": 0,
            "baseCalculo": {
                "valor": 0,
                "quantidade": 0
            }
          }
        }
      }
    ],

    "pagamentos": [
      {
        "meio": "01",
        "valor": 220.00,
        "aVista": true
      }
    ],

    "responsavelTecnico": {
      "nome": "Minha Software House",
      "email": "dev@soft.com",
      "cpfCnpj": "88947125602",
      "telefone": { "ddd": "88", "numero": "88888888" }
    }
  }
]
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "codigo_http": 200,
  "resposta": {
    "mensagem": "NFC-e enviada com sucesso",
    "idNota": "NFCe_6751ad3..."
  }
}

Tabela de Retornos

Status Mensagem de Erro Causa Provável
200 NFC-e enviada com sucesso Nota autorizada pela SEFAZ.
400 JSON inválido O corpo da requisição não é um JSON válido ou está mal formatado.
400 Token ou API Secret ausentes As credenciais não foram encontradas nem no Header e nem no Body JSON.
400 Campos obrigatórios ausentes... Faltam dados essenciais como emitente, destinatario, itens ou pagamentos.
401 Token ou API Secret inválidos As credenciais enviadas não correspondem a nenhum cliente ativo na nossa base de dados.
403 Nenhum certificado ativo encontrado... O cliente não possui um certificado A1 válido, expirou ou não está ativo.
500 Falha de comunicação Erro interno ao tentar conectar com o servidor da SEFAZ.
POST {{URL_BASE}}/emissor/nfce/consultar/

Consultar NFC-e

Consulta os detalhes e o status atual de uma NFC-e utilizando o ID ou NUMERO da nota.
Utilize este recurso para verificar se uma nota foi autorizada ou rejeitada após o envio.

Headers Obrigatórios:

  • Token Seu token de acesso.
  • Api-Secret Sua chave secreta de validação.
  • Content-Type application/json
Exemplo de Requisição (JSON)
{
  "idNota": "NFCe_69307838171da"
}
Exemplo de Requisição (JSON)
{
  "numero": "1000013"
}
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "nota": {
    "idIntegracao": "NFCe_69307838171da",
    "numero": "502",
    "valor_total": "150.00",
    "status": "emitida"
  }
}

Tabela de Retornos

Status Mensagem / Erro Causa Provável
200 Sucesso Nota encontrada e retornada.
400 Credenciais ausentes Token ou API Secret não informados.
400 idNota é obrigatório O campo idNota não foi enviado no JSON.
401 Token ou Api-Secret inválidos Credenciais incorretas.
403 Esta nota não pertence ao cliente... Tentativa de acessar uma nota de outra empresa/conta.
404 Nota não encontrada O ID informado não existe em nossa base de dados.
405 Apenas POST é permitido Foi utilizado um método HTTP incorreto (ex: GET ou PUT).
POST {{URL_BASE}}/emissor/nfce/cancelar/

Cancelar NFC-e

Solicita o cancelamento de uma nota fiscal de consumidor previamente autorizada.
O sistema realizará uma busca automática pelo número da nota vinculado ao token do cliente para encontrar o registro e processar o cancelamento na SEFAZ.

Regras de Cancelamento:
  • Prazo: Máximo de 30 minutos após a autorização.
  • Justificativa: Obrigatório no mínimo 15 caracteres.
  • Status: A nota não pode estar averbada (circulação de mercadoria iniciada).

Headers Obrigatórios:

  • Token Seu token de acesso.
  • Api-Secret Sua chave secreta de validação.
  • Content-Type application/json
Exemplo de Requisição (JSON)
{
  "numero": "1050",
  "justificativa": "Erro operacional na digitação dos valores do item"
}
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "mensagem": "Cancelamento efetuado com sucesso",
  "resposta": {
    "message": "Cancelamento em processamento"
  }
}

Tabela de Retornos

Status Mensagem de Erro Causa Provável
200 Cancelamento efetuado com sucesso O evento de cancelamento foi homologado pela SEFAZ.
400 Requisição inválida... JSON mal formatado ou corpo vazio.
400 Campos obrigatórios faltando O JSON não contém token, numero ou justificativa.
400 A justificativa deve ter no mínimo 15 caracteres O texto enviado em justificativa é muito curto.
400 Esta nota já consta como cancelada Tentativa de cancelar uma nota que já foi cancelada anteriormente.
401 Token ou API Secret inválidos Credenciais incorretas.
404 Nota fiscal número X não encontrada Não existe nota com este número vinculada a este cliente na nossa base de dados.
500 Falha de comunicação Erro interno ao tentar conectar com o servidor da SEFAZ.

NF-e (Mercantil)

POST {{URL_BASE}}/emissor/nfe/emitir/

Emitir NF-e

Endpoint para emissão de Nota Fiscal Eletrônica (Modelo 55). Utilizada para operações de venda, devolução e transferência entre empresas ou entregas.
A validação dos campos é rigorosa. Certifique-se de enviar os dados tributários (ICMS, PIS, COFINS) e de endereço corretos para evitar rejeição da SEFAZ.

Exemplo de Requisição (JSON)
{
  "id_tomador": 123, 
  
  "emitente": {
    "cpfCnpj": "07945469000142"
  },
  
  "destinatario": {
    "cpfCnpj": "78656454500",
    "endereco": {
      "logradouro": "Rua Exemplo",
      "numero": "100",
      "bairro": "Centro",
      "cep": "12345678",
      "codigoCidade": "3550308",
      "estado": "SP",
      "tipoLogradouro": "Rua"
    }
  },

  "itens": [
    {
      "descricao": "Produto Teste",
      "ncm": "61091000",
      "cfop": "5102",
      "quantidade": 1,
      "valorUnitario": {
        "comercial": 50.00,
        "tributavel": 50.00
      }
    }
  ],

  "pagamentos": [
    {
      "meio": "01",
      "valor": 50.00,
      "aVista": true
    }
  ]
}
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "codigo_http": 200,
  "resposta": {
    "mensagem": "NF-e enviada com sucesso",
    "idNota": "NFe_6751ad3b..."
  }
}

Tabela de Retornos

Status Mensagem / Erro Causa Provável
200 NF-e enviada com sucesso NF-e enviada com sucesso. Nota autorizada pela SEFAZ.
400 JSON inválido Erro de sintaxe no JSON enviado.
400 Token ou API Secret ausentes Credenciais não enviadas (Header ou Body).
400 Campos obrigatórios ausentes no payload Falta itens ou pagamentos na raiz do JSON.
400 Campo 'itens' deve ser um array Formato incorreto da lista de produtos.
400 O campo 'pagamentos' deve ser um array... Formato incorreto da lista de pagamentos.
400 pagamentos[X].valor é obrigatório Um dos objetos de pagamento está sem o valor definido.
401 Token ou API Secret inválidos Credenciais incorretas ou cliente inativo.
403 Nenhum certificado ativo encontrado... O cliente não possui um certificado A1 válido, expirou ou não está ativo.
500 Erro interno ao validar token Falha na conexão com nossa base de dados.
500 Falha de comunicação Erro interno ao tentar conectar com o servidor da SEFAZ.
POST {{URL_BASE}}/emissor/nfe/consultar/

Consultar NF-e

Consulta os detalhes e o status atual de uma NF-e utilizando o ID ou NUMERO da nota.
Utilize este recurso para verificar se uma nota foi autorizada, cancelada ou rejeitada após o envio.

Headers Obrigatórios:

  • Token Seu token de acesso.
  • Api-Secret Sua chave secreta de validação.
  • Content-Type application/json
Exemplo de Requisição (JSON)
{
  "idNota": "NFe_6751ad3b..."
}
Exemplo de Requisição (JSON)
{
  "numero": "1000013"
}
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "nota": {
    "idIntegracao": "NFe_6751ad3b...",
    "numero": "5020",
    "valor_total": "1500.00",
    "status": "emitida"
  }
}

Tabela de Retornos

Status Mensagem / Erro Causa Provável
200 Sucesso Nota encontrada e retornada.
400 Credenciais ausentes Token ou API Secret não informados.
400 idNota é obrigatório O campo idNota não foi enviado no JSON.
401 Token ou Api-Secret inválidos Credenciais incorretas.
403 Esta nota não pertence ao cliente... Tentativa de acessar uma nota de outra empresa/conta.
404 Nota não encontrada O ID informado não existe na tabela de NF-e emitidas.
405 Apenas POST é permitido Foi utilizado um método HTTP incorreto (ex: GET ou PUT).
POST {{URL_BASE}}/emissor/nfe/cancelar/

Cancelar NF-e

Solicita o cancelamento de uma NF-e modelo 55.
Informe o número da nota e a justificativa. O sistema localizará o ID interno automaticamente.

Regras de Negócio:
  • Prazo Legal: Geralmente até 24 horas (varia por UF).
  • Justificativa: Mínimo de 15 caracteres.
  • Circulação: A mercadoria não pode ter saído do estabelecimento.
Exemplo de Requisição (JSON)
{
  "numero": "5020",
  "justificativa": "Dados do destinatário preenchidos incorretamente"
}
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "mensagem": "Cancelamento efetuado com sucesso",
  "resposta": {
    "message": "Cancelamento em processamento"
  }
}

Tabela de Retornos

Status Mensagem / Erro Causa Provável
200 Cancelamento efetuado com sucesso O evento de cancelamento foi homologado pela SEFAZ.
400 Requisição inválida... JSON mal formatado ou vazio.
400 Token ou API Secret ausentes Credenciais não enviadas.
400 Campos obrigatórios ausentes no payload Falta numero ou justificativa.
400 A justificativa deve ter no mínimo 15 caracteres Texto muito curto.
400 Esta nota já consta como cancelada... Tentativa de cancelar uma nota que já está cancelada no sistema.
401 Token ou API Secret inválidos Credenciais incorretas.
404 Nota fiscal número X não encontrada... O número informado não existe para este cliente no banco.
404 Log de emissão não encontrado... Nota existe, mas não há registro do ID externo (inconsistência de dados).
500 Erro na operação. O JSON de retorno da emissão está corrompido ou ilegível.
500 Falha de comunicação Erro interno ao tentar conectar com o servidor da SEFAZ.

NFS-e (Serviços)

POST {{URL_BASE}}/emissor/nfse/emitir/

Emitir NFS-e

Endpoint unificado para emissão de Notas de Serviço.
Nossa API abstrai as diferenças técnicas entre as prefeituras. Você envia um JSON padrão e nós convertemos para o layout específico do município do prestador (padrão ABRASF ou proprietário).

Exemplo de Requisição (JSON)
{
  "prestador": {
    "cpfCnpj": "07945469000142",
    "inscricaoMunicipal": "12345678"
  },

  "tomador": {
    "cpfCnpj": "55222111000199",
    "razaoSocial": "Cliente Exemplo LTDA",
    "email": "financeiro@cliente.com",
    "endereco": {
       "cep": "01001000",
       "logradouro": "Praça da Sé",
       "numero": "10",
       "codigoCidade": "3550308"
    }
  },

  "servico": {
    "codigo": "12.24",
    "discriminacao": "Desenvolvimento de software customizado ref. Projeto X",
    "iss": {
      "aliquota": 5.00,
      "retido": false
    },
    "valor": {
      "servico": 1500.00
    }
  }
}
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "codigo_http": 200,
  "resposta": {
    "mensagem": "NFS-e enviada com sucesso",
    "idNota": "NFSe_6751ad3b..."
  }
}

Tabela de Retornos

Status Mensagem / Erro Descrição / Causa
200 NFS-e enviada com sucesso NFS-e enviada com sucesso. Nota autorizada pela SEFAZ.
400 JSON inválido Corpo da requisição mal formatado.
400 Token ou API Secret ausentes... Credenciais não enviadas (Header ou Body).
400 Campo obrigatório ausente: [campo] Faltam dados raiz como prestador ou servico.
400 Campo obrigatório ausente: prestador.cpfCnpj Falta o documento do prestador.
400 Campo obrigatório ausente em servico... Falta discriminacao ou o valor do serviço em servico.valor.servico.
401 Token ou API Secret inválidos Credenciais incorretas ou cliente inativo.
403 Nenhum certificado ativo encontrado... O cliente não possui um certificado A1 válido ou ele não está ativado no painel.
500 Erro interno ao validar token Falha na conexão com nossa base de dados.
500 Falha de comunicação Erro interno ao tentar conectar com o servidor da SEFAZ.
POST {{URL_BASE}}/emissor/nfse/consultar/

Consultar NFS-e

Consulta os detalhes e o status atual de uma NFS-e utilizando o ID ou NUMERO da nota.
Utilize este recurso para verificar se uma nota foi autorizada, cancelada ou rejeitada após o envio.

Headers Obrigatórios:

  • Token Seu token de acesso.
  • Api-Secret Sua chave secreta de validação.
  • Content-Type application/json
Exemplo de Requisição (JSON)
{
  "idNota": "NFSe_6751ad3b..."
}
Exemplo de Requisição (JSON)
{
  "numero": "1000013"
}
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "nota": {
    "idIntegracao": "NFSe_6751ad3b...",
    "numero": "2024",
    "valor": "1500.00",
    "status": "emitida"
  }
}

Tabela de Retornos

Status Mensagem / Erro Causa Provável
200 Sucesso Nota encontrada e retornada.
400 Credenciais ausentes Token ou API Secret não informados.
400 idNota é obrigatório O campo idNota não foi enviado no JSON.
401 Token ou Api-Secret inválidos Credenciais incorretas.
403 Esta nota não pertence ao cliente... Tentativa de acessar uma nota de outra empresa/conta.
404 Nota não encontrada O ID informado não existe em nossa base de dados.
405 Apenas POST é permitido Foi utilizado um método HTTP incorreto (ex: GET ou PUT).
POST {{URL_BASE}}/emissor/nfse/cancelar/

Cancelar NFS-e

Solicita o cancelamento da nota de serviço junto à prefeitura.
Informe o número da nota e a justificativa. O sistema localizará o registro interno e comunicará o município.

Atenção:

Diferente da NF-e, o cancelamento de NFS-e nem sempre é instantâneo. Algumas prefeituras exigem análise de um fiscal ou não permitem cancelamento via API se a guia de ISS já tiver sido gerada.

Exemplo de Requisição (JSON)
{
  "numero": "2024",
  "justificativa": "Serviço não prestado devido a desacordo comercial"
}
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "mensagem": "Cancelamento efetuado com sucesso",
  "resposta": {
    "message": "Cancelamento em processamento"
  }
}

Tabela de Retornos

Status Mensagem / Erro Causa Provável
200 Cancelamento efetuado com sucesso O evento de cancelamento foi homologado pela SEFAZ.
400 Requisição inválida... JSON mal formatado ou vazio.
400 Token ou API Secret ausentes Credenciais não enviadas.
400 Campos obrigatórios faltando Falta numero ou justificativa.
400 A justificativa deve ter no mínimo 15 caracteres Texto muito curto.
400 Esta nota já consta como cancelada... Tentativa de cancelar uma nota que já está cancelada no sistema.
401 Token ou API Secret inválidos Credenciais incorretas.
404 Nota fiscal número X não encontrada... O número informado não existe para este cliente no banco.
404 Log de emissão não encontrado... Nota existe, mas não há registro do ID externo (inconsistência).
500 Erro na operação. O JSON de retorno da emissão está corrompido ou ilegível.
500 Falha de comunicação Erro interno ao tentar conectar com o servidor da SEFAZ.

Webhooks

Webhooks são notificações automáticas enviadas pela nossa API para o seu servidor sempre que um evento ocorre (ex: Nota Autorizada, Erro na SEFAZ).
Isso elimina a necessidade de seu sistema ficar consultando (polling) o status da nota repetidamente.

O que você vai receber?

Sempre que houver uma atualização no status da nota, faremos uma requisição na URL cadastrada enviando o seguinte JSON:

Exemplo enviado pela API (JSON)
{
  "id": "NFe_69319a5bcdcbe",
  "emissao": "04/12/2025",
  "status": "CONCLUIDO",
  "emitente": "07945469000142",
  "destinatario": "78656454500",
  "valor": 150.00,
  "numero": "1000013",
  "serie": "1",
  "dataAutorizacao": "04/12/2025",
  "mensagem": "Autorizado o uso da NF-e",
  "pdf": "JVBERi0xLjQKJ...", // Arquivo PDF em Base64
  "xml": "PD94bWwgdmVy..."  // Arquivo XML em Base64
}
GET {{URL_BASE}}/emissor/webhook/consultar/

Consultar Configuração

Verifica se há um Webhook configurado para a empresa vinculada às credenciais.

Headers Obrigatórios:

  • Token Seu token de acesso.
  • Api-Secret Sua chave secreta de validação.
  • Content-Type application/json
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "cliente": "07945469000142",
  "url": "https://seusistema.com.br/retorno-notas",
  "method": "POST"
}

Tabela de Retornos

Status Mensagem / Erro Causa Provável
200 sucesso Webhook encontrado e retornado.
400 Credenciais ausentes Headers Token e Api-Secret não enviados.
401 Credenciais inválidas Token ou Secret incorretos.
404 Nenhum webhook encontrado O cliente existe, mas ainda não cadastrou uma URL de retorno.
405 Apenas o método GET é permitido Você tentou usar POST, PUT ou DELETE neste endpoint.
POST {{URL_BASE}}/emissor/webhook/cadastrar/

Cadastrar Webhook

Registra a URL do seu sistema que receberá as notificações de mudança de status das notas.
Nota: É permitido apenas 1 webhook por conta.

Headers Obrigatórios:

  • Token Seu token de acesso.
  • Api-Secret Sua chave secreta de validação.
  • Content-Type application/json
Exemplo de Requisição (JSON)
{
  "url": "https://seusistema.com.br/callback",
  "method": "POST"
}
Resposta de Sucesso (201 Created)
{
  "status": "sucesso",
  "cliente": "07945469000142",
  "url": "https://seusistema.com.br/callback",
  "method": "POST"
}

Tabela de Retornos

Status Mensagem / Erro Causa Provável
201 sucesso Webhook cadastrado com sucesso.
400 O JSON deve conter: url e method Payload incompleto.
400 URL inválida A URL informada não está em um formato válido (http/https).
400 Método inválido... O método deve ser GET, POST, PUT ou PATCH.
401 Credenciais inválidas Token ou Secret incorretos.
409 Este cliente já possui um webhook... Conflito: Já existe um cadastro. Use o endpoint de Alterar.
500 Erro ao cadastrar webhook Falha interna na base de dados.
PUT {{URL_BASE}}/emissor/webhook/alterar/

Alterar Webhook

Atualiza a URL ou o método de envio de um webhook já existente.
Caso o webhook não exista, utilize o endpoint de cadastro (POST).

Headers Obrigatórios:

  • Token Seu token de acesso.
  • Api-Secret Sua chave secreta de validação.
  • Content-Type application/json
Exemplo de Requisição (JSON)
{
  "url": "https://nova-url.com.br/callback",
  "method": "POST"
}
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "cliente": "07945469000142",
  "url": "https://nova-url.com.br/callback",
  "method": "POST"
}

Tabela de Retornos

Status Mensagem / Erro Causa Provável
200 sucesso Webhook atualizado com sucesso.
400 Campos obrigatórios: url, method Dados de atualização incompletos ou inválidos.
400 Credenciais ausentes... Faltou enviar token ou api_secret.
401 Credenciais inválidas Token ou API Secret incorretos.
404 Este cliente não possui webhook... Tentativa de alterar um registro inexistente. Use o POST para criar.
405 Apenas PUT é permitido Você tentou usar POST ou GET neste endpoint.
500 Erro ao atualizar webhook Falha interna na base de dados.
DELETE {{URL_BASE}}/emissor/webhook/remover/

Remover Webhook

Exclui a configuração de webhook da sua conta. Você parará de receber notificações instantâneas sobre as notas.

Headers Obrigatórios:

  • Token Seu token de acesso.
  • Api-Secret Sua chave secreta de validação.
  • Content-Type application/json
Resposta de Sucesso (200 OK)
{
  "status": "sucesso",
  "cliente": "07945469000142",
  "mensagem": "Webhook removido com sucesso."
}

Tabela de Retornos

Status Mensagem / Erro Causa Provável
200 sucesso Webhook removido com sucesso.
400 Token e Api-Secret são obrigatórios Credenciais não enviadas.
401 Credenciais inválidas Token ou Secret incorretos.
404 Este cliente não possui webhook... Tentativa de remover algo que não existe.
405 Método não permitido Você tentou usar GET ou POST em vez de DELETE.
500 Erro ao remover webhook Falha interna na base de dados.