Emissão em Lote

O endpoint POST /emitir/batch permite enviar múltiplas NFS-e em uma única chamada. O processamento é completamente assíncrono — cada item é enfileirado independentemente e você acompanha o progresso via batchId.

Fluxo Assíncrono

1

POST /emitir/batch

Envia array de notas → recebe batchId imediatamente (202)

2

Processamento paralelo

Cada item é processado por workers independentes

3

Polling ou Webhook

Acompanhe via GET /invoices/batch/{batchId}/status ou evento batch.completed

Chamada

curl -X POST https://platform.notaas.com.br/api/v1/emitir/batch \
  -H "Content-Type: application/json" \
  -H "x-api-key: ntaas_XXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
  -d '{
    "items": [
      {
        "tomador": { "nome": "Cliente A", "cnpj": "11111111000111" },
        "servico": { "codigo": "1.07", "descricao": "Dev de software" },
        "valores": { "total": 1000.00, "aliquotaIss": 2.0 }
      },
      {
        "tomador": { "nome": "Cliente B", "cnpj": "22222222000122" },
        "servico": { "codigo": "1.07", "descricao": "Consultoria técnica" },
        "valores": { "total": 2500.00, "aliquotaIss": 2.0 }
      }
    ]
  }'

// Resposta: 202 Accepted

{
  "batchId": "bat_xyz456",
  "queued": 2,
  "status": "processing"
}

Polling de Status

curl https://platform.notaas.com.br/api/v1/invoices/batch/bat_xyz456/status \
  -H "x-api-key: ntaas_XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
{
  "batchId": "bat_xyz456",
  "status": "completed",
  "total": 2,
  "processed": 2,
  "issued": 2,
  "errors": 0,
  "items": [
    { "invoiceId": "inv_001", "status": "issued", "chNFSe": "4321..." },
    { "invoiceId": "inv_002", "status": "issued", "chNFSe": "4322..." }
  ]
}

Status possíveis do lote

CampoTipoReq?Descrição
processingstringnãoLote em processamento (ainda há itens na fila)
completedstringnãoTodos os itens processados (sem erros)
partialstringnãoTodos processados, mas alguns com erro
failedstringnãoTodos os itens falharam

Limites

Máximo de itens por lote100
Cada item consome créditos do seu planoSim
Rate limit por API key (reqs/min)Configurável

Configure o webhook batch.completed para ser notificado quando todo o lote finalizar. Ver Webhooks →