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

# Códigos de Erro

> Como a API sinaliza sucesso e falha usando códigos HTTP padrão.

A API responde com códigos HTTP padrão. Um `2xx` confirma sucesso, um `4xx` aponta um problema na sua requisição e um `5xx` indica uma falha do nosso lado.

| Código | Status           | O que significa                              |
| ------ | ---------------- | -------------------------------------------- |
| `200`  | Sucesso          | Requisição processada com sucesso            |
| `201`  | Criado           | Recurso criado com sucesso                   |
| `401`  | Não autorizado   | Token ausente ou inválido                    |
| `403`  | Proibido         | Conta inativa ou sem permissão               |
| `404`  | Não encontrado   | Recurso não existe                           |
| `422`  | Validação falhou | Campos obrigatórios faltando ou inválidos    |
| `429`  | Rate limit       | Muitas requisições — aguarde e tente de novo |
| `500`  | Erro interno     | Falha no servidor — fale com o suporte       |
| `503`  | Indisponível     | Gateway de pagamento temporariamente fora    |

## Formato de erro

<CodeGroup>
  ```json Erro genérico theme={null}
  // 403, 404, 500, 503
  {
    "error": "Account not active"
  }
  ```

  ```json Validação (Transações) theme={null}
  // 422 — Transações
  {
    "errors": "O campo amount é obrigatório."
  }
  ```

  ```json Validação (Saques) theme={null}
  // 422 — Saques
  {
    "errors": {
      "amount": ["O campo amount é obrigatório."],
      "pix_key": ["O campo pix_key é obrigatório."]
    }
  }
  ```
</CodeGroup>

<Warning>
  O `422` chega em **dois formatos**: uma **string** em transações e um **objeto com listas por campo** em saques. Trate os dois ao ler o campo `errors`.
</Warning>
