Movimientos
Un movimiento es un ingreso o un gasto dentro de una cuenta. El saldo de la cuenta se calcula a partir de ellos.
El objeto movimiento
Campos principales
iduuid- Identificador del movimiento.
accountIduuid- Cuenta a la que pertenece. El monto está en la moneda de esa cuenta.
typestring- ADD es ingreso, CUT es gasto.
amountMinorinteger- Monto en céntimos, siempre positivo. El signo lo da type.
descriptionstring- Texto libre, hasta 500 caracteres.
categoryIdstring | null- Categoría: un id del catálogo (como
expense-groceries) o el UUID de una categoría tuya. occurredAtdatetime- Cuándo ocurrió, en UTC.
transferIduuid | null- Si es parte de una transferencia, el id que une las dos partes.
La respuesta trae otros campos de uso interno (sourceType, financialNature…) que puedes ignorar.
Listar movimientos
https://api.tuplatica.app/api/platica/accounts/:accountId/movements/pagePlan: ProPermiso de la key: Solo lectura o superior
Devuelve los movimientos de una cuenta, del más reciente al más antiguo, por páginas.
Parámetros de consulta
pageinteger- Página, desde 1. Por defecto, 1.
limitinteger- Resultados por página. Por defecto 50, máximo 200.
typestring- Filtra por ADD, CUT o TRANSFER.
fromdate- Fecha mínima, inclusiva.
todate- Fecha máxima, inclusiva.
categoryIdsstring- Ids de categoría separados por coma.
minMinor, maxMinorinteger- Rango de monto en céntimos, inclusivo.
curl "https://api.tuplatica.app/api/platica/accounts/6f1c2a9e-8b4d-4c1e-9a7f-2d5e8b3c1a40/movements/page?type=CUT&limit=20" \
-H "Authorization: Bearer $PLATICA_API_KEY"Respuesta 200
{
"data": [
{
"id": "b2e47c10-5d3a-4f8e-9c21-7a6d4e0f9b13",
"accountId": "6f1c2a9e-8b4d-4c1e-9a7f-2d5e8b3c1a40",
"type": "CUT",
"amountMinor": 4590,
"description": "Mercado semanal",
"categoryId": "expense-groceries",
"categorySource": "manual",
"occurredAt": "2026-10-18T18:30:00.000Z",
"isInitial": false,
"transferId": null,
"sourceType": null,
"sourceId": null,
"sourceParentId": null,
"financialNature": "OPERATING",
"createdAt": "2026-10-18T18:31:02.000Z",
"updatedAt": "2026-10-18T18:31:02.000Z"
}
],
"total": 86,
"page": 1,
"limit": 20,
"hasMore": true
}Registrar un movimiento
https://api.tuplatica.app/api/platica/accounts/:accountId/movementsPlan: ProPermiso de la key: Lectura y escritura
Cuerpo
typestringobligatorio- ADD para ingreso, CUT para gasto.
amountMinorintegerobligatorio- Monto en céntimos, mayor que cero.
descriptionstringobligatorio- Hasta 500 caracteres.
occurredAtdatetimeobligatorio- Cuándo ocurrió, con zona horaria.
categoryIdstring- Categoría. Si la omites, Platica la sugiere a partir de la descripción, igual que en la app.
iduuid- Tu propio id para el movimiento.
curl -X POST "https://api.tuplatica.app/api/platica/accounts/6f1c2a9e-8b4d-4c1e-9a7f-2d5e8b3c1a40/movements" \
-H "Authorization: Bearer $PLATICA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "CUT",
"amountMinor": 4590,
"description": "Mercado semanal",
"occurredAt": "2026-10-18T14:30:00-04:00"
}'Respuesta 201
{
"id": "b2e47c10-5d3a-4f8e-9c21-7a6d4e0f9b13",
"accountId": "6f1c2a9e-8b4d-4c1e-9a7f-2d5e8b3c1a40",
"type": "CUT",
"amountMinor": 4590,
"description": "Mercado semanal",
"categoryId": "expense-groceries",
"categorySource": "manual",
"occurredAt": "2026-10-18T18:30:00.000Z",
"isInitial": false,
"transferId": null,
"sourceType": null,
"sourceId": null,
"sourceParentId": null,
"financialNature": "OPERATING",
"createdAt": "2026-10-18T18:31:02.000Z",
"updatedAt": "2026-10-18T18:31:02.000Z"
}Para mover dinero entre tus cuentas
No registres un gasto en una y un ingreso en otra: usa una transferencia, que crea las dos partes de una vez y no las cuenta como gasto ni ingreso en tus reportes.
Editar un movimiento
https://api.tuplatica.app/api/platica/movements/:idPlan: ProPermiso de la key: Lectura y escritura
Envía solo los campos que cambian: los mismos del cuerpo de creación.
curl -X PATCH "https://api.tuplatica.app/api/platica/movements/b2e47c10-5d3a-4f8e-9c21-7a6d4e0f9b13" \
-H "Authorization: Bearer $PLATICA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"amountMinor": 5120
}'Eliminar un movimiento
https://api.tuplatica.app/api/platica/movements/:idPlan: ProPermiso de la key: Lectura y escritura
Elimina el movimiento y recalcula el saldo de la cuenta. Responde 204 sin cuerpo.
curl -X DELETE "https://api.tuplatica.app/api/platica/movements/b2e47c10-5d3a-4f8e-9c21-7a6d4e0f9b13" \
-H "Authorization: Bearer $PLATICA_API_KEY"