Nota: Los webhooks están disponibles en los planes Growth y Pro. Aprende a cambiar tu plan de suscripción de Kajabi.
Antes de empezar
- Crea la Oferta a la que los clientes deberían tener acceso
- Confirma que tu plan incluye webhooks
- Obtén acceso de administrador a la herramienta externa que envía o recibe el webhook
- Para flujos con Stripe, elige un conector como Zapier, Make, o tu propio servidor
Copia las URLs de Activación y Desactivación de una Oferta
Cada Oferta tiene su propio par de URLs de webhook entrante. La URL de Activación otorga acceso a todos los Productos de esa Oferta, y la URL de Desactivación lo revoca.- Desde el Panel, haz clic en Sales y luego en Pricing.
- Selecciona tu Oferta.
- Haz clic en More y luego selecciona Webhooks.
- Copia la Activation URL, la Deactivation URL, o ambas.
Parámetros requeridos
Toda solicitud a una URL de Activación o Desactivación debe incluir tres valores:
Envíalos como una solicitud POST, con los tres al nivel superior del payload:
Nota: Kajabi lee estos tres valores solo en el nivel superior. Si tu conector los anida dentro de otro objeto, la solicitud falla con un error
email can't be blank o name can't be blank.Otorga acceso después de una compra en Stripe en un sitio de terceros
Si vendes en tu propio sitio web — WordPress, Shopify o un checkout personalizado — y cobras a través de Stripe, puedes hacer que Kajabi cree la cuenta del cliente y desbloquee sus Productos en el momento en que Stripe confirme el pago. Stripe no puede llamar a la URL de Activación por sí solo. Stripe envuelve el nombre y el correo del comprador dentro de su propio objeto de evento, y Kajabi solo lee esos valores en el nivel superior del payload. Coloca un conector entre ambos para transformar los datos: Zapier, Make, o un pequeño script en tu propio servidor.Conecta Stripe con Kajabi usando Zapier
Zapier tiene una acción integrada de Kajabi, así que esta ruta no requiere código.- Crea un Zap con Stripe como app de disparo, y elige el evento de Stripe que se activa cuando se completa un pago.
- Agrega Kajabi como app de acción y selecciona Grant Access to an Offer.
- Conecta tu cuenta de Kajabi y selecciona el Site y la Offer a otorgar.
- Asigna los datos del comprador desde Stripe a los campos Customer Name, Email e External User ID.
- Ejecuta un pago de prueba en Stripe para confirmar que el otorgamiento funciona, y luego activa el Zap.
Llama a la URL de Activación desde tu propio servidor
Usa esta ruta si ya tienes un servidor que escucha los eventos de Stripe.- Suscribe tu servidor al evento de Stripe que se dispara cuando se completa un pago.
- Extrae el nombre y el correo del comprador del evento de Stripe.
- Envía una solicitud POST a la Activation URL de la Oferta con
name,emailyexternal_user_iden el nivel superior del payload. - Trata una respuesta
{"status":"OK"}como un otorgamiento exitoso, y registra cualquier otra respuesta para revisión.
Controla los correos que Kajabi envía cuando un webhook otorga una Oferta
Lo que recibe el cliente depende de si ya tiene una cuenta en tu sitio.- Los clientes nuevos reciben un correo de bienvenida con sus datos de acceso, porque Kajabi crea la cuenta y les genera una contraseña
- Los clientes existentes no reciben nada por defecto, porque el correo de Oferta otorgada está desactivado para los otorgamientos por webhook
?send_offer_grant_email=true al final de la URL de Activación:
Revoca el acceso cuando un cliente cancela o recibe un reembolso
El acceso otorgado por webhook no termina por sí solo. Si una suscripción vence en Stripe, o reembolsas un pedido, envía una segunda solicitud para eliminar el acceso del cliente.- Suscribe tu conector al evento de Stripe que se dispara ante una cancelación, un pago fallido o un reembolso.
- Envía una solicitud POST a la Deactivation URL de la Oferta con el mismo
name,emailyexternal_user_idque enviaste al otorgar la Oferta. - Confirma que el cliente perdió el acceso a todos los Productos de esa Oferta.
Nota: La desactivación busca al cliente solo por
external_user_id. Si envías un valor diferente al que enviaste en la activación, o lo dejas en blanco, la solicitud devuelve un error Not found y el cliente conserva el acceso.Envía datos de compra a otra herramienta cuando se vende una Oferta
Usa un webhook saliente en una sola Oferta cuando solo esa Oferta necesite notificar a una herramienta externa — un servicio de cumplimiento para un bono físico, por ejemplo, o una hoja de cálculo que le da seguimiento a un solo lanzamiento.- Haz clic en Sales en tu Panel de Kajabi y luego selecciona tu Oferta.
- Haz clic en More y luego selecciona Webhooks.
- Pega la URL de destino en el campo Purchase Webhook URL bajo Outbound Webhooks.
- Haz clic en Save.
- Haz clic en Send Test, que aparece junto al campo una vez que se guarda una URL, para enviar datos de muestra a tu endpoint.
Envía eventos de pago de todo el sitio a otra herramienta
Usa un webhook de todo el sitio cuando un sistema externo necesite recibir cada pago, no solo las ventas de una Oferta — una herramienta contable o un panel interno, por ejemplo.- Ve a Settings > Integrations & Webhooks.
- Haz clic en Create webhook.
- Selecciona Payment Succeeded o Cart Purchase en la lista de Event.
- Ingresa tu endpoint en el campo Endpoint URL.
- Haz clic en Add webhook.
Nota: El endpoint debe usar HTTPS y ser compatible con TLS 1.2. Kajabi rechaza cualquier otra URL al guardar el webhook.
Envía envíos de Formularios a otra herramienta
Envía los opt-ins directo a un CRM o plataforma de correo a medida que llegan, sin exportar una lista.- Abre el Formulario desde el que quieres enviar los envíos.
- Haz clic en el menú de más opciones (…) y luego selecciona Webhooks.

- Ingresa la URL que debe recibir los datos del envío.
- Haz clic en Save.
Confirma que un webhook funcionó
Toda solicitud a una URL de Activación o Desactivación queda registrada, sin importar si tuvo éxito o falló. Revisa el registro primero cuando un cliente diga que no obtuvo acceso.- Haz clic en Sales en tu Panel de Kajabi y luego selecciona tu Oferta.
- Haz clic en More y luego selecciona Webhooks.
- Haz clic en View your webhook log entries debajo de la Deactivation URL.
- Filtra por estado, o busca en los parámetros la dirección de correo de un cliente.
pending, processing, complete o error. Una entrada error muestra los valores que llegaron y la razón por la que se rechazó la solicitud, lo cual generalmente basta para detectar un parámetro faltante o mal escrito.
Solución de problemas
invalid webhook token— el token en la URL está mal o se cortó al copiar y pegar. Copia la URL de nuevo desde la ventana de Webhooks de la Oferta.Not found— la Oferta está archivada, el ID de Oferta en la URL es incorrecto, o la solicitud se envió a una desactivación sin unexternal_user_idcoincidente.- Una página 404 en tu navegador — las URLs de Activación y Desactivación solo aceptan solicitudes POST, así que abrir una en un navegador siempre devuelve un 404. Haz la prueba con tu conector o una herramienta que pueda enviar una solicitud POST.
can't be blank— falta uno de los tres parámetros requeridos, o el payload los anida dentro de otro objeto en lugar de enviarlos en el nivel superior.- El otorgamiento falla en una compra repetida — un cliente que ya tiene acceso activo a una Oferta no puede recibirla otorgada por segunda vez.
Preguntas frecuentes
¿Puedo usar webhooks con un procesador de pagos distinto de Stripe?
Sí. Las URLs de Activación y Desactivación de Kajabi no saben ni les importa qué procesador tomó el pago. Cualquier herramienta que pueda enviar una solicitud POST conname, email y external_user_id en el nivel superior puede otorgar o revocar acceso, incluyendo PayPal, un plugin de membresías, o tu propio checkout.
¿Mi cliente recibirá un correo cuando un webhook le otorgue una Oferta?
Un cliente que es nuevo en tu sitio recibe un correo de bienvenida con sus datos de acceso. Un cliente que ya tiene una cuenta no recibe nada a menos que agregues?send_offer_grant_email=true al final de la URL de Activación.