Saltar al contenido principal
Prevalidar un payment intent ayuda a reducir la posibilidad de que los pagos fallen debido a límites de transferencia. Hay dos formas de verificar la elegibilidad de un pago:
  • Usando el endpoint payment_intents/check_eligibility para verificar la elegibilidad antes de mostrar al usuario los métodos de pago aceptados.
  • Incluyendo un objeto sender_account al crear una Checkout Session o un Payment Intent para verificar cuando un usuario selecciona Fintoc como método de pago.
Al crear un payment intent, puedes incluir un objeto sender_account en tu solicitud. Este objeto te permite especificar los detalles de la cuenta del remitente, permitiendo a nuestro sistema realizar validaciones más precisas según los límites generales de transferencia y transacciones previas a través de Fintoc. Esta funcionalidad solo está disponible en Chile.
Esta validación solo verifica pagos hechos a través de Fintoc.Si ya has recibido pagos de usuarios en esta cuenta de destinatario, te recomendamos no usar esta funcionalidad ya que podría bloquear pagos válidos por error.

Usar el endpoint payment_intents/check_eligibility

Si quieres verificar la elegibilidad de un pago antes de mostrar al usuario los métodos de pago aceptados, puedes usar el siguiente endpoint:
cURL
El objeto sender_account contiene dos campos:
  • holder_id: el RUT (Rol Único Tributario) del titular de la cuenta
  • institution_id: el ID de la institución bancaria
Combinar estos campos te ayudará a validar ciertos límites:
  • Si solo envías el institution_id sin holder_id, Fintoc solo validará los límites específicos del banco para montos máximos y mínimos de transferencia.
  • Si envías ambos, Fintoc realizará todas las validaciones para el payment intent.
Si el pago es elegible, este endpoint responderá con el siguiente objeto:
JSON
Si no es válido, responderá con una de las respuestas de error como esta:
JSON

Incluir un objeto sender_account

Al hacer una solicitud POST para crear una Checkout Session, incluye el objeto sender_account en tu payload JSON. Aquí un ejemplo:
El objeto sender_account contiene dos campos:
  • holder_id: el RUT (Rol Único Tributario) del titular de la cuenta
  • institution_id: el ID de la institución bancaria
Combinar estos campos te ayudará a validar ciertos límites:
  • Si solo envías el holder_id sin institution_id, Fintoc usará límites generales para nuevos contactos, permitiendo que pasen más pagos sin cancelar incorrectamente.
  • Si solo envías el institution_id sin holder_id, Fintoc solo validará los límites específicos del banco para montos máximos y mínimos de transferencia.
  • Si envías ambos, Fintoc realizará todas las validaciones para el payment intent.
Usa el mismo Holder IDAl configurar el widget para prellenar un nombre de usuario, usa el mismo holder_id que para prevalidar pagos. Esto asegura consistencia y ayuda a prevenir fallas en los pagos.

Proceso de validación

Cuando incluyes la información de sender_account, nuestro sistema realiza varias verificaciones para validar el payment intent:
  1. Límites específicos de la institución: verificamos si el monto del pago está dentro de los límites permitidos para la institución especificada.
  2. Límites para nuevos contactos: para transferencias por primera vez o transferencias dentro de las 24 horas de la primera transferencia, las instituciones aplican límites más estrictos.
  3. Montos máximos de transferencia: nos aseguramos de que el pago no exceda el monto máximo permitido de transferencia para el banco especificado.

Respuestas de error

Si una validación falla, recibirás una de las siguientes respuestas de error:
  1. Error de límite máximo de monto para nuevo contacto: Fintoc primero verifica si el holder_id ha hecho una transferencia. Si no, luego verifica si el monto excede el límite de la institución.
  1. Error de límite de número de pagos para nuevo contacto: Fintoc primero verifica si el holder_id ha hecho su primera transferencia durante el mismo día. Si la ha hecho, luego verifica si la institución permite más de una transferencia a un nuevo contacto.
  1. Error de límite mínimo de monto: Fintoc verifica si el monto es menor al mínimo permitido por la institución.
  1. Error de límite máximo de monto: Fintoc verifica si el monto es menor al mínimo permitido por la institución.

Mejores prácticas

  1. Siempre incluye la información de sender_account al crear una Checkout Session para asegurar las validaciones más precisas.
  2. Maneja las respuestas de error de forma elegante en tu aplicación, proporcionando retroalimentación clara a tus usuarios sobre por qué un pago no pudo ser procesado.
  3. Haz ajustes a tu orden para que los usuarios puedan pagar. Estos podrían ser cambiar el monto del pago si es posible o configurar recordatorios para pagos futuros.