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

# Prestador e Certificado

> Quem emite a NFS-e e o Certificado A1 que assina cada DPS.

## Prestador

O **Prestador** é a pessoa jurídica (CNPJ) que presta o serviço e emite a NFS-e. Uma Conta pode ter vários
Prestadores; é assim que um integrador emite para vários clientes.

* **Cada CNPJ existe uma única vez no NotasX.** Cadastrar um CNPJ que já existe responde
  `409 cnpj_ja_cadastrado`.
* O Prestador guarda o que a DPS precisa: município (código IBGE), inscrição municipal (se houver) e a
  situação no Simples Nacional (`op_simp_nac`).
* Ele começa em **homologação** e **inativo**. Fica `ativo: true` quando recebe um Certificado válido do
  próprio CNPJ.

## Certificado A1

O **Certificado** é o e-CNPJ A1 do Prestador (arquivo `.pfx` ou `.p12`). Ele assina cada DPS e autentica o
NotasX na Sefin. Envie com `POST /v1/prestadores/{id}/certificado` (`multipart/form-data`, campos
`arquivo` e `senha`).

O NotasX confere, nesta ordem:

| Verificação | Se falhar |
| - | - |
| Arquivo até 1 MB | `413 arquivo_grande` |
| O `.pfx` abre com a senha | `422 certificado_invalido` |
| O CNPJ do Certificado é o do Prestador | `422 cnpj_divergente` |
| O Certificado não está vencido | `422 certificado_vencido` |

O CNPJ é lido do campo padrão da ICP-Brasil para e-CNPJ (OID `2.16.76.1.3.3`) ou, na falta dele, do nome do
titular no formato `RAZAO SOCIAL:CNPJ`.

**Um Certificado ativo por vez.** Enviar outro substitui o anterior. Faça isso antes do vencimento: com o
Certificado vencido, as Notas viram `falhou` por impedimento. `certificado_valido_ate`, em
`GET /v1/prestadores/{id}`, mostra a data.

## Segurança

* O `.pfx` fica num armazenamento privado, sem acesso público, usado só pelos serviços internos do NotasX.
* A senha é guardada cifrada (AES-256-GCM) e **nunca é devolvida** pela API.
* O Certificado não sai do NotasX: só a DPS assinada e a conexão mTLS com a Sefin o usam.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.