Gestión de recurrencia por Lotes (Batch)
Definición
El módulo de Gestión de recurrencia por Lotes (Batch) permite ejecutar cobros masivos sobre suscriptores de tipo manual mediante la carga de un archivo CSV en la plataforma. En lugar de ejecutar cada cobro de forma individual a través de la API, el operador prepara un archivo estructurado con el detalle de los cobros a procesar y lo sube a la consola. La plataforma toma el control de la ejecución, procesa cada registro en background y devuelve un reporte con el resultado de cada operación.
Resuelve la necesidad operativa de ejecutar cobros recurrentes sobre carteras grandes de suscriptores sin requerir integración API por cada cobro ni procesar registro a registro desde sistemas externos. Es el canal de ingreso batch del módulo de suscripciones manuales: la contraparte por archivo del endpoint de ejecución masiva vía API.
Este módulo es especialmente relevante para operadores que gestionan carteras de suscriptores con ciclos de cobro propios —como servicios financieros, seguros, clubes o cualquier modelo de débito periódico— donde la ejecución de cobros se dispara desde un proceso administrativo centralizado y no desde un sistema integrado en tiempo real.
concepto central del batch de suscripciones |
|---|
Canal de ingreso → archivo CSV cargado desde la consola de operación |
Ejecución → la plataforma procesa cada registro en background de forma asíncrona |
Resultado → reporte CSV descargable con el estado de cada cobro (paid / fail) |
Límite por lote → hasta 5.000 registros por archivo |
Aplicación → exclusivo para suscripciones de tipo manual |
El módulo de gestión por lotes abstrae la complejidad de coordinar y ejecutar cobros masivos sobre carteras grandes de suscriptores sin requerir integración técnica por cada cobro ni procesamiento secuencial desde sistemas externos.
La plataforma SUGA encapsula todo esto en un único archivo CSV:
Archivo CSV con N registros → carga en consola → procesamiento asíncrono en background
Cada registro → misma lógica de autorización que una ejecución individual por API
Cada ejecución → transacción trazable + webhook emitido
Lote completo → reporte CSV con resultado de cada registro descargable desde consola
Rol dentro de la plataforma
Dentro de la arquitectura SUGA, el módulo de gestión por lotes representa el canal de operación batch del ecosistema de suscripciones. Complementa los canales de ejecución disponibles en el módulo de suscripciones —la ejecución individual por API y la ejecución masiva por API— con un tercer canal orientado a comercioa que trabajan con procesos administrativos basados en archivos. Ejemplo: Aseguradoras
El módulo no altera la lógica de autorización ni el ciclo de vida de los suscriptores: cada registro del lote transita exactamente el mismo flujo que una ejecución manual iniciada por API. La diferencia está en el canal de ingreso y en la gestión asíncrona del procesamiento. El resultado final —una ejecución registrada, un webhook emitido, un impacto en liquidaciones— es idéntico.
módulo relacionado | relación con gestión por lotes |
|---|---|
módulo de suscripciones | Provee las suscripciones de tipo manual y los suscriptores sobre los que opera el lote |
smart acquiring core | Procesa cada autorización de cobro del lote contra el procesador o red correspondiente |
gestión de transacciones | Registra cada ejecución del lote como una transacción trazable con su propio smartcupón |
módulo de liquidaciones | Las ejecuciones aprobadas del lote se incluyen en el ciclo de liquidación al comercio |
webhooks / notificaciones | Emite un evento por cada ejecución procesada del lote, aprobada o rechazada |
consola de operación | Canal de carga del archivo CSV y descarga del reporte de resultados |
Funcionamiento del módulo
Preparación del archivo
El comercio prepara un archivo CSV con los cobros a ejecutar. Cada fila representa un cobro individual sobre un suscriptor específico dentro de una suscripción específica. El archivo debe respetar el formato definido por la plataforma, incluyendo las columnas obligatorias y, opcionalmente, las columnas adicionales que enriquecen la descripción y trazabilidad del cobro.
El archivo no debe superar los 5.000 registros por lote. Si la cartera a cobrar supera ese límite, el operador debe dividir la ejecución en múltiples archivos. No existe una restricción en cuanto al número de lotes que pueden cargarse, pero el sistema procesa cada lote de forma independiente.
Condición previa crítica: antes de subir el archivo, el operador debe verificar que los suscriptores incluidos cuenten con un medio de pago activo. Si un suscriptor no tiene medio de pago asociado al momento de la ejecución, el cobro resultará en fail y quedará registrado como tal en el reporte de respuesta.
Estructura del archivo CSV
El archivo CSV debe contener las siguientes columnas:
Columna | Tipo | Descripción |
|---|---|---|
subscription | requerido | Uid de la suscripción a la que pertenece el suscriptor |
subscriber | requerido | Uid del suscriptor al que se le ejecutará el cobro |
total | requerido | Monto a cobrar en formato xxx.xx (punto como separador decimal) |
reference | opcional | Referencia única del cobro. No puede repetirse dentro del lote ni en lotes anteriores |
description | opcional | Título o descripción de la operación que se mostrará en el comprobante |
softdescriptor | opcional | Texto que aparecerá en el resumen de cuenta del tarjetahabiente |
Ejemplo de estructura del archivo a subir:

Carga y procesamiento
El operador accede a la consola de operación, navega al menú Suscripciones y selecciona la opción Gestionar Lotes. Desde allí puede ver el historial de lotes cargados (procesando y procesados) y cargar nuevos archivos.
Al subir un nuevo archivo, el operador asigna una descripción al lote para facilitar su identificación posterior. La plataforma asigna un id único al lote y comienza el procesamiento en background de forma inmediata. El lote queda visible en la lista con el estado procesando.
Consideración operativa crítica: el archivo debe subirse el mismo día en que se desea que los cobros sean ejecutados. La plataforma inicia la ejecución en el momento de la carga del archivo, no en una fecha programada. No existe un mecanismo de programación diferida dentro del módulo de gestión por lotes.
Estados del lote
Estado | Descripción |
|---|---|
procesando | El archivo fue recibido y la plataforma está ejecutando los cobros en background. No se puede descargar el reporte aún |
procesado | Todos los registros del lote fueron procesados. El reporte de resultados está disponible para descarga |
Reporte de respuesta
Una vez que el lote pasa al estado procesado, el operador puede descargar el reporte de respuesta desde la opción Descargar Reporte. El nombre del archivo de reporte incluye el id del lote para facilitar su identificación y archivo.
El reporte extiende el archivo original con columnas adicionales que informan el resultado de cada cobro:
Columna del reporte | Descripción |
|---|---|
couponstatus | Estado del cobro: paid para operaciones aprobadas, fail para intentos rechazados |
código de estado | Código numérico del resultado de la operación según la tabla de códigos de estado de la plataforma |
Ejemplo de estructura del reporte de respuesta:

Componentes y funcionalidades principales
Carga de lotes
• Carga de archivos CSV desde la consola de operación
• Capacidad de hasta 5.000 registros por archivo
• Asignación de descripción al lote para identificación operativa
• Asignación automática de id único por lote
• Visualización del listado de lotes con estado y fecha
Procesamiento asíncrono
• Ejecución en background de cada cobro al momento de la carga del archivo
• Cada registro del lote transita el mismo flujo de autorización que una ejecución manual por API
• Emisión de webhook por cada cobro procesado (aprobado o rechazado)
• Registro de cada ejecución como transacción trazable en el módulo de gestión de transacciones
Reporte de resultados
• Reporte CSV descargable una vez completado el procesamiento del lote
• Nombre del reporte incluye el id del lote para trazabilidad
• Estado por registro: paid (aprobado) o fail (rechazado)
• Código de estado numérico por registro según tabla de códigos de la plataforma
Validaciones y restricciones
• Formato de archivo: CSV con extensión .csv
• Límite de registros: 5.000 por archivo
• El campo reference debe ser único dentro del lote y no puede repetirse en lotes anteriores
• El campo total debe respetar el formato xxx.xx con punto como separador decimal
• Los suscriptores incluidos deben tener medio de pago activo al momento de la ejecución
• Aplica exclusivamente a suscripciones de tipo manual
Dimensiones y entidades del módulo
entidad | descripción |
|---|---|
lote (batch) | Unidad de procesamiento masivo. Conjunto de hasta 5.000 cobros agrupados en un archivo CSV con id único asignado por la plataforma |
archivo de entrada | Archivo CSV preparado por el operador con las columnas subscription, subscriber, total y opcionales |
registro | Cada fila del archivo CSV. Representa un cobro individual sobre un suscriptor dentro de una suscripción |
reporte de respuesta | Archivo CSV generado por la plataforma con el resultado de cada registro del lote (paid / fail + código de estado) |
suscripción manual | Tipo de suscripción sobre el que opera el módulo. El ciclo de cobro es controlado por el operador, no por el motor automático de la plataforma |
suscriptor | Instancia de cliente dentro de una suscripción. Debe tener medio de pago activo para que el cobro del lote sea ejecutable |
ejecución | Resultado del procesamiento de cada registro del lote. Genera una transacción trazable y un evento webhook |
Integración técnica
El módulo de gestión por lotes opera a través de la consola de operación de SUGA mediante carga manual de archivos. No expone un endpoint de API dedicado para la carga del archivo. Sin embargo, todos los eventos derivados del procesamiento del lote —ejecuciones, resultados, estados— son accesibles a través de los canales estándar de integración de la plataforma.
Canal de carga
• Acceso: consola de operación → menú Suscripciones → Gestionar Lotes
• Formato: archivo CSV con extensión .csv
• Límite: 5.000 registros por archivo
• Ejecución: inmediata al subir el archivo. No existe programación diferida
Formato del archivo de entrada
Columnas obligatorias:
subscription → uid de la suscripción
subscriber → uid del suscriptor
total → monto en formato xxx.xx
Columnas opcionales:
reference → referencia única del cobro (no repetible en el lote ni en lotes anteriores)
description → descripción de la operación
softdescriptor → texto en resumen de cuenta del tarjetahabiente
Seguimiento de resultados
Una vez procesado el lote, los resultados son accesibles por dos vías:
• Reporte CSV descargable desde la consola con el estado de cada registro (paid / fail + código)
• Webhooks estándar emitidos por la plataforma para cada ejecución procesada, aprobada o rechazada, integrables con sistemas propios del operador
Los códigos de estado incluidos en el reporte de respuesta siguen la misma tabla de códigos estándar de la plataforma, consultable en la documentación de referencia de códigos de estado.
Consideraciones operativas
condiciones críticas previas a la carga del lote |
|---|
Verificar que todos los suscriptores del lote tengan medio de pago activo |
Cargar el archivo el mismo día en que se desea ejecutar los cobros |
Garantizar unicidad del campo reference dentro del lote y respecto a lotes anteriores |
Respetar el formato xxx.xx en el campo total (punto como separador decimal) |
Aplicable únicamente a suscripciones de tipo manual |
Flujo operativo
flujo — gestión de cobros por lotes |
|---|
1. Operador prepara archivo CSV con los cobros del período → columnas obligatorias y opcionales |
2. Verifica que todos los suscriptores tengan medio de pago activo |
3. Accede a la consola: Suscripciones → Gestionar Lotes → carga el archivo el día de ejecución |
4. Plataforma asigna id al lote y comienza el procesamiento en background → estado: procesando |
5. Por cada registro: Smart Acquiring Core ejecuta la autorización contra el procesador |
6. Resultado aprobado → ejecución registrada como transacción + webhook emitido (paid) |
7. Resultado rechazado → ejecución registrada + webhook emitido (fail) |
8. Lote completo → estado pasa a procesado → reporte CSV disponible para descarga |
9. Operador descarga el reporte y analiza resultados por suscriptor |
10. Ejecuciones aprobadas se incluyen en el ciclo de liquidación al comercio |
Beneficios y valor operativo
dimensión | valor que aporta el módulo |
|---|---|
Operación sin integración API | Permite ejecutar cobros masivos desde la consola sin requerir desarrollo técnico ni integración por cobro |
Procesamiento asíncrono | La plataforma gestiona el procesamiento en background sin bloquear la operación del equipo |
Trazabilidad completa | Cada cobro del lote genera una transacción registrada, un webhook emitido y un registro en el reporte de respuesta |
Simplicidad del formato | El archivo CSV con seis columnas como máximo es preparable desde cualquier herramienta de gestión de datos |
Control operativo | El reporte de respuesta permite identificar rápidamente qué cobros fallaron y tomar acciones sobre esos suscriptores |
Escalabilidad | Hasta 5.000 cobros por lote con soporte para múltiples lotes simultáneos |
Integración en liquidaciones | Las ejecuciones aprobadas del lote se integran automáticamente en el ciclo de liquidación de la plataforma |
Qué transmite este módulo
El módulo de Gestión de Cobros por Lotes demuestra que la plataforma SUGA comprende que no todos los comercios que gestionan cobros recurrentes tienen sistemas integrados en tiempo real. Existen modelos de operación —servicios financieros, gestoras de carteras, operadores sin equipo técnico propio— donde el cobro masivo se gestiona a través de procesos administrativos basados en archivos. SUGA habilita ese modelo sin forzar una integración API que no corresponde a la realidad operativa de esos actores.
✔ Canal batch nativo para ejecución masiva de cobros sobre suscripciones manuales |
|---|
✔ Operación desde consola sin requerir integración API por cobro |
✔ Procesamiento asíncrono en background con trazabilidad completa por registro |
✔ Reporte de resultados descargable con estado y código por cada cobro ejecutado |
✔ Integración automática de ejecuciones aprobadas en el ciclo de liquidación de la plataforma |
✔ Formato CSV simple y preparable desde cualquier herramienta de gestión de datos |