---
title: "Códigos de erro - Amplia Reg"
description: "Códigos de erro retornados pela API do Amplia Reg com HTTP 422 e ErrorModel, agrupados por tema, como dados do pedido e documentos do titular."
canonical: "https://docs.lacunasoftware.com/articles/amplia-reg/integration/error-codes"
locale: "pt-BR"
product: "Amplia Reg"
last_updated: "2026-10-08"
---

# Códigos de erro - Amplia Reg

Quando uma chamada à API do [Amplia Reg](https://docs.lacunasoftware.com/articles/amplia-reg) falha por causa da forma como foi feita, por exemplo por falta de um campo ou porque
o pedido está no status errado, a API responde com o código HTTP 422 (Unprocessable Entity) e um `ErrorModel` no corpo. Em .NET, a client
lib lança uma `AmpliaRegException`. Nos dois casos, o código de erro identifica o problema. Veja
[Códigos de resposta HTTP](https://docs.lacunasoftware.com/articles/amplia-reg/integration/get-started#http-status-codes) para o formato.

```json
{
	"code": "OrderNotFound",
	"message": "Order not found"
}
```

Use o campo `code` para decidir o que fazer. O campo `message` ajuda a diagnosticar o problema e deve ser registrado em log, e não
mostrado ao usuário: ele está sempre em inglês e o texto pode mudar.

As tabelas abaixo listam os códigos que você tem mais chance de receber ao chamar as APIs descritas neste Guia de Integração, agrupados
por assunto.

## Autoridade de registro

| Código | Quando acontece |
|---|---|
| `RegistrationAuthorityRequired` | A requisição de criação de pedido não indicou em qual autoridade de registro criar o pedido: envie `registrationAuthority` no corpo |
| `RegistrationAuthorityNotFound` | A autoridade de registro informada na requisição não existe |
| `SubscriptionRequired` | A requisição precisa de uma autoridade de registro no header `X-Subscription`, como na [criação de pedidos pré-aprovados](https://docs.lacunasoftware.com/articles/amplia-reg/integration/preapproved-orders), e nenhuma foi enviada |
| `NormalSubscriptionRequired` | O header `X-Subscription` indicou a assinatura raiz em vez de uma autoridade de registro |
| `CertificationAuthorityMismatch` | O tipo de certificado pertence a uma autoridade certificadora diferente da autoridade de registro |

## Tipo de certificado e tipo de titular

| Código | Quando acontece |
|---|---|
| `CertificateTypeNotFound` | Não existe tipo de certificado com o `code` ou o `id` informado na autoridade certificadora |
| `BadCertificateTypeReference` | `certificateType` não tem `code` nem `id` |
| `CertificateTypeDisabled` | O tipo de certificado está desabilitado |
| `CertificateFormatMismatch` | O tipo de certificado é de um formato diferente da rota chamada, por exemplo um tipo de certificado SSL em `/api/brazil/orders` |
| `HolderTypeNotFound` | Não existe tipo de titular com o `code` ou o `id` informado |
| `BadHolderTypeReference` | `holderType` não tem `code` nem `id` |
| `HolderTypeDisabled` | O tipo de titular está desabilitado |
| `HolderTypeNotAllowed` | O tipo de certificado não aceita o tipo de titular informado, ou não aceita tipos de titular |
| `HolderTypeIsRequired` | O tipo de certificado aceita mais de um tipo de titular e `holderType` não foi informado |
| `InvalidValidityOption` | O tipo de certificado não oferece a validade informada |
| `ValidityIsRequired` | O tipo de certificado tem mais de uma opção de validade e `validity` não foi informada |

## Dados do pedido

| Código | Quando acontece |
|---|---|
| `InvalidParams` | Falta um campo obrigatório do titular. Em um certificado de pessoa jurídica do padrão ICP-Brasil (e-CNPJ): `organizationName` ou `cnpj` |
| `CustomNumberNotAllowed` | `number` foi enviado, mas a instância não permite números de pedido personalizados |
| `OrderNumberAlreadyExists` | Outro pedido já tem o `number` informado |
| `SaleNumberNotAllowed` | `saleNumber` foi enviado, mas a instância não usa número de venda |
| `SaleNumberIsRequired` | A instância exige `saleNumber` e ele não foi enviado |
| `PrimaryEmailInUseForAnotherPerson`, `AlternativeEmailInUseForAnotherPerson`, `BothEmailsInUseForAnotherPerson` | A instância permite só uma pessoa por endereço de e-mail, e um e-mail de `contact` já pertence a outro titular |
| `SelfOperationDenied` | A instância não permite que agentes atuem nos próprios pedidos, e o titular é o usuário que fez a chamada |
| `OrderCreationDisabled` | A instância não permite que usuários criem pedidos. Aplicações não são afetadas |
| `InvalidCsr` | Não foi possível decodificar a CSR enviada |

## Tipo de emissão

| Código | Quando acontece |
|---|---|
| `InvalidIssueType` | `issueType` é `PreApproved`. Pedidos pré-aprovados têm API própria: veja [Criação de pedidos pré-aprovados](https://docs.lacunasoftware.com/articles/amplia-reg/integration/preapproved-orders) |
| `CertificateTypeDoesNotAllowVideoConference` | `issueType` é `VideoConference`, mas o tipo de certificado não permite videoconferência |
| `CertificateTypeDoesNotAllowVideoIdentification` | `issueType` é `VideoIdentification`, mas o tipo de certificado não permite vídeo identificação |
| `VideoConferenceDisabled` | A videoconferência ou a vídeo identificação não está configurada na instância |
| `IssueTypeDoesNotAllowStartValidation` | `startValidation` foi pedido para um tipo de emissão que não permite isso |

## Verificações da ICP-Brasil

| Código | Quando acontece |
|---|---|
| `RfbQueryNotApproved` | A instância faz a [consulta prévia RFB](https://docs.lacunasoftware.com/articles/amplia-reg/integration/create-order#consulta-prévia-rfb) na criação do pedido, e a consulta não aprovou os dados do titular. A mensagem traz o motivo devolvido pela consulta |
| `RfbQueryNameMismatch` | O nome no pedido é diferente do nome devolvido pela consulta RFB. Use o nome devolvido pela consulta |
| `RfbQueryOrganizationNameMismatch` | A razão social no pedido é diferente da devolvida pela consulta RFB. Use a razão social devolvida pela consulta |
| `RfbQueryIsDisabled` | A API de consulta prévia RFB foi chamada, mas a consulta RFB não está configurada na instância |
| `PSBioDisabled` | A [consulta de cadastro biométrico](https://docs.lacunasoftware.com/articles/amplia-reg/integration/create-order#consulta-de-cadastro-biométrico) foi chamada, mas a integração biométrica não está configurada na instância |

## Documentos do titular

| Código | Quando acontece |
|---|---|
| `HolderFilesRequired`, `MissingRequiredHolderFileType` | Falta um documento exigido pelo tipo de titular, ou a foto, quando o tipo de certificado tem a etapa de biometria habilitada. A mensagem lista os tipos que faltam |
| `InvalidHolderFileType` | Um tipo de documento não existe. Tipos de documento personalizados levam o prefixo `@` |
| `HolderFileTypeCannotBeAdded` | O tipo de titular não aceita algum dos tipos de documento enviados |
| `CertificateTypeDoesNotAllowDocuments` | Foram enviados documentos para um tipo de certificado com a etapa de documentos desabilitada |
| `UnexpectedHolderFileSubtype` | O tipo de documento não aceita subtipos, ou não aceita o subtipo informado |
| `MissingRequiredDocumentPart` | `subtype` foi informado sem `documentPart` |
| `UnexpectedDocumentPart` | O `documentPart` não é permitido para o `subtype` |

## Pedidos existentes

| Código | Quando acontece |
|---|---|
| `OrderNotFound` | Não existe pedido com o número informado |
| `CannotCancelOrder` | O pedido não pode ser [cancelado](https://docs.lacunasoftware.com/articles/amplia-reg/integration/cancel-order) porque já foi emitido, revogado ou cancelado |
| `OrderCannotUpdate` | Os dados do pedido não podem mais ser alterados por causa do status, por exemplo a partir de Aguardando emissão |
| `InvalidOrderStatus` | A operação não é permitida no status atual do pedido |
| `InvalidIssueType` | Uma operação de pedido pré-aprovado foi chamada para um pedido que não é pré-aprovado |
| `IssueKey1Disabled` | A chave de emissão 1 foi solicitada, mas a instância usa uma única chave de emissão |

> **Observação**
>
> Os códigos acima são os mais retornados pelas APIs deste guia. A lista não é completa: existem outros códigos, e novos códigos podem ser
> adicionados a qualquer momento, sem aviso prévio. Trate códigos desconhecidos como uma falha genérica e registre a `message` em log.

## Veja também

* [Primeiros passos para integração](https://docs.lacunasoftware.com/articles/amplia-reg/integration/get-started)
* [Criação de pedido](https://docs.lacunasoftware.com/articles/amplia-reg/integration/create-order)
* [Criação de pedidos pré-aprovados](https://docs.lacunasoftware.com/articles/amplia-reg/integration/preapproved-orders)
