1. Pagos recurrentes con tarjeta (Online)
Kushki Docs
Español
  • Español
  • English
  • Inicio
  • Inicio rápido
    • Últimas novedades
    • Preguntas frecuentes
    • Paso a producción
    • Política de cambios importantes del API
    • Datos de prueba
    • Códigos de error
  • Glosario de pagos
    • Glosario de pagos
  • Pagos únicos con tarjeta (Online)
    • Network Tokens
    • Marcas de tarjeta soportadas
    • Funcionalidades por modelo de negocio
    • Guía de integración Comisiones a terceros
    • ¿Cómo funcionan las Comisiones a terceros?
    • Pagos en un paso
      • Acepta un pago con tarjeta
      • Cargo directo (sin token)
      • ¿Cómo funcionan los pagos con tarjeta?
      • Acepta pagos únicos con OTP
      • Códigos de error autenticación OTP
      • Códigos de error pagos únicos con tarjeta
    • Pagos en dos pasos
      • Recibe pagos con autorización y captura
      • ¿Cómo funcionan los pagos únicos con autorización y captura?
    • Devoluciones
      • Devoluciones, anulaciones y reembolsos
    • Autenticación 3DS
      • Integración 3DS API + librería kushki.js
      • Introducción a 3DS
      • Integración 100% API de 3DS
      • Integración 3DS con librería kushki.js
      • Códigos de error autenticación 3DS
    • Pagos con Apple Pay
      • Configuración de Apple Pay
      • Pruebas en Sandbox Apple Pay
  • Pagos recurrentes con tarjeta (Online)
    • Autentica tus suscripciones con 3DS
    • Apple Pay en Suscripciones
    • Suscripciones externas a Kushki
    • Acepta pagos one click con 3DS
    • Funcionalidades por modelo de negocio
    • Códigos de error en cargos recurrentes
    • Pagos calendarizados
      • ¿Cómo funcionan los cargos recurrentes con tarjeta?
      • Maneja tus cargos calendarizados
      • Crea un cargo recurrente
    • Pagos OneClick
      • Genera pagos one click
      • Recibe pagos OneClick con autorización y captura
      • ¿Cómo funcionan los pagos OneClick con autorización y captura?
  • Pagos con tarjeta presente
    • Acepta pagos con tarjeta presente
    • Datos de prueba
    • Webhooks para tarjeta presente
    • Cloud Terminal API
      • Acepta pagos
      • Anula una solicitud de pago
      • Consulta el estado de una petición de cobro
      • ¿Cómo imprimir un ticket personalizado?
    • App-to-app
      • Acepta pagos
    • Transacciones
      • Anula un pago
      • Transacciones
    • Terminal SDK
      • Acepta pagos
    • Kushki One
      • Autenticación y Cifrado de Requests
      • Realiza cobros con Kushki One
      • Formato de montos en Kushki ONE
      • Impresión en terminal SmartPOS
      • Catálogo Unificado de Errores — Kushki ONE Connect
      • Servicios asíncronos y webhooks
    • Raw card-present API
      • Acepta pagos
      • Script de ejemplo para cifrar información
      • Intercambio de claves criptográficas
      • Preguntas frecuentes
      • Códigos de error para transacciones con tarjeta presente
    • Kushki One App de Pagos
      • Devoluciones y PreAuth & Capture
      • Procesa un cobro
      • Pago Dividido en la terminal
      • Consulta tus transacciones
      • Configuración del terminal
  • Pagos con transferencias
    • Bancos y detalles de operación para pagos con transferencia bancaria
    • Recibe transferencias bancarias
    • Consulta el estado de una transacción
  • Dispersión de dinero
    • Transferencia bancaria
      • Dispersa a cuentas bancarias
      • Códigos de error para dispersiones por transferencia
  • Plugins
    • Shopify
      • Operación del Plugin
    • Vtex
      • Guía de integración VTEX
  • Links de pago
    • Smartlinks
  • Formularios y botones de pago
    • Kajita
      • Kajitas de pago
      • ¿Cómo funciona?
    • Botón de pago
      • ¿Cómo funciona el botón de pago?
      • Genera un botón de pago
  • Administración de sucursales
    • ¿Cómo realizar el onboarding de subcomercios vía API?
  • Notificaciones
    • Buenas prácticas
    • Consulta tus webhooks
    • Webhooks para pagos únicos
      • Webhook para pagos únicos con tarjeta
      • Webhook para pagos únicos con transferencia bancaria
      • Webhook para pagos únicos con efectivo
    • Webhooks para dispersiones
      • Webhook para dispersión de dinero con transferencia
    • Webhooks para botón de pagos
      • Webhooks con Botón de pago
    • Webhooks para smartlinks
      • Webhooks con Smartlinks
    • Webhooks para pagos recurrentes
      • Webhook para pagos recurrentes con tarjeta
    • Webhooks para devoluciones
      • Webhook para devoluciones
      • Webhook para contracargos
HomeMexico 🇲🇽
Ecuador 🇪🇨Chile 🇨🇱Colombia 🇨🇴Peru 🇵🇪
HomeMexico 🇲🇽
Ecuador 🇪🇨Chile 🇨🇱Colombia 🇨🇴Peru 🇵🇪
Status
Soporte / Support
Español
  • Español
  • English
  1. Pagos recurrentes con tarjeta (Online)

Acepta pagos one click con 3DS

Producto en versión beta 🔐👨‍💻
Estamos trabajando en nuestra versión beta. ¡Manténte atento a su lanzamiento oficial! También puedes contactar a tu gerente de cuenta para más información.
Esta funcionalidad se encuentra disponible para los siguientes modelos:
☑ Adquirente

☐ Agregador
¿Tienes tu propio motor de autenticación 3DS?
Si es así, asegúrate de enviar el objeto threeDomainSecure al momento de guardar la tarjeta o ejecutar el cobro.
Para la seguridad de tu comercio, el equipo de prevención de fraude de Kushki te solicitará activar la validación 3DS, ya sea al momento de guardar la tarjeta o al momento de ejecutar el cobro on-demand o calendarizado, tal y como se explica a continuación.
Al tener activo el servicio de validación 3DS se solicitará a tus clientes completar un paso extra de verificación (en adelante challenge) con el emisor de la tarjeta para completar ciertas transacciones. Por lo general, dicho challenge consiste en un OTP enviado por el banco al correo electrónico o teléfono de tu cliente.

¿Cómo funciona la validación 3DS?#

Una vez el usuario guarde la tarjeta, podrá realizar pagos one click. Cuando este haga clic en el botón Pagar, Kushki validará si es necesaria la autenticación 3DS para la transacción. De ser requerida dicha validación, a tu cliente se le mostrará un challenge cuya experiencia podría variar dependiendo de la marca y del banco emisor. Cuando el usuario complete el challenge, podrá finalizar la transacción.
El flujo de autenticación 3DS con Kushki para pagos one click es el siguiente:
3DS Cargos one-click
Importante
Ten en cuenta que, debido a nuestras políticas de riesgo, los medios de pago disponibles y el tipo de integración pueden variar al momento en que formalices la afiliación. Te indicaremos cómo proceder en caso de que este proceso aplique para tu comercio.

Marcas soportadas en 3DS#

Marcas de tarjetas soportadas Perú - Débito
¿Quieres recibir pagos con 3DS?
Contáctanos para activar 3DS en tu comercio.
Básicamente, integrar la autenticación 3DS en pagos one click consiste en 2 etapas: Inscripción y Cobro.

Inscripción#

Sigue las instrucciones descritas en nuestra guía de Genera pagos one click para solicitar el token de inscripción de la tarjeta desde tu front-end y ejecutar la inscripción o tokenización de la tarjeta desde el back-end. Como resultado obtendrás un subscriptionId, el cual podrás usar para ejecutar cargos one click. Para realizar la autenticación de 3DS al momento de la inscripción de la tarjeta, sigue las instrucciones descritas en nuestra guía de Acepta pagos recurrentes con 3DS.

Cobro#

1. Configura tu front-end#

Aprovecharemos que nuestra librería Kushki.js ha sido importada y configurada anteriormente para utilizar un método que será de mucha ayuda para verificar la fiabilidad del cobro.
Primero, es necesario obtener el id de suscripción de la tarjeta a la que se realizará el cobro.
Luego, solicita el token de cobro y envíalo a tu back-end.
Revisa la documentación de nuestra librería Kushki.js para más información.
Recuerda incluir el objeto amount y el currency en esta petición. Estos serán necesarias para desplegar el modal de validación 3DS.
Cuando 3DS está activado, la respuesta obtenida desde el método requestDeviceToken() se verá de la siguiente manera:
A continuación la descripción de estas variables:
ParámetroTipoDescripción
authRequiredBooleanaEste campo te indica si se requiere o no challenge de 3DS.
acsURLURLHace referencia a la URL de la página del reto que el usuario debe pasar (Access Control System).
specificationVersionStringSe refiere a la versión de 3DS aplicable.
authenticationTransactionIdStringID de la transacción verificada desde las marcas.
paReqStringSignifica Payer Authentication Request. Es un campo codificado en base64 que contiene información de tu comercio y del tarjetahabiente y que se envía al emisor para la autenticación
Nota: en caso de estar haciendo pruebas en ambiente UAT, se debe enviar sandbox.
Una vez recibas la respuesta del Token con la estructura anterior, debes enviar el objeto security a Kushki consumiendo el método requestValidate3DS :
Si el valor de la variable authRequired es igual a true, el modal para validación de 3DS será presentado y tu cliente entonces recibirá el valor a ingresar por correo electrónico o mensaje de texto.
Si el valor de la variable authRequired es igual a false no se presentará el modal para la validación de 3DS.
La respuesta exitosa que recibirás en la función callback será:
{
  isValid: true
}
En caso de error, la respuesta de la función callback será algo como:
{ 
  "message":"error-message", 
  "code":"error-code"
}
La respuesta de la autenticación la obtendrás en el cargo. Si la autenticación se declina, recibirás un código K322 y alguno de los subcódigos especificados en la guía de Códigos de error.
El tarjetahabiente tendrá hasta un máximo de 3 reintentos para completar la autenticación 3DS.

2. Configura tu back-end#

Una vez recibido el token de cobro y autenticada la transacción, sigue las instrucciones de nuestra guía Genera pagos one click.
Importante ❗️⛔️
Asegúrate de enviar el CVV de la tarjeta de tu cliente al ejecutar la petición de cobro one-click.

3. Prueba tu integración#

A continuación encontrarás algunas tarjetas de prueba que puedes utilizar en modo prueba (UAT) para asegurarte que tu integración está lista. Úsalas con cualquier CVV, ingresa una fecha de expiración futura y una vez aparezca el modal de 3DS, ingresa 1234 como código de validación.
Transacción aprobada con generación de modal 3DS:
4456528080389860
4456529267234200
4456529165328302
4456524869770255
4456523340069956
Transacción aprobada sin generación de modal 3DS:
4456540000000063
4456543371713314
4456541982068615
4456541249811088
Importante
Para habilitar 3DS en modo pruebas en tu comercio se requiere una configuración adicional por parte de Kushki.

4. Prepara tu certificación#

Sigue las pautas descritas en nuestra guía de Genera pagos one click.
Modificado en 2026-09-21 22:20:28
Anterior
Suscripciones externas a Kushki
Siguiente
Funcionalidades por modelo de negocio
Built with