Cobros automáticos
Requisitos previos de acceso
- Permiso (módulo):
processPaymentQueue - Licencia/Feature: Ninguna específica.
- Contenedor del menú: GENERAL → grupo Cobros (ruta
/automated-recurrences)
Qué es / Cuándo usar
Los Cobros automáticos son plantillas de cobro perpetuas por día del mes — sin fecha de fin. Mientras que la pantalla Registro de cobros para usuarios define un débito con inicio y fin y genera cuotas mes a mes, aquí el operador define una plantilla recurrente (descripción, moneda, monto y el día de cobro) que permanece vigente por tiempo indefinido, hasta ser eliminada.
Úsela para tarifas y suscripciones continuas que no tienen plazo definido. Cada plantilla queda activa (is_active = true) y se aplica en el día configurado de cada mes.
Requisitos previos
- Permiso:
processPaymentQueueregistrado para el rol del operador (permiso doble — enum CPM en el backend + módulo dinámico en la DB). - Licencia/Feature: Ninguna específica.
- Dependencias de otras pantallas: el débito recae sobre el saldo del usuario; el cliente objetivo debe estar
APPROVED.
Paso a paso
- Acceda a Cobros → Cobros automáticos (ruta
/automated-recurrences). - El listado muestra las plantillas registradas con Descripción, Monto, Moneda y Día.
- Haga clic en Crear nuevo cobro para abrir el modal.
- Complete Descripción, Moneda, Monto y Día (1 a 31) y confirme en Guardar.
- Para eliminar una plantilla, haga clic en el ícono de papelera en la fila.
Campos (modal de registro)
| Campo | Qué es | ¿Obligatorio? | Efecto en el sistema/backend |
|---|---|---|---|
| Descripción | Texto que identifica el cobro y aparece en el extracto | Sí | Graba description en automated_recurrently_charges (FMS). |
| Moneda | Símbolo de la moneda del cobro (ej.: BRL, token) | Sí | Graba unit_of_money_requested. Al igual que en los demás cobros, BRL dirige el débito por la cuenta digital; otros símbolos por la billetera cripto. |
| Monto | Cantidad a debitar en cada ciclo | Sí (> 0) | Graba amount_requested (columna numeric). Tratado como BigNumber en el procesamiento. |
| Día | Día del mes en que se aplica el cobro | Sí (entero 1–31) | Graba day. Define la competencia mensual recurrente. El modal valida que el valor sea un entero entre 1 y 31. |
El campo
is_activese define comotrueautomáticamente al guardar — no hay toggle en la pantalla. Para "deshabilitar" un cobro, elimine la plantilla.
Acciones y modales
- Crear nuevo cobro: abre el modal
AutomatedRecurrencyModalComponent. Guardar solo se habilita cuando descripción, moneda, monto (> 0) y día (1–31) son válidos. - Guardar: envía a
POST /v1/automated-recurrently/create. Si tiene éxito, recarga la lista. - Eliminar (papelera): llama a
POST /v1/automated-recurrently/deletecon elrecurrencyId. Tras la confirmación se recarga la página.
Reglas de negocio / Advertencias
Atención
- Los Cobros automáticos no tienen fecha de fin — permanecen activos hasta ser eliminados. Revise periódicamente la lista para evitar débitos indebidos.
- La Moneda determina el canal (cuenta digital para
BRL, billetera para token). Verifique el símbolo. - El Día debe existir en el mes; los meses cortos pueden requerir atención al elegir 29/30/31.
- Valores financieros: tratados como BigNumber — sin redondeo.
- Idempotencia: la aplicación de cada ciclo sigue el patrón idempotente de FinLib —
E00021("already processed") es un éxito, no un error. - Estado APPROVED: el usuario objetivo debe estar aprobado para que el débito se efectivice.