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

# Categorías

> Cómo se organizan los gastos e ingresos: jerarquía, ruta, tipo y emoji.

Una transacción tiene **cero o una** categoría (`0..1`). Las categorías son **jerárquicas** y se
identifican por su **ruta completa** `"Padre / Hijo / Nieto"`.

## Ruta, no ID (al escribir)

Al crear/editar una transacción o un presupuesto, pasas la categoría como **ruta**:

```json theme={null}
{ "category": "Gastos / Comida / Súper" }
```

Si la ruta no existe, **se crea al vuelo** (con sus padres). Así no necesitas resolver IDs para
capturar rápido. En las respuestas, cada categoría trae su `id`, su `name` (ruta completa) y su
`emoji`.

## Tipo: ingreso o gasto

Cada categoría es de **ingreso** o de **gasto** (`kind`). La raíz define el tipo y los hijos lo
heredan. Una categoría de ingreso no puede usarse en un gasto y viceversa.

## Emoji

Las categorías tienen un **emoji** (CAT-010). En el ref de categoría de cada transacción, el `emoji`
se **hereda del ancestro más cercano** que tenga uno (así "Gastos / Comida / Súper" muestra el 🛒 de
"Comida" aunque "Súper" no tenga el suyo).

## Endpoints

| Acción               | Endpoint                                                                          |
| -------------------- | --------------------------------------------------------------------------------- |
| Listar               | `GET /v1/categories` (lista plana con `parentId`; el árbol se arma en el cliente) |
| Crear                | `POST /v1/categories` (nombre o cadena "Padre / Hijo")                            |
| Renombrar / mover    | `PATCH /v1/categories/{id}`                                                       |
| Archivar / restaurar | `POST /v1/categories/{id}/archive` · `/restore`                                   |

<Note>
  Archivar saca la categoría (y su subárbol) de los selectores pero **conserva el historial** de
  reportes. Reusar el nombre la revive.
</Note>
