> ## Documentation Index
> Fetch the complete documentation index at: https://docs.engineapi.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Resolver serviço padrão

> POST /v1/fiscal/resolve-servico-padrao: sugestões de LC116/cTribNac a partir do CNAE, consultivo e sem garantia.

`POST /v1/fiscal/resolve-servico-padrao` devolve **sugestões** de atividade de
serviço (item da LC 116 + Código de Tributação Nacional do Padrão Nacional
NFS-e) a partir do CNAE do emissor, pensado para o onboarding de MEI, onde o
CNAE já é conhecido (consulta de CNPJ) mas `servicoPadraoLc116`/`cTribNacPadrao`
ainda não foram cadastrados.

* **Consultivo, nunca automático**: só sugere. Quem decide e confirma é o cliente; o endpoint NUNCA escreve no cadastro do emissor.
* **Fonte oficial por linha**: tabela curada citando o Anexo XI da CGSN 140/2018 e a tabela oficial de cTribNac, sem heurística.
* **Cobertura parcial e honesta**: CNAE sem sugestão pronta retorna 200 com `sugestoes: []` e mensagem orientando o cadastro manual.

<Warning>
  Este endpoint **não substitui a revisão do seu contador** e **nunca** altera o cadastro do
  emissor. `garantia` é sempre `false`, a confirmação final é sempre do cliente.
</Warning>

<Info>
  **Quais campos enviar?** A lista completa (todos os parâmetros, tipos e
  obrigatoriedade, gerada direto do contrato real) está no
  [**Catálogo de campos: resolve-servico-padrao**](/api-reference/campos-fiscal-resolve-servico-padrao).
</Info>

## Como chamar

Envie **exatamente um** dos dois: `cnae` direto, ou `issuerId` (o endpoint lê `Issuer.cnae`
do cadastro).

```json theme={null}
POST /v1/fiscal/resolve-servico-padrao
{
  "cnae": "9602-5/01"
}
```

ou

```json theme={null}
POST /v1/fiscal/resolve-servico-padrao
{
  "issuerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
```

`cnae` aceita qualquer máscara (`"9602-5/01"`, `"9602501"`, ...), é normalizado antes da
consulta.

## Resposta: CNAE com cobertura

```json theme={null}
{
  "data": {
    "sugestoes": [
      {
        "lc116": "06.01",
        "cTribNac": "060101",
        "descricao": "Barbearia, cabeleireiro(a), manicure e pedicure",
        "confidence": 0.85,
        "deterministico": true
      }
    ],
    "garantia": false,
    "mensagemUsuario": "Encontramos sugestão(ões) de atividade de serviço para o CNAE informado. Confirme a que mais combina com o que você faz. Isso não substitui a revisão do seu contador."
  },
  "meta": { "requestId": "req_abc123", "timestamp": "2026-07-16T18:00:00.000Z" }
}
```

* `confidence` reflete a curadoria (nunca `1.0`), não é probabilidade estatística.
* `deterministico: true` significa que o item da LC 116 tem um único código de tributação
  nacional possível na tabela oficial. `false` significa que a curadoria escolheu entre 2+
  códigos oficiais possíveis para o mesmo item, informação para o seu fluxo de confirmação,
  **não** um sinal para preencher sozinho.

## Resposta: CNAE sem cobertura (honesto, não é erro)

A tabela curada é **parcial por decisão de produto** (cobre as ocupações MEI de serviço mais
comuns). CNAE fora da cobertura **não é erro**: resposta `200` com lista vazia:

```json theme={null}
{
  "data": {
    "sugestoes": [],
    "garantia": false,
    "mensagemUsuario": "Ainda não temos sugestão pronta para este CNAE. Cadastre manualmente a atividade de serviço (item da LC 116) e o código de tributação nacional, ou fale com seu contador."
  },
  "meta": { "requestId": "req_abc123", "timestamp": "2026-07-16T18:00:00.000Z" }
}
```

## Com `issuerId`: isolamento e cadastro incompleto

* `issuerId` de um emissor **de outro parceiro** (ou inexistente) retorna **404**: o endpoint nunca
  revela se o `issuerId` existe para outra conta.
* `issuerId` de um emissor **seu**, mas **sem CNAE cadastrado** retorna **422** RFC 7807, acionável:

```json theme={null}
{
  "error": {
    "type": "https://engineapi.com.br/errors/CNAE_NAO_CADASTRADO",
    "title": "Entidade Não Processável",
    "status": 422,
    "detail": "Emissor sem CNAE cadastrado. Cadastre o CNAE da empresa (Companies/dashboard) ou informe { cnae } diretamente nesta chamada.",
    "instance": "/v1/fiscal/resolve-servico-padrao",
    "requestId": "req_abc123",
    "timestamp": "2026-07-16T18:00:00.000Z"
  }
}
```

## O que fazer com a sugestão

O fluxo recomendado (ex.: onboarding de parceiro) é: o parceiro chama este endpoint, exibe a
`descricao` em linguagem natural para o cliente confirmar, e só então grava
`servicoPadraoLc116`/`cTribNacPadrao` no cadastro do emissor (via `PATCH` de companies), como
dados opacos, exatamente como o cliente confirmou. Auto-preenchimento sem confirmação humana
não existe nesta versão do endpoint.

Contratos completos de NFS-e (onde `servicoPadraoLc116`/`cTribNacPadrao` são consumidos na
emissão assistida): [Guia NFS-e](/guides/nfse), [Cérebro Fiscal](/guides/cerebro-fiscal).
