Integra tu app
El registro se convierte en contacto, los eventos en automatizaciones y los correos de inicio de sesión salen por Postal: conecta el cobro y el inicio de sesión de tu app sin código nuevo en el backend.
#Visión general
El ciclo de vida del usuario de tu producto pasa por tres momentos en los que Postal entra sin código nuevo en tu backend:
- El registro se convierte en contacto. Cuando alguien se registra en tu app (Supabase, Clerk, Auth0, Firebase) o se convierte en cliente en Stripe, Postal crea el contacto con el correo electrónico, el nombre y el ID del usuario en tu app (
external_id). - Los eventos se convierten en automatizaciones. Pago aprobado, fallo de cobro, prueba a punto de terminar, cancelación, inicio de sesión: cada uno queda registrado en el contacto como evento y puede iniciar una automatización.
- Los correos de inicio de sesión salen por Postal. La confirmación de registro, el enlace mágico, el restablecimiento de contraseña y las invitaciones salen desde tu dominio, con tus plantillas, por la misma API de los correos transaccionales.
#Elige tu integración
- StripeClientes, suscripciones, facturas, checkout y disputas.
- SupabaseUsuarios de Supabase Auth y el Send Email Hook para los correos de inicio de sesión.
- ClerkUsuarios, lista de espera e inicios de sesión, con firma Svix.
- Auth0Registros, inicios de sesión y eliminaciones por Log Stream, y el proveedor de correo por Actions.
- Firebase AuthDos Cloud Functions avisan a Postal de cada usuario creado o eliminado.
- Better AuthVerificación, restablecimiento de contraseña y magic link por la API.
- Auth.js (NextAuth)El proveedor de correo (magic link) enviando por la API.
#El registro se convierte en contacto
En Integraciones › Tu app, conecta la fuente y pega la URL de la conexión en el proveedor. Cada usuario se identifica por su ID en tu app (external_id), así que un cambio de correo electrónico actualiza el mismo contacto. En Stripe, el cliente se identifica por el correo electrónico y se vincula al ID de Stripe (cus_…), y el metadata.user_id del cliente, si existe, pasa a ser el external_id.
Si tu app ya envía eventos a Postal por la API, usa el mismo ID de usuario en external_id (o user_id) en las llamadas de contactos y eventos: las integraciones y tu código pasan a hablar del mismo contacto.
#Los eventos se convierten en automatizaciones
Los eventos de las integraciones tienen nombres estables, con el formato <fonte>.<tipo>:
| Fuente | Ejemplos de eventos |
|---|---|
| Stripe | stripe.invoice.paid, stripe.invoice.payment_failed, stripe.customer.subscription.trial_will_end, stripe.customer.subscription.deleted |
| Supabase | supabase.user.created, supabase.user.confirmed, supabase.user.deleted |
| Clerk | clerk.user.created, clerk.waitlistEntry.created, clerk.session.created |
| Auth0 | auth0.user.signed_up, auth0.user.logged_in, auth0.user.deleted |
| Firebase Auth | firebase.user.created, firebase.user.deleted |
Crea la automatización con el disparador Evento recibido y el nombre del evento, o haz clic en Crear automatización junto al evento en la pantalla de la conexión. Algunas ideas:
- Bienvenida:
supabase.user.created→ correo de bienvenida, espera de 2 días, consejos de uso. - Cobro rechazado:
stripe.invoice.payment_failed→ correo con el enlace a la factura ({{event.hosted_invoice_url}}). - Fin de la prueba:
stripe.customer.subscription.trial_will_end→ recordatorio con el plan ({{event.plan}}). - Cancelación:
stripe.customer.subscription.deleted→ encuesta de salida y etiqueta “ex-cliente”.
Los eventos que tu producto conoce y el proveedor no (un proyecto creado, un límite alcanzado) van por POST /events con el mismo contacto. Para ello hay SDKs y una CLI: consulta SDKs y CLI.
#Correos de inicio de sesión por Postal
| Biblioteca | Cómo |
|---|---|
| Supabase | Send Email Hook apuntado a Postal: sin código, con una plantilla por tipo de correo, editable en el panel. |
| Better Auth | sendVerificationEmail, sendResetPassword y el plugin de magic link llamando a POST /emails. |
| Auth.js | Un proveedor de correo con sendVerificationRequest llamando a POST /emails. |
| Auth0 | Proveedor de correo personalizado por Actions llamando a POST /emails. |
| Clerk y Firebase | Usa el SMTP de Postal en la configuración de correo del proveedor, cuando acepte un SMTP propio. |
Los correos de inicio de sesión salen de un dominio verificado de tu equipo y cuentan en las mismas cuotas de envío que los correos de la API.
#Tu CRM y tus asistentes de IA
Las integraciones anteriores traen los datos de tu producto a Postal. Para el resto del camino:
- CRM: las conexiones de CRM sincronizan contactos, etapas del embudo y la actividad de los correos con HubSpot, Pipedrive y RD Station CRM, en ambos sentidos; la conexión por webhook hace lo mismo con cualquier sistema que envíe y reciba webhooks.
- Asistentes de IA: el servidor MCP permite que Claude, ChatGPT, Gemini, Cursor y otros envíen correos, consulten entregas y se ocupen de contactos y campañas en tu cuenta.