PróximamenteSantiago, Samaná y Punta Cana — abrimos lista de espera por provinciaVer el plan de expansión
Plataforma / Suscripciones

Suscripciones que se ejecutan por eventos, no por un cron que reza.

Una entrega recurrente es una máquina de estados que vive semanas: cobrar, esperar, empacar, entregar, pedir feedback, renovar. Cada espera es un workflow durable con su propio temporizador, y cada resultado es un hecho escrito. Si el proceso muere en medio, se reanuda donde iba.

El ciclo, evento por evento

Nombres reales de los eventos y de los workflows que los escuchan. Ninguno de estos pasos es una función que corre cada hora preguntando «¿ya?».

  1. 01
    Cotización

    Se cotiza el ciclo

    Una sola herramienta puede devolver una cifra recurrente. Calcula el primer cobro, el cobro completo, las fechas que cubre y el envío por entrega. Si la zona no está validada, el envío vuelve como null en vez de inventarse.

  2. 02
    Pedido creado

    Arranca el reloj del pago

    La orden se crea con su ventana de pago congelada en el evento. Un proceso durable espera el pago hasta un instante fijo, el mismo que lleva el enlace de cobro, para que no pueda sobrevivir a su propio pedido.

  3. 03
    Cobro vencido

    Expiración suave, reversible

    Si el pago no llega, la orden de tarjeta no se cancela: se marca como link vencido y libera el cupo. La misma orden puede recibir un link nuevo, que cancela el temporizador viejo y arma uno fresco.

  4. 04
    Pago recibido

    Se despacha a empaque

    El pago confirmado se escribe en el sistema de registro, avisa a empaque y cierra la atribución del anuncio. Un depósito por transferencia reportado nunca se auto-cancela: es un artefacto de revisión humana y el workflow le pide al revisor que lo mire.

  5. 05
    Entrega hecha

    Duerme hasta pedir feedback

    El workflow se duerme hasta el momento calculado al marcar la entrega, respeta la ventana horaria de envío y abre una conversación de feedback con consentimiento. Días de espera, sin proceso vivo ni cron.

  6. 06
    Renovación

    Renueva por ciclo, no por mes

    Un ciclo son 4 semanas. En el modelo de mes calendario el cobro completo cae el 1ro; en el de ciclo rodante se cobra el ciclo entero por adelantado y renueva cada 4 semanas. Las fechas de entrega se recalculan y se comunican.

  7. 07
    Queja abierta

    Escala con temporizador de silencio

    Una queja abre dos workflows en paralelo: uno espera a que el cliente dé suficiente información, otro cuenta el silencio. El primero que se cumple decide si el agente sigue o si entra un humano.

El problema difícil

Un ciclo son 4 semanas. Un mes no.

Esto suena a detalle y es el bug más caro que tuvimos. El precio de una entrega y el cobro recurrente son dos números distintos, y un modelo que solo tiene el primero va a asumir que son el mismo. El nuestro lo hizo: cotizó el precio de una sola entrega como si fuera el cobro del ciclo completo, y lo confirmó otra vez cuando la clienta preguntó «o sea pago eso y ya, ¿verdad?».

La solución no fue pedirle al modelo que tuviera más cuidado. Fue darle una herramienta que devuelve las dos cifras y las fechas exactas que cubre el primer cobro, y prohibirle en el prompt decir cualquier cifra recurrente sin llamarla.

La cotización

Una sola fuente autorizada para cualquier cifra recurrente

Dos montos, siempre los dos
Lo que se paga hoy y lo que se cobra de forma recurrente casi nunca son el mismo número. Decir solo uno es la forma más rápida de que un cliente sienta que lo engañaron.
Las fechas junto al monto
Nombrar las entregas que cubre ese primer cobro es lo que hace que la cifra se vea obviamente correcta. Sin fechas, cualquier monto parece un error.
Cuándo cambia el cobro
Si el segundo cobro es mayor que el primero, se dice antes de pagar. Una sorpresa en el estado de cuenta es una queja garantizada.
Lo que no se sabe, no se llena
Sin dirección validada no hay envío que cotizar. El sistema devuelve vacío y el agente dice que falta confirmarlo, en vez de estimar.

Dos modelos de facturación, un motor

calendarMonth

Semanal

Cuatro entregas por ciclo, cobradas el 1ro de cada mes. Al suscribirse solo se cobran las semanas de entrega que quedan en el mes, y se nombra la fecha en que empieza el monto completo. Un primer cobro de cero es correcto y es buena noticia: no quedan semanas este mes.

Entregas por ciclo
4
Día de cobro
1ro del mes
Primer cobro
proporcional
rollingCycle

Cada 15 días

Dos entregas por ciclo cuando Configuración de entregas publica la frecuencia de cada 15 días, con el ciclo completo de 4 semanas cobrado por adelantado y renovación cada 4 semanas desde la fecha de alta. Sin proporcional: el primer cobro y el recurrente son el mismo número.

Entregas por ciclo
2
Día de cobro
cada 4 semanas
Primer cobro
ciclo completo