apinotas
Começar

Documentacao da API

Integracao REST completa para emissao de NF-e e NFC-e

Comeccar Rapido

1. Autenticacao

Obtenha sua chave de API e configure o header de autenticacao.

Saiba mais →

2. Configurar Serie

Configure suas series de NF-e e NFC-e no painel administrativo.

Saiba mais →

3. Fazer Requisições

Integre os endpoints da API em sua aplicacao.

Saiba mais →

Autenticacao

Header Personalizado: x-api-key

Todas as requisicoes devem incluir sua chave de API no header personalizado:

x-api-key: YOUR_API_KEY

Exemplo com cURL:

curl -X POST https://api.apinotas.com.br/api/nfe \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{...}'

Ambientes

A API funciona em dois ambientes baseados no status da sua conta:

Homologacao

Use para testes e validacoes antes de ir para producao.

URL: https://api.apinotas.com.br

Producao

Use para emitir notas fiscais com valor fiscal real.

URL: https://api.apinotas.com.br

Seguranca

Nunca compartilhe sua chave de API. Se comprometida, regenere-a imediatamente no painel administrativo. Use HTTPS em todas as requisicoes.

Configuracao de Series

Antes de emitir notas fiscais, configure suas series no painel administrativo:

  1. 1
    Acesse o Painel Admin

    Faca login em /admin/dashboard

  2. 2
    Va para Series

    Navegue ate a secao de Series

  3. 3
    Crie uma Nova Serie

    Configure tipo (NF-e/NFC-e), modelo e numero inicial

  4. 4
    Adicione Certificado

    Faca upload do certificado digital (A1 ou A3)

Endpoints da API

💡 Dica: Clique em qualquer endpoint para expandir e ver os detalhes completos da requisição, parâmetros e respostas.

Endpoints NF-e (Nota Fiscal Eletronica)

Exemplos de Integracao

PHP (Laravel)

$client = new \GuzzleHttp\Client(); $response = $client->post( 'https://api.apinotas.com.br/api/nfe', [ 'headers' => [ 'x-api-key' => 'YOUR_API_KEY', 'Content-Type' => 'application/json', ], 'json' => [ 'serie' => '1', 'idIntegracao' => 'PED-001', 'natureza' => 'VENDA', 'itens' => [ [ 'descricao' => 'Produto Teste', 'ncm' => '12345678', 'quantidade' => 1, 'valor' => 100.00 ] ], 'pagamentos' => [ [ 'tipo' => '01', 'valor' => 100.00 ] ] ] ] ); $data = json_decode($response->getBody());

JavaScript (Node.js)

const axios = require('axios'); const response = await axios.post( 'https://api.apinotas.com.br/api/nfe', { serie: '1', idIntegracao: 'PED-001', natureza: 'VENDA', itens: [ { descricao: 'Produto Teste', ncm: '12345678', quantidade: 1, valor: 100.00 } ], pagamentos: [ { tipo: '01', valor: 100.00 } ] }, { headers: { 'x-api-key': 'YOUR_API_KEY', 'Content-Type': 'application/json' } } ); console.log(response.data);

Python

import requests headers = { 'x-api-key': 'YOUR_API_KEY', 'Content-Type': 'application/json' } data = { 'serie': '1', 'idIntegracao': 'PED-001', 'natureza': 'VENDA', 'itens': [ { 'descricao': 'Produto Teste', 'ncm': '12345678', 'quantidade': 1, 'valor': 100.00 } ], 'pagamentos': [ { 'tipo': '01', 'valor': 100.00 } ] } response = requests.post( 'https://api.apinotas.com.br/api/nfe', json=data, headers=headers ) print(response.json())

cURL

curl -X POST \ https://api.apinotas.com.br/api/nfe \ -H 'x-api-key: YOUR_API_KEY' \ -H 'Content-Type: application/json' \ -d '{ "serie": "1", "idIntegracao": "PED-001", "natureza": "VENDA", "itens": [ { "descricao": "Produto Teste", "ncm": "12345678", "quantidade": 1, "valor": 100.00 } ], "pagamentos": [ { "tipo": "01", "valor": 100.00 } ] }'

Codigos de Status HTTP

200 OK

Requisicao bem-sucedida

202 Accepted

Nota em processamento (emissao assincrona)

400 Bad Request

Dados invalidos ou incompletos

401 Unauthorized

Chave de API invalida ou expirada

404 Not Found

Recurso nao encontrado

429 Too Many Requests

Limite de requisicoes excedido

Precisa de Ajuda?

Nossa equipe de suporte esta disponivel 24/7 para ajudar com sua integracao