Saltar al contenido principal
Hay tres pasos para aceptar pagos usando Fintoc:
  1. En tu backend, crea una Checkout Session usando tu Secret Key
  2. Redirige a tu usuario a completar el pago en la página de checkout alojada por Fintoc
  3. Maneja los eventos posteriores al pago
El siguiente diagrama muestra cómo Fintoc interactúa tanto con tu backend como con tu frontend

Opcional: instala nuestro SDK de backend

Crea una sesión

El objeto Checkout Session representa tu intención de cobrar un pago a un cliente y rastrea los cambios de estado a lo largo del proceso de pago. Usando tu Secret Key, crea una Checkout Session desde tu backend con los parámetros requeridos: amount, currency, success_url y cancel_url como en el ejemplo siguiente:
Node
Envía el objeto Business Profile si estás procesando pagos para un subcomercioTambién puedes agregar el objeto business_profile al crear una sesión para personalizar el nombre mostrado como “Destinatario” en el flujo de pago.Lee aquí para aprender más.

Incluir Datos del Cliente (Opcional)

Al crear una Checkout Session, puedes incluir información del cliente. Esto permite que Fintoc muestre solo los métodos de pago disponibles para ese cliente específico, como verificar si el monto excede el límite de transacción para un banco seleccionado en el método de iniciación de pagos.
Flujos de pago específicos por banco para cuentas empresariales y montos altosEn pagos bank_transfer en Chile, si el pago está por encima de los límites de transacción o envías un customer con un tax_id.value de una empresa en lugar de una persona natural, Fintoc permitirá solo los bancos que tienen flujos de pago especiales para este tipo de transacciones (Banco Estado, Banco de Chile y Banco Santander). Puedes probarlo usando estas credenciales.

Preseleccionar un Método de Pago (Opcional)

Puedes crear una Checkout Session sin especificar métodos de pago. En este caso, los usuarios pueden seleccionar entre todas las opciones disponibles en la página de checkout alojada por Fintoc, según los parámetros de la sesión (amount, customer, currency) y los métodos de pago que has habilitado en Fintoc. Alternativamente, puedes definir explícitamente el método o los métodos de pago para la sesión. Por ejemplo, en la solicitud a continuación, se define el método payment_initiation, combinado con payment_method_options, donde la institución cl_banco_estado está preseleccionada para el usuario. En este escenario, el flujo de pago presentado al usuario estará limitado a este método y banco específicos.
Node

Izquierda: Vista predeterminada que muestra todos los métodos disponibles (transferencia bancaria y tarjetas) cuando no se define el parámetro payment_method. Centro: Flujo preseleccionado de bank transfer para Banco Estado, mostrando directamente el formulario de pago específico de la institución. Derecha: Flujo card preseleccionado.

Usar tu propia Página de CheckoutCuando tienes tu propia página de checkout, debes definir el payment_method para redirigir a los usuarios al checkout alojado por Fintoc después de que ya hayan seleccionado su método de pago preferido.Esto se salta la pantalla de selección de método de pago de Fintoc y dirige a los usuarios directamente al flujo de pago específico, en lugar de dejar que Fintoc maneje toda la experiencia de checkout.

Respuesta al crear una Checkout Session

Después de hacer la solicitud para crear la Checkout Session, Fintoc debería responder con algo como esto:
En la respuesta, deberías recibir el atributo redirect_url. En el siguiente paso, usarás este atributo para redirigir al usuario a completar el pago.

Redirige al usuario a completar el pago

A continuación, redirigirás a los usuarios a la página de checkout alojada por Fintoc. Después de completar el pago, serán redirigidos automáticamente a tu sitio. Según el resultado del pago, el usuario será redirigido a la URL de éxito o cancelación.

Maneja los eventos posteriores al pago

Una vez que una Checkout Session finaliza, manejas el resultado del pago en tu frontend y completas el pago en tu backend. Para tu backend, usarás los eventos enviados por webhooks.

Completa el pago en tu backend

Fintoc envía un evento checkout_session.finished y un payment_intent.succeeded cuando la sesión se completa y el pago es exitoso. Usa la guía de webhooks para recibir estos eventos y ejecutar acciones, como enviar un correo de confirmación de orden a tu cliente, registrar la venta en una base de datos o iniciar un flujo de envío. El evento checkout_session.finished incluye información sobre la sesión y el payment_intent:
Debes manejar los siguientes eventos posteriores al pago:
Manejo de pagos asíncronos después de que termina la Checkout SessionEn algunos casos, la Checkout Session puede finalizar con un pago que aún no tiene un estado final, como requires_action. Esto puede ocurrir, por ejemplo, cuando una transferencia bancaria desde una cuenta empresarial requiere la aprobación de más de un representante.En estos casos, al recibir el payment_intent.requires_action debes informar al usuario que el pago está pendiente de aprobación. Una vez que recibas el evento payment_intent.succeeded o payment_intent.failed, debes notificar al usuario el estado final del pago tan pronto como se confirme.

Prueba tu integración

Usando tu Secret Key de API en modo prueba, puedes crear pagos que simulan resultados exitosos y fallidos sin mover dinero real. Esto te permite validar tu flujo de pago completo de extremo a extremo:
  • Tus solicitudes a la API del backend (crear sesiones y manejar respuestas)
  • El flujo de redirección desde tu frontend a la redirect_url y de vuelta a la success_url o cancel_url después del pago
  • Webhooks para eventos posteriores al pago
Para aprender cómo activar escenarios específicos, usa las credenciales de prueba y valores especiales de prueba descritos en nuestra guía de pruebas.