# subscription_required (/en/docs/errores/subscription_required)

This live act needs an active subscription for this empresa, and it has none.

|                |                                                         |
| -------------- | ------------------------------------------------------- |
| **Code**       | `subscription_required`                                 |
| **Type**       | `invalid_request_error` — Malformed or incomplete input |
| **HTTP**       | `402`                                                   |
| **Retriable?** | No                                                      |

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

`error.details` carries the empresa, its RUT, the subscription status, the grace instant if one was running, the checkout URL for THAT empresa, and a `next` handoff naming who pays and how you learn it is done. The subscription is PER EMPRESA, so the other empresas on the same account are unaffected. FOUR acts are gated: emission, notas de crédito, folio requests and sends. The go-live authorization is NOT — it is a decision, not an emission, and it is free on every door (#530). Reads, commercial responses, tax filings and the whole sandbox are never gated either. Eligibility is evaluated first, so this arrives only when the empresa is otherwise able to emit.

> **Warning**
>
> Retrying the same request will fail the same way. Change the request, not the frequency.

## The envelope [#the-envelope]

```json
{
  "error": {
    "type": "invalid_request_error",
    "code": "subscription_required",
    "message": "…",
    "hint": "`error.details` carries the empresa, its RUT, the subscription status, the grace instant if one was running, the checkout URL for THAT empresa, and a `next` handoff naming who pays and how you learn it is done. The subscription is PER EMPRESA, so the other empresas on the same account are unaffected. FOUR acts are gated: emission, notas de crédito, folio requests and sends. The go-live authorization is NOT — it is a decision, not an emission, and it is free on every door (#530). Reads, commercial responses, tax filings and the whole sandbox are never gated either. Eligibility is evaluated first, so this arrives only when the empresa is otherwise able to emit.",
    "retriable": false,
    "doc_url": "https://docs.facturia.cl/errors/subscription_required",
    "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.
