Checkout hospedado
La forma más simple de cobrar: tu backend crea el pago y redirige al cliente a una página de pago que Paytami hospeda. No manejas formularios de tarjeta ni te preocupas por PCI — todo el flujo de pago vive en el dominio de Paytami.
Es el flujo recomendado para comercios que cobran desde su propio backend.
El flujo
1. Tu backend 2. Paytami 3. Tu backend
crea el pago ───► hospeda el ───► confirma el
(POST /v1/payments) checkout resultado
(redirect) (GET /v1/payments/{id}
o webhook)1. Crea el pago desde tu backend
curl https://app.paytami.com/api/v1/payments \
-X POST \
-H "Authorization: Bearer sk_live_..." \
-H "Idempotency-Key: 6e4b6f0a-a5f0-4b9a-9b8b-1a2b3c4d5e6f" \
-H "Content-Type: application/json" \
-d '{
"amount": "25000",
"currency": "GTQ",
"method_type": "card",
"description": "Colegiatura agosto 2026",
"success_url": "https://tu-sitio.com/gracias",
"cancel_url": "https://tu-sitio.com/carrito",
"customer": { "email": "cliente@ejemplo.com", "name": "Ana Pérez" }
}'Guarda el id (pay_...) de la respuesta — es la referencia estable de este cobro en tus propios registros.
2. Redirige al cliente a checkout_url
La respuesta ya incluye la URL de pago, siempre en el dominio de Paytami:
{
"id": "pay_8f2c1a9d4e6b7c0a1d2e3f40",
"status": "created",
"checkout_url": "https://app.paytami.com/api/v1/checkout/pay_8f2c1a9d4e6b7c0a1d2e3f40"
}Manda al cliente ahí (redirect completo de la página, no un iframe — para eso existe el checkout embebido). Paytami se encarga de mostrarle el formulario de pago y, al terminar, lo regresa a tu success_url o cancel_url según corresponda.
3. Confirma el resultado desde tu backend
Que el cliente haya vuelto a tu success_url es una señal de UX, no una prueba de que el pago se completó — el cliente pudo cerrar la pestaña antes, o la confirmación del método de pago puede tardar (por ejemplo, una transferencia bancaria). Antes de entregar el producto o activar el servicio, confirma el estado real:
curl https://app.paytami.com/api/v1/payments/pay_8f2c1a9d4e6b7c0a1d2e3f40 \
-H "Authorization: Bearer sk_live_..."TIP
Si ya tienes webhooks configurados, puedes reaccionar al evento payment.succeeded en vez de hacer polling — pero la fuente de verdad siempre es la API, nunca asumir el resultado solo por la redirección.
Cobros recurrentes / suscripciones (próximamente)
Paytami está trabajando en soporte nativo para planes y facturación recurrente. Por ahora, cada cobro se crea de forma individual con POST /v1/payments — si tu negocio necesita cobrar periódicamente, contáctanos para conversar sobre tu caso de uso.

