Platica

Agenda

La agenda guarda los pagos e ingresos que esperas. Cuando ocurren, los confirmas y registras el movimiento real.

El objeto agenda

Campos

iduuid
Identificador de la fila.
conceptstring
Qué esperas, hasta 200 caracteres.
typestring | null
ADD (ingreso), CUT (gasto) o null si lo decides al confirmar.
estimatedAmountMinorinteger | null
Monto estimado en céntimos.
dueDatedatetime
Día previsto.
statusstring
PENDING, DONE (confirmada) o SKIPPED (omitida).
accountIduuid | null
Cuenta donde caerá. En filas que vienen de un plan es null: la cuenta es la del plan.
categoryIdstring | null
Categoría.
planItemId, sourceDateuuid, datetime
Partida del plan y fecha original, si salió de un plan.
sourceTypestring | null
Si la creó una obligación: OBLIGATION_INSTALLMENT, OBLIGATION_ORIGIN u OBLIGATION_SETTLEMENT.

De dónde salen las filas

  • Manuales: las creas tú con accountId.
  • De un plan: Platica las genera solas para las partidas con remind: true de planes que tienen cuenta. Se identifican por planItemId.
  • De una obligación: cada cuota de una obligación crea su fila. Esas se manejan desde la obligación: editarlas o borrarlas aquí responde 409 (OBLIGATION_MANAGED_SOURCE).

Listar la agenda

GET/planned-movements

Plan: ProPermiso de la key: Solo lectura o superior

Devuelve las filas de un estado, de la fecha más cercana a la más lejana.

Parámetros de consulta

statusstring
PENDING, DONE o SKIPPED. Por defecto PENDING: para ver todo, pide cada estado.
yearMonthinteger
Mes como AAAAMM. No filtra: asegura que los recordatorios de planes estén generados hasta ese mes.
curl "https://api.tuplatica.app/api/platica/planned-movements?status=PENDING" \
  -H "Authorization: Bearer $PLATICA_API_KEY"

Respuesta 200

[
  {
    "id": "9b1d3f5a-7c9e-4a1b-8d3f-5a7c9e1b3d5f",
    "accountId": "6f1c2a9e-8b4d-4c1e-9a7f-2d5e8b3c1a40",
    "concept": "Médico",
    "categoryId": "expense-health",
    "categorySource": "manual",
    "type": "CUT",
    "estimatedAmountMinor": 3500000,
    "dueDate": "2026-10-24T13:00:00.000Z",
    "status": "PENDING",
    "notifiedAt": null,
    "planItemId": null,
    "sourceDate": null,
    "sourceType": null,
    "sourceId": null,
    "sourceParentId": null,
    "createdAt": "2026-10-18T19:02:00.000Z",
    "updatedAt": "2026-10-18T19:02:00.000Z"
  }
]

Agendar un movimiento

POST/planned-movements

Plan: ProPermiso de la key: Lectura y escritura

Cuerpo

conceptstringobligatorio
Hasta 200 caracteres.
dueDatedatetimeobligatorio
Día previsto.
accountIduuid
Cuenta donde caerá. Obligatoria para filas manuales.
typestring
ADD o CUT. Puedes dejarlo para cuando confirmes.
estimatedAmountMinorinteger
Monto estimado en céntimos.
categoryIdstring
Categoría. Si la mandas, también debes mandar type.
statusstring
Por defecto PENDING.
iduuid
Tu propio id. Reenviarlo devuelve la fila existente.
curl -X POST "https://api.tuplatica.app/api/platica/planned-movements" \
  -H "Authorization: Bearer $PLATICA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "accountId": "6f1c2a9e-8b4d-4c1e-9a7f-2d5e8b3c1a40",
    "concept": "Médico",
    "type": "CUT",
    "estimatedAmountMinor": 3500000,
    "dueDate": "2026-10-24T09:00:00-04:00"
  }'

Respuesta 201

{
  "id": "9b1d3f5a-7c9e-4a1b-8d3f-5a7c9e1b3d5f",
  "accountId": "6f1c2a9e-8b4d-4c1e-9a7f-2d5e8b3c1a40",
  "concept": "Médico",
  "categoryId": "expense-health",
  "categorySource": "manual",
  "type": "CUT",
  "estimatedAmountMinor": 3500000,
  "dueDate": "2026-10-24T13:00:00.000Z",
  "status": "PENDING",
  "notifiedAt": null,
  "planItemId": null,
  "sourceDate": null,
  "sourceType": null,
  "sourceId": null,
  "sourceParentId": null,
  "createdAt": "2026-10-18T19:02:00.000Z",
  "updatedAt": "2026-10-18T19:02:00.000Z"
}

Confirmar, omitir o editar

PATCH/planned-movements/:id

Plan: ProPermiso de la key: Lectura y escritura

Envía los campos que cambian: concept, type, estimatedAmountMinor, dueDate, categoryId, accountId o status.

curl -X PATCH "https://api.tuplatica.app/api/platica/planned-movements/9b1d3f5a-7c9e-4a1b-8d3f-5a7c9e1b3d5f" \
  -H "Authorization: Bearer $PLATICA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "status": "DONE"
  }'

Confirmar no registra el movimiento

Marcar DONE solo cierra la fila. Para que el gasto o ingreso afecte el saldo, registra el movimiento en la cuenta.

Eliminar una fila

DELETE/planned-movements/:id

Plan: ProPermiso de la key: Lectura y escritura

Elimina la fila. Responde 204 sin cuerpo.

curl -X DELETE "https://api.tuplatica.app/api/platica/planned-movements/9b1d3f5a-7c9e-4a1b-8d3f-5a7c9e1b3d5f" \
  -H "Authorization: Bearer $PLATICA_API_KEY"

Para filas de un plan, mejor omitir

Una fila de plan eliminada no vuelve a generarse para esa fecha. Si solo no aplica este mes, márcala SKIPPED.

¿Dudas o algo no funciona? Escríbenos a [email protected]

Actualizado el 18 de octubre de 2026