# contribuyentes_unavailable (/en/docs/errores/contribuyentes_unavailable)

The SII nómina of personas jurídicas has not been loaded yet, so no RUT can be looked up.

|                |                              |
| -------------- | ---------------------------- |
| **Code**       | `contribuyentes_unavailable` |
| **Type**       | `api_error` — Our fault      |
| **HTTP**       | `503`                        |
| **Retriable?** | **Yes**                      |

## What to do [#what-to-do]

Retry after `Retry-After`. Meanwhile ask the person for the razón social and giro, or use what `GET /v1/empresas/\{id\}/counterparties/\{rut\}` already has on file.

> **Note**
>
> Retrying the same request may work. Respect `Retry-After` when it comes.

## The envelope [#the-envelope]

```json
{
  "error": {
    "type": "api_error",
    "code": "contribuyentes_unavailable",
    "message": "…",
    "hint": "Retry after `Retry-After`. Meanwhile ask the person for the razón social and giro, or use what `GET /v1/empresas/{id}/counterparties/{rut}` already has on file.",
    "retriable": true,
    "doc_url": "https://docs.facturia.cl/errors/contribuyentes_unavailable",
    "request_id": "req_01K2R7Q9M4T2VB"
  }
}
```

Program against `code`, never against `message` — the prose can be rewritten, the code cannot (§5.8).

`hint` and `retriable` arrive in the response with these exact values: they are a function of `code` and come from the same dictionary `GET /v1/error_codes` serves, so the envelope and the dictionary cannot disagree. Both are English on the wire by design — one registry, one language. More in [The error envelope](/en/docs/errores).

## See also [#see-also]

- [Every code](/en/docs/errores/codigos): The full table, grouped by where you will run into it.

- [The error envelope](/en/docs/errores): The nine types, the request_id and how to handle them in practice.

The machine-readable copy of this page lives at `GET /v1/error_codes`, unauthenticated.
