Você criou sua conta na plataforma Notaas, gerou seu token de API e concluiu o upload do certificado digital A1 (.pfx). Agora vem a pergunta prática: como disparar a primeira requisição e obter o DANFE autorizado em menos de 5 minutos?
Na maioria dos sistemas tradicionais ou prefeituras municipais, a primeira emissão é travada por dezenas de tabelas de alíquotas incompreensíveis, validações síncronas com timeout de SOAP e assinaturas XML complexas.
Na Notaas, a arquitetura foi desenhada para eliminar o atrito: você faz um POST com payload JSON enxuto e recebe instantaneamente o identificador da nota, enquanto nossa fila assíncrona cuida da mensageria, assinatura criptográfica e autorização.
⚡ Fluxo de Integração e Autorização:
- 1. Requisição: Aplicação dispara payload JSON para
POST /api/v1/emitircom headerX-API-Key.- 2. Notaas Engine: Valida schema, seleciona o certificado A1 da organização e assina digitalmente.
- 3. Autorização: O motor conecta à SEFAZ ou ao provedor municipal (entre as 4.782 cidades ativas).
- 4. Webhook & DANFE: Sua URL recebe evento
nfse.issuedcom links diretos de XML e DANFE PDF v2.0 local.
🛠️ Pré-requisitos Básicos
- Conta Ativa no Notaas: Se ainda não possui, crie em platform.notaas.com.br/sign-up (você tem 50 notas gratuitas por mês por CNPJ em produção).
- Certificado Digital A1: Arquivo
.pfxou.p12já importado no painel da plataforma em Configurações > Certificado Digital. - Chave de API (
X-API-Key): Copiada da aba API Keys no painel (formatosk_live_...para produção ousk_test_...para sandbox).
💻 1. Emissão via cURL (Teste Imediato no Terminal)
Se você quer testar agora mesmo direto no terminal bash, use o comando abaixo substituindo sua chave e CNPJ:
curl -X POST https://platform.notaas.com.br/api/v1/emitir \
-H "Content-Type: application/json" \
-H "X-API-Key: sk_live_SEU_TOKEN_AQUI" \
-d '{
"tipo": "nfse",
"ambiente": "producao",
"referencia": "pedido_quickstart_001",
"prestador": {
"cnpj": "00000000000191"
},
"tomador": {
"cpfCnpj": "00000000191",
"razaoSocial": "Cliente Teste SA",
"email": "cliente@exemplo.com.br"
},
"servico": {
"discriminacao": "Consultoria em desenvolvimento de software e integracao de APIs",
"codigoTributacaoMunicipio": "010701",
"valorServicos": 150.00,
"aliquota": 2.0
}
}'
Resposta Imediata da Notaas (HTTP 200 OK):
{
"id": "inv_a83f912cde",
"status": "processing",
"tipo": "nfse",
"referencia": "pedido_quickstart_001",
"createdAt": "2026-09-19T12:00:00.000Z",
"mensagem": "Nota fiscal enfileirada com sucesso para autorização."
}
🚀 2. Implementação em Node.js / TypeScript
Para integrar no seu backend (NestJS, Express, Next.js Server Actions ou microserviços), utilize a função modular abaixo:
// src/services/notaas.ts
interface EmissaoNFSePayload {
referencia: string;
cnpjPrestador: string;
tomador: {
cpfCnpj: string;
razaoSocial: string;
email: string;
};
discriminacao: string;
valorServicos: number;
}
export async function emitirPrimeiraNota(dados: EmissaoNFSePayload) {
const response = await fetch("https://platform.notaas.com.br/api/v1/emitir", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-API-Key": process.env.NOTAAS_API_KEY!,
},
body: JSON.stringify({
tipo: "nfse",
ambiente: process.env.NODE_ENV === "production" ? "producao" : "homologacao",
referencia: dados.referencia,
prestador: {
cnpj: dados.cnpjPrestador,
},
tomador: dados.tomador,
servico: {
discriminacao: dados.discriminacao,
codigoTributacaoMunicipio: "010701",
valorServicos: dados.valorServicos,
aliquota: 2.0,
},
}),
});
if (!response.ok) {
const errorData = await response.json();
throw new Error(`Falha na emissão Notaas: ${JSON.stringify(errorData)}`);
}
return await response.json();
}
🐍 3. Implementação em Python (FastAPI / Django)
Se seu stack for Python, basta utilizar a biblioteca requests ou httpx:
import os
import requests
def emitir_nota_fiscal(referencia: str, valor: float, tomador_documento: str, tomador_nome: str):
url = "https://platform.notaas.com.br/api/v1/emitir"
headers = {
"Content-Type": "application/json",
"X-API-Key": os.getenv("NOTAAS_API_KEY")
}
payload = {
"tipo": "nfse",
"ambiente": "producao",
"referencia": referencia,
"prestador": {
"cnpj": os.getenv("NOTAAS_EMISSOR_CNPJ")
},
"tomador": {
"cpfCnpj": tomador_documento,
"razaoSocial": tomador_nome
},
"servico": {
"discriminacao": "Licenciamento de software como servico (SaaS)",
"codigoTributacaoMunicipio": "010701",
"valorServicos": valor,
"aliquota": 2.0
}
}
response = requests.post(url, json=payload, headers=headers, timeout=10)
response.raise_for_status()
return response.json()
🔔 4. Recebendo o DANFE em PDF e XML via Webhook
Como a comunicação com a prefeitura ou SEFAZ é assíncrona, a Notaas dispara um webhook para a sua aplicação assim que a nota é autorizada. O webhook já entrega a URL do DANFSe v2.0 em PDF gerado localmente e o XML assinado:
{
"event": "nfse.issued",
"id": "inv_a83f912cde",
"data": {
"numeroNota": "202600000412",
"codigoVerificacao": "AB72-99C1",
"chaveAcesso": "35260900000000000191550010000004121000004128",
"xmlUrl": "https://storage.notaas.com.br/xml/inv_a83f912cde.xml",
"pdfUrl": "https://storage.notaas.com.br/pdf/inv_a83f912cde.pdf",
"emitidaEm": "2026-09-19T12:00:04.218Z"
}
}
💡 Vantagem Notaas: O link do PDF (
pdfUrl) é gerado localmente em menos de 100ms pelo nosso renderizador NT-008 nativo. Seu cliente nunca enfrentará tela em branco ou timeout do portal público ADN da Receita.
🤖 Bônus: Prompt Pronto para Cursor / Lovable / v0 (Vibe Coding)
Se você está construindo sua aplicação com ferramentas de IA generativa, copie e cole o seguinte prompt no Cursor ou Lovable:
Crie um serviço de emissão fiscal integrado à API da Notaas (https://platform.notaas.com.br).
1. Crie uma função emitirNota(pedidoId, cliente, valor) que faça um POST para https://platform.notaas.com.br/api/v1/emitir com header X-API-Key obtido de process.env.NOTAAS_API_KEY.
2. Salve no banco de dados o retorno com status 'processing' e o id da nota.
3. Crie um endpoint de Webhook POST /api/webhooks/notaas que valide o header X-Notaas-Signature com HMAC-SHA256 usando process.env.NOTAAS_WEBHOOK_SECRET e, quando o evento 'nfse.issued' chegar, atualize o status para 'issued' e salve os links de pdfUrl e xmlUrl.
❓ Dúvidas Frequentes no Primeiro Envio
Preciso pagar alguma taxa antes de emitir a primeira nota?
Não. A Notaas disponibiliza 50 notas fiscais gratuitas por mês por CNPJ com todas as funcionalidades ativas em produção real. Você só é cobrado caso ultrapasse essa cota mensal.
Quanto tempo leva para a nota passar de processing para issued?
Na maioria das cidades e na SEFAZ, o processamento leva entre 1 a 4 segundos. Em prefeituras com instabilidade temporária, nossa fila inteligente realiza retries exponenciais automáticos sem duplicar a numeração.
Como funciona para múltiplos clientes PJ (Escritórios / Multi-Tenant)?
Você pode utilizar a Org API (POST /api/v1/org/projects) para cadastrar novos CNPJs programaticamente, cada um com suas próprias credenciais e certificados isolados.
🚀 Pronto para a sua Primeira Nota?
Se você já realizou o upload do seu certificado A1, basta pegar sua API Key e fazer seu primeiro envio:
👉 Acessar Painel da Notaas & Gerar API Key
👉 Consultar Documentação Completa da API

