Integre seu sistema com nossa API REST profissional.
Detecta automaticamente NFe/CTe e retorna PDF em Base64
Ideal para ERPs, aplicações mobile e microserviços.
Não precisa especificar se é NFe ou CTe. Nossa API identifica automaticamente o tipo de documento e aplica o processamento correto.
Retorna o PDF completo codificado em Base64, perfeito para integração com sistemas, apps mobile e microserviços.
Processamento otimizado: NFe em ~1-2s, CTe em ~0.6-1s. Inclui metadados completos e tempo de processamento.
Para NFe, validamos no servidor oficial. Se indisponível, continua processamento. CTe é processado diretamente.
Padrão REST com responses JSON estruturadas, códigos HTTP corretos e headers customizados para otimização.
Rastreamento completo de operações, métricas de performance e debugging avançado para máxima confiabilidade.
Função: Detecta automaticamente se o XML é NFe ou CTe e retorna o PDF correspondente em Base64.
Parâmetro | Tipo | Obrigatório | Descrição |
---|---|---|---|
codigo_xml |
string | Sim | Conteúdo XML completo da NFe ou CTe |
POST https://consultadanfe.com/CDanfe/api_generate
Use esta URL em suas requisições HTTP POST
Quick Start: Exemplos concisos para integração rápida e direta.
Essencial: Apenas o código necessário para consumir a API.
Prático: Substitua 'SEU_XML_COMPLETO_AQUI' pelo seu XML real.
# Exemplo básico cURL - Geração de DANFE via API
curl -X POST "https://consultadanfe.com/CDanfe/api_generate" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json" \
-d "codigo_xml=SEU_XML_COMPLETO_AQUI"
# Resposta JSON esperada:
# {
# "status": "success",
# "pdf": {
# "base64": "JVBERi0xLjQKMSAwIG9iago8P...",
# "filename": "danfe_12345.pdf"
# },
# "processing_time": "1.2s"
# }
<?php
// Exemplo básico PHP - Geração de DANFE via API
$xmlContent = 'SEU_XML_COMPLETO_AQUI';
$apiUrl = 'https://consultadanfe.com/CDanfe/api_generate';
// Fazer requisição cURL
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => $apiUrl,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => http_build_query(['codigo_xml' => $xmlContent]),
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/x-www-form-urlencoded']
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
// Processar resposta
if ($httpCode === 200) {
$data = json_decode($response, true);
if ($data['status'] === 'success') {
$pdfBinary = base64_decode($data['pdf']['base64']);
file_put_contents($data['pdf']['filename'], $pdfBinary);
echo "PDF salvo: " . $data['pdf']['filename'];
}
} else {
echo "Erro na requisição: HTTP $httpCode";
}
?>
// Exemplo básico JavaScript - Geração de DANFE via API
const xmlContent = 'SEU_XML_COMPLETO_AQUI';
const apiUrl = 'https://consultadanfe.com/CDanfe/api_generate';
// Fazer requisição fetch
const formData = new URLSearchParams();
formData.append('codigo_xml', xmlContent);
fetch(apiUrl, {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Accept': 'application/json'
},
body: formData
})
.then(response => response.json())
.then(data => {
if (data.status === 'success') {
// Decodificar Base64 e fazer download
const byteCharacters = atob(data.pdf.base64);
const byteNumbers = new Array(byteCharacters.length);
for (let i = 0; i < byteCharacters.length; i++) {
byteNumbers[i] = byteCharacters.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
const blob = new Blob([byteArray], { type: 'application/pdf' });
// Fazer download automático
const url = URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = url;
a.download = data.pdf.filename;
a.click();
}
})
.catch(error => { /* Erro tratado */ });
# Exemplo básico Python - Geração de DANFE via API
import requests
import base64
xml_content = 'SEU_XML_COMPLETO_AQUI'
api_url = 'https://consultadanfe.com/CDanfe/api_generate'
# Fazer requisição POST
response = requests.post(
api_url,
data={'codigo_xml': xml_content},
headers={'Content-Type': 'application/x-www-form-urlencoded'}
)
# Processar resposta
if response.status_code == 200:
data = response.json()
if data['status'] == 'success':
# Decodificar Base64 e salvar PDF
pdf_binary = base64.b64decode(data['pdf']['base64'])
with open(data['pdf']['filename'], 'wb') as f:
f.write(pdf_binary)
print(f"✅ PDF salvo: {data['pdf']['filename']}")
else:
print(f"❌ Erro da API: {data.get('message')}")
else:
print(f"❌ Erro HTTP: {response.status_code}")