---
title: "Primeira integração — NFS-e Inbound"
description: "Ative a captura automática de NFS-e do padrão nacional para o CNPJ da sua empresa e consulte o primeiro documento recebido via API."
source_url: https://nfe.io/docs/distribuicao-nfse-inbound-primeira-integracao/
last_updated: 2026-07-30
---

# Primeira integração — NFS-e Inbound

> Você vai **habilitar** a captura automática de NFS-e do padrão nacional para o CNPJ da sua empresa e consultar o primeiro documento recebido via API.

:::warning Pré-condição
**Sem empresa cadastrada + certificado digital válido, o serviço não é ativado.** Conclua a cadência **conta → empresa → certificado** antes — veja [Conta → Empresa → Ativação](../../comum/modelo-conta-empresa.md).
:::

## Pré-requisitos

- Conta NFE.io com a empresa (CNPJ) cadastrada **e certificado digital enviado**.
- **API Key** com papel `Nota Fiscal` ou `NFSeDist` (header `Authorization`, sem prefixo) — veja [Autenticação](../../comum/autenticacao.md).
- Cliente HTTP (cURL, Postman ou SDK).
- Endpoint HTTPS público para webhook — opcional, recomendado.

## Fluxo

```mermaid
flowchart LR
    A[1. Habilitar inbound] --> B[2. NFE.io faz polling ADN ~30s]
    B --> C[3. Webhook chega]
    C --> D[4. Consultar/baixar XML]
```

```bash
export NFEIO_API_KEY="<sua-chave>"
export COMPANY_ID="<id-da-empresa>"
```

## Passo 1 — Habilitar a captura de NFS-e

`POST /v2/companies/inbound/nfse` informando `companyId`, `initialNsu` (use `0`) e o `webhookUrl`.

```bash
curl -X POST "https://api.nfse.io/v2/companies/inbound/nfse" \
  -H "Authorization: $NFEIO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "companyId": "'$COMPANY_ID'",
    "initialNsu": 0,
    "webhookUrl": "https://meu-sistema.com/webhook/nfse",
    "isAutomaticManifestationEnabled": false
  }'
```

Resposta esperada: HTTP `201 Created` com o objeto da empresa (`isActive: true`).

## Passo 2 — Receber e consultar o primeiro documento

A NFE.io passa a fazer polling no ADN a cada ~30 s. Ao capturar a primeira NFS-e, envia POST ao seu `webhookUrl` com `eventName: inbound.serviceInvoice.received`. Para confirmar via API:

```bash
curl "https://api.nfse.io/v2/companies/$COMPANY_ID/inbound/nfse?pageCount=10" \
  -H "Authorization: $NFEIO_API_KEY"
```

A resposta lista os documentos (`documents[]`) com `nsu`, `accessKey` (50 dígitos), `provider`, `borrower`, `servicesAmount`, `status`. Baixe o XML via `GET .../inbound/nfse/{id}/xml` — retorna `302` para uma URL assinada (HMAC-SHA256, ~30 min).

## Próximos passos

- [Integração via REST](../how-to/integracao-rest.md) — filtros, paginação, downloads e manifestação
- [Catálogo de eventos do webhook](../reference/webhook-events.md)

## Veja também

- [Onboarding do zero](./onboarding-do-zero.md) · [Quickstart](../00-quickstart.md)
