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

# Tipos de conta

> Classifique contas para reforçar a estrutura do Ledger, validar transações e alinhar o comportamento das contas às suas regras de negócio.

Tipos de Conta são templates comportamentais para as contas no seu ledger. Eles definem quais operações são permitidas em uma conta, se a conta é interna ou externa e como ela participa da reconciliação — transformando um rótulo livre em um contrato governado que o ledger aplica em cada transação.

Os [**Tipos de Conta**](/pt/reference/midaz/create-an-account-type) no Midaz permitem que você classifique sistematicamente as contas de acordo com as necessidades da estrutura financeira da sua organização. Essas classificações definem a natureza e o propósito das contas dentro do design do seu ledger, permitindo o roteamento adequado de transações e a validação operacional entre diferentes categorias de contas.

Os Tipos de Conta podem ser customizados via API de Tipos de Conta para atender aos seus requisitos de negócio e fluxos de trabalho financeiros específicos, fornecendo a base para o processamento estruturado de transações enquanto mantém a integridade dos dados.

## Como funciona a validação de Tipo de Conta

### Habilitando a validação de Tipo de Conta

A validação de Tipo de Conta é habilitada por ledger através da [API de Configurações do Ledger](/pt/midaz/ledgers#ledger-settings). Para ativá-la, envie uma requisição `PATCH` para o endpoint de Configurações do Ledger:

<CodeGroup>
  ```json PATCH /v1/organizations/{org_id}/ledgers/{ledger_id}/settings theme={null}
  {
    "accounting": {
      "validateAccountType": true
    }
  }
  ```
</CodeGroup>

<Tip>
  As alterações de configuração entram em vigor imediatamente — não é necessário redesplegar. Você pode atualizá-las a qualquer momento via API.
</Tip>

### Comportamento do campo `type` na API de Contas

Ao criar uma Conta, o comportamento do campo `type` se adapta com base na ativação do recurso de Validação de Tipo de Conta:

* **Validação de Tipo de Conta** **Desabilitada (Padrão):** O campo `type` é opcional e aceita qualquer string livre.
* **Validação de Tipo de Conta Habilitada:** O campo `type` se torna **obrigatório** e deve corresponder a um dos Tipos de Conta previamente registrados via API de Tipos de Conta. Se um tipo inválido ou não registrado for enviado, o sistema retornará um erro de validação.

<Tip>
  Se sua organização está habilitando o recurso de Validação de Tipo de Conta, recomendamos revisar as contas existentes. Pode ser necessário recriá-las ou atribuir retroativamente o Tipo de Conta apropriado para alinhar com sua estrutura contábil.
</Tip>

Essa dinâmica garante que cada conta esteja alinhada com as categorias contábeis formais exigidas pelo seu negócio, fortalecendo a governança e os relatórios financeiros.

### O campo `keyValue`

<Note>
  O campo `keyValue` identifica um Tipo de Conta e possui as seguintes restrições:

  * **Imutável:** O `keyValue` é definido no momento da criação e não pode ser alterado posteriormente. O endpoint de Atualização de Tipo de Conta não aceita esse campo.
  * **Único por ledger:** Cada `keyValue` deve ser único dentro de um dado ledger.
  * **Usado para validação de tipo:** Quando `validateAccountType` está habilitado nas Configurações do Ledger, o campo `type` de qualquer Conta deve corresponder exatamente a um dos strings `keyValue` registrados. Contas criadas com um valor `type` não registrado serão rejeitadas.
</Note>

## Gerenciando Tipos de Conta

***

Você pode gerenciar seus Tipos de Conta exclusivamente via API.

* [Criar um Tipo de Conta](/pt/reference/midaz/create-an-account-type) — Registre um novo Tipo de Conta para o seu Ledger.
* [Listar Tipos de Conta](/pt/reference/midaz/list-account-types) — Recupere todos os Tipos de Conta configurados no seu Ledger.
* [Recuperar um Tipo de Conta](/pt/reference/midaz/retrieve-an-account-type) — Obtenha informações detalhadas sobre um Tipo de Conta específico.
* [Atualizar um Tipo de Conta](/pt/reference/midaz/update-an-account-type) — Modifique a definição de um Tipo de Conta existente.
* [Excluir um Tipo de Conta](/pt/reference/midaz/delete-an-account-type) — Remova um Tipo de Conta que não está mais em uso.

<Note>
  **Veja também**

  * [Roteamento de Transações](/pt/midaz/transaction-routing-entities) — As Operation Routes usam `ruleType: account_type` para validar contas contra os Tipos de Conta definidos aqui.
  * [Lançamentos Contábeis](/pt/midaz/accounting-entries) — Como as rubricas de débito e crédito são resolvidas para as contas que esses tipos classificam.
</Note>
