Skip to content

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 ​

bash
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:

json
{
  "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:

bash
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.

Ver también ​

Documentación oficial de Paytami