Construyendo una página de checkout con el plugin de Stripe de Kayana (Python)
Last updated Mar 5, 2026
Descripción general
La
API de pagos de Kayana
te permite aceptar pagos de clientes
sin construir tu propia infraestructura de pago
. Esta guía te acompaña en la integración del flujo de pagos usando el
complemento de Stripe escrito en Python
. El complemento maneja:
- Creación de sesiones de pago
- Comunicación con la API de pagos de Kayana
- Carga de Stripe Embedded Checkout
- Procesamiento seguro de pagos
En lugar de llamar manualmente a las API de pagos de Kayana, el complemento expone un punto de entrada simplificado: POST /launch Este endpoint:
- Crea una sesión de pago
- Abre la página de pago automáticamente
- Llama internamente a la pasarela de pagos de Kayana
- Inicializa Stripe Embedded Checkout
- Procesa el pago de forma segura
Lo que construirás
En esta guía, harás:
- Crear una instancia de pago usando la API de Kayana • Recuperar la publishable_key y client_secret de Stripe • Cargar la interfaz de usuario de Stripe Embedded Checkout • Procesar el pago de forma segura
Configuración del servidor
Inicia el servidor del complemento.
- python stripe_plugin.py
El servidor se ejecutará en:
- http://localhost:<port_number>
Endpoints disponibles:
- POST /launch
- POST /api/business-payment
- GET /proxy/debug
GET /docs
Antes de comenzar
Necesitarás:
- Un ID de propiedad de Kayana
- Una clave API de Kayana válida
- Python instalado
- Comprensión básica de API de Python y solicitudes HTTP
- Inicia el servidor del complemento.
- python stripe_plugin.py
- El servidor se ejecutará en:
- http://localhost:<port_number>
- Endpoints disponibles:
- POST /launch
- POST /api/business-payment
- GET /proxy/debug
- GET /docs
Sandbox frente a producción
| Entorno | Descripción |
| Sandbox | Se utiliza para probar pagos sin transacciones reales |
| Producción | Se utiliza para pagos en vivo con tarjetas reales |
Sandbox:
https://integration.dev.kayana.co.uk
Producción:
https://integration.kayana.co.uk
Cómo funciona
El flujo de pago consta de
tres pasos principales
.
Paso 1 — Lado del servidor
Crea una
instancia de pago
y recibe: publishable_key client_secret
Paso 2 — Lado del servidor
Devuelve estas claves al frontend.
Paso 3 — Lado del cliente
Carga
Stripe Embedded Checkout
usando esas claves y completa el pago.
Configura el servidor Python
Ejecuta el complemento:
python stripe_plugin.py Una vez iniciado, el servidor se ejecuta en: http://localhost:8000 El complemento proporciona varios endpoints.
| Endpoint | Propósito |
| /launch | Inicia una sesión de pago |
| /api/business-payment | Llama a la API de pagos de Kayana |
| /api/session | Recupera datos de la sesión |
| /payment/success | Muestra la página de éxito |
Paso 1 — Crear instancia de pago (recuperar claves de Stripe)
Luego, la página de pago recupera las claves de pago de Stripe. El complemento llama internamente a la API de Kayana: POST /web/payment Esta solicitud devuelve:
- publishable_key
- client_secret
Ambas claves son necesarias para inicializar
Stripe Embedded Checkout
.
Solicitud cURL
curl -X POST https://integration.dev.kayana.co.uk/web/payment \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY" \ -H "type: business" \ -d '{ "property_id": "Prop_abc123example", "psp_code": "STRIPE", "currency_code": "GBP", "amount": 12.0, "payment_mode": "CARD" }'
Respuesta de ejemplo
{ "status": true, "data": { "publishable_key": "pk_test_123456789", "client_secret": "cs_test_987654321" } }
Paso 2 — Lanzar la sesión de pago
El primer paso es iniciar el proceso de pago usando el
endpoint
/launch
del complemento. Este endpoint:
- valida la solicitud
- crea una sesión de pago
- almacena los metadatos de pago
- abre la página de pago en el navegador
Endpoint
POST /launch
cURL de ejemplo
curl -X POST http://localhost:8000/launch \ -H "Content-Type: application/json" \ -d '{ "property_id": "Prop_abc123example", "currency_code": "GBP", "amount": 12.0, "customer_email": "customer@example.com" }'
Respuesta de ejemplo
{ "launched": true, "session_id": "abc123-session-id", "url": "http://localhost:8000/?session_id=abc123-session-id" } Esto abre la página de pago: http://localhost:8000/?session_id=SESSION_ID
Paso 3 — Cargar Stripe Embedded Checkout
El frontend carga Stripe e inicializa el pago.
Incluir Stripe SDK
<script src="https://js.stripe.com/v3/"></script>
Inicializar Stripe
const stripe = Stripe(publishableKey);
Montar Embedded Checkout
const checkout = await stripe.initEmbeddedCheckout({ clientSecret }); checkout.mount('#stripe-checkout-container'); Stripe ahora muestra el formulario de pago seguro.
Soporte
¿Necesitas ayuda?
- Problemas técnicos: Contacta al soporte técnico de Kayana
- Credenciales de producción: Solicita a tu gerente de cuenta de Kayana
- Configuración de PSP: Ponte en contacto con el soporte técnico de Kayana
Próximos pasos
- Explora la integración de webhooks para notificaciones de pago
- Obtén más información sobre reembolsos y manejo de disputas
- Configura pagos recurrentes para suscripciones
Próximos pasos
Si prefieres usar RYFT como tu proveedor de servicios de pago (PSP), Kayana también admite un flujo de integración completo de RYFT. Consulta nuestra guía sobre Crear una integración avanzada de Kayana con RYFT en Python.
