---
title: Integracion con n8n
category:
  uri: guides
content:
  excerpt: Configura una credencial y solicitudes idempotentes desde n8n.
---

# Integracion con n8n

## Credencial

Guarda la API key en el gestor de credenciales de n8n, no como texto dentro de un nodo exportable:

```text
Nombre: Authorization
Valor:  Bearer <KNI_LIVE_SECRET>
```

## Nodo HTTP Request

- Método: el requerido por el endpoint.
- URL: `https://api.kanan.app/v1/financial/...`.
- Body Content Type: JSON.
- `X-Kanan-Tracker-Id`: tracker de la ejecución.
- `Idempotency-Key`: estable por ejecución e item.

```text
n8n-{{ $execution.id }}-{{ $itemIndex }}
```

## Migrar un formato anterior

| Campo anterior | API v1 | Transformación |
| --- | --- | --- |
| `tipo_movimiento` | `type` | `expense` o `income`. |
| `monto` | `amountDecimal` | Si está en centavos: `($json.monto / 100).toFixed(2)`. |
| `id_cuenta_pago` | `accountId` | UUID sin cambios. |
| `categoria_id` | `categoryId` | String opcional. |
| `fecha` | `occurredOn` | Fecha `YYYY-MM-DD`. |
| `descripcion` | `description` | Texto opcional de hasta 500 caracteres. |
| `nombre_comercio` | `merchantName` | Texto opcional de hasta 200 caracteres. |

No conectes n8n directamente a PostgreSQL. La API conserva autorización, RLS, validaciones, contexto de tracker, idempotencia y auditoría.
