invalid_status_transition
`PATCH /v1/empresas/{id}` was sent a `status` other than `active` or `archived`.
PATCH /v1/empresas/\{id\} was sent a status other than active or archived.
| Code | invalid_status_transition |
| Type | invalid_request_error — Malformed or incomplete input |
| HTTP | 400 |
| Retriable? | No |
What to do
Only the archive/reactivate transition is caller-driven; onboarding and suspended are consequences the system sets on its own.
Retrying the same request will fail the same way. Change the request, not the frequency.
The envelope
{
"error": {
"type": "invalid_request_error",
"code": "invalid_status_transition",
"message": "…",
"hint": "Only the archive/reactivate transition is caller-driven; `onboarding` and `suspended` are consequences the system sets on its own.",
"retriable": false,
"doc_url": "https://docs.facturia.cl/errors/invalid_status_transition",
"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.
See also
Every code
The error envelope
The machine-readable copy of this page lives at GET /v1/error_codes, unauthenticated.