Ir al contenido
La casa
En producciónRetención de membresías · ServiceTitan

MemberBay

Tus planes de mantenimiento pierden plata. Nadie manda una alerta.

MemberBay se apoya sobre ServiceTitan y vigila la parte de tus ingresos recurrentes que falla sin hacer ruido. Te avisa en marzo, no en la renovación.

El problema

Las membresías no se caen con ruido.

Una membresía de mantenimiento no termina con un mail de cancelación. Termina con una tarjeta que venció en marzo, un service que nadie agendó en junio y una fecha de renovación que pasó en setiembre mientras la oficina estaba ocupada. Cuando aparece en un reporte, el cliente ya se fue y el costo de adquisición ya se gastó.

ServiceTitan tiene todas esas señales. Lo que no hace es ponerlas en primer plano. La mayoría de los contratistas se entera en temporada de renovación, corre una campaña de pánico y recupera una fracción. La plata está en la distancia entre “el dato existe” y “alguien actuó sobre el dato”.

Qué hace

Detección de fallas silenciosas

Tarjetas rechazadas y por vencer, visibles el día que fallan y no el trimestre en que se acumulan, cada una con el cliente, el plan y el monto en riesgo adjunto.

Pipeline de renovaciones

Cada membresía ordenada por fecha de vencimiento e ingreso en riesgo, para que la lista de seguimiento se arme sola en lugar de rehacerse a mano todos los meses.

Visitas sin agendar

Socios que pagaron dos visitas y recibieron una. La señal de fuga más temprana del rubro y la que casi nadie mira.

Agente, Slack y Chrome

Un agente que responde preguntas sobre la cartera en lenguaje natural, un bot de Slack que empuja lo que cambió durante la noche y una extensión de Chrome que mete los números adentro de ServiceTitan.

Por dentro

Multi-tenant desde la primera tabla.

Aislamiento por tenant en cada fila, una capa de identidad que mapea IDs de ServiceTitan a UUIDs internos y reportes cacheados para que el dashboard no vuelva a consultar la API en cada carga. FastAPI y Postgres atrás, React y TypeScript adelante, Stripe para facturación y un supervisor que reinicia lo que se cae.

# the query that runs every nightfor m in servicetitan.memberships(tenant):    if m.card.declined or m.expires_within(days=30):        yield Risk(m.customer, m.plan, m.value_at_risk)

Construido con

  • Python · FastAPI
  • React · TypeScript · Vite
  • PostgreSQL · SQLAlchemy
  • Supabase Auth
  • Stripe
  • ServiceTitan API
  • Anthropic Claude
  • Extensión de Chrome

Tus planes de mantenimiento pierden plata. Nadie manda una alerta.

Siguiente

KuJI