Novedades en la versión 2

La versión 2 de nuestra API de Checkout Redireccionado permite una mayor flexibilidad en la configuración de los métodos de pago y mejora el rendimiento de las notificaciones webhook.


Las nuevas características de la versión 2 son:

  • Flexibilidad en la configuración de pagos:
    • Pagos internacionales: Habilita o rechaza los pagos con tarjetas internacionales.
    • Aceptación de MSI: Selecciona qué meses sin intereses quieres aceptar. (3, 6, 9, 12 o 24),
    • Marcas de tarjetas: Personaliza las marcas de las tarjetas que quieras aceptar como Visa, Carnet, Amex, Mastercard y Vales.
    • Métodos de pago: Acepta ciertos tipos de pagos como como crédito, débito, efectivo y transferencia bancaria.
    • Otras monedas: Además de pesos mexicanos (MXN), ahora podrás aceptar también dólares (USD).
  • Vigencia del link de pago: Se ha renombrado el campo como "expires_at", permitiendo de manera más clara establecer fechas de expiración para las transacciones.
  • Aceptar propinas: Se ha renombrado el campo como "tip_enabled", siendo más claros en la acción de activar o desactivar la opción de propinas.
  • Webhook smart retries: Ahora se reciben de forma aún más rápida, con la información estrictamente necesaria y reintentamos hasta 4 reenvíos de notificaciones fallidas automáticamente.
  • Solicitar autenticación: Puedes solicitar que un pago sea autenticado por 3DS.

Estos cambios se realizaron para mejorar la forma de interactuar con nuestra API haciendo más sencilla la integración, así como para lograr un mejor uptime y un tiempo de respuesta menor.

Puedes realizar pruebas usando nuestro widget para probar estas nuevas características de esta versión 2 de nuestra API de Checkout.


Comparativa de V1 vs V2

FUNCIONALIDAD

V1

V2

VENTAJAS DE LA V2

Pagos Internacionales

No disponible

Disponible a través de (international_enable)

Expande el alcance de tu negocio a nivel global.

Aceptación de MSI

No disponible

Definición de plazos a meses sin intereses (installments_msi).

Mayor flexibilidad en las opciones de pago para los usuarios.

No olvides habilitarlo primero en tu cuenta Clip.

Marcas de tarjetas

No disponible

Especificación detallada de marcas de pago (payment_methods_brands).

Posibilidad de aceptar una mayor variedad de métodos de pago, lo que mejora la experiencia del usuario.

Métodos de pago

No disponible.

Especificación de tipos de métodos de pago (payment_methods_type).

Permite aceptar diversos tipos de pago, incluyendo efectivo y SPEI.

Vigencia del link de pago

No disponible

Establecimiento de fechas de expiración para transacciones (expires_at).

Mejora el control sobre la gestión de pagos y reduce riesgos asociados a transacciones vencidas.

Aceptar propinas

Limitado.

Activación o desactivación de propinas (tip_enabled).

Facilita la personalización de las transacciones para negocios que manejan propinas.

Aceptar dólares

No disponible

Aceptar pagos tanto en pesos mexicanos como en dólares ("currency": "USD").

Facilita la personalización de las transacciones para negocios que manejan transacciones internacionales.



Nuevos parámetros en la versión 2

Elemento

Descripción

Tipo

Notas

override_settings

Objeto que el servicio solicitante puede utilizar para cambiar la configuración por default del Checkout.

Objeto

Este objeto es opcional  
Permite sobreescribir la configuración de los parámetros por defecto del Checkout.

tip_enabled

Muestra u oculta las propinas.

Boolean

Este elemento  es opcional  
Si enabled: true se mostrarán las propinas.
 

Si enabled: false se ocultarán las propinas.

expires_at

Indica la fecha y hora de expiración de la solicitud de pago. Tiene que ser mayor a 00:01:00 minuto y menor a las 23:59:59 horas (UTC) del mismo dia de creación de la solicitud

String

Este objeto es opcional Formato ISO 8601 ( YYYY-MM-DDTHH-MM-SSZ).  Su valor default es tres días

metadata

Objeto que el servicio solicitante puede utilizar para identificar la intención de pago.

Objeto

Formato JSON

El conjunto de parejas llave:valor lo puede definir el desarrollador.

Este objeto es opcional , los elementos external_reference  y customer_info  se muestran como ejemplo.

external_reference

ID de referencia de la orden para rastrear las transacciones.

String

 Longitud máxima: 36 caracteres.

Caracteres especiales permitidos: Guión medio (-) y Guión bajo (_).

Se permiten acentos.

Los espacios en blanco serán removidos.

Este elemento  es opcional  y es un ejemplo de lo que puedes incluir dentro del objeto metadata.

custom_payment_options

Objeto con la configuración de los meótodos de pago aceptados.

Objeto

international_enabled

Te permite aceptar tarjetas internacionales o rechazarlas en automático.

Boolean

Para aceptar tarjetas internacionales, deberás antes verificar tu identidad, de lo contrario aunque mandes este campo en true es probable que sean rechazadas.

Se envía de esta forma: "international_enabled": true

installments_msi

Te permite configurar cuántos meses sin intereses quieres aceptar para la transacción.

Int array

Posibles valores: 3, 6, 9,12,18, y 24.

Tienes que configurar los MSI desde tu app o dashboard.

Se envía de esta forma:"installments_msi": [3,6,9,12,18,24]

payment_method_brands

Te permite configurar las marcas de tarjetas que quieres aceptar.

String array

Valores permitidos: visa|mastercard|amex|carnet|discover|diners.

Se envía de esta forma:"payment_method_brands": ["visa","mastercard","amex","carnet", "discover", "diners"]

payment_method_types

Te permite configurar los métodos de pago aceptados.

String array

Valores permitidos: debit, credit y cash.

Se envía de la siguiente forma: "payment_method_types": ["debit","credit","cash"]


Ejemplo:

En el siguiente ejemplo aceptaremos únicamente tarjetas de crédito marca Visa a 9 meses sin intereses.

{
    "amount": 500,
    "currency": "MXN",
    "purchase_description": "Únicamente tarjetas de crédito marca VISA y a 9 MSI",
    "custom_payment_options": {
        "payment_method_types": ["credit"],
        "installments_msi": [9],
        "payment_method_brands": ["visa"]
    }
}

Se obtiene la siguiente respuesta:

{
    "payment_request_id": "c3effa5a-8ee8-47c6-b115-efcabf8a53f8",
    "object_type": "payment_link",
    "status": "CHECKOUT_CREATED",
    "last_status_message": "Payment Request created successfully",
    "created_at": "2024-09-18T23:10:15Z",
    "payment_request_url": "https://pago.clip.mx/c3effa5a-8ee8-47c6-b115-efcabf8a53f8",
    "modified_at": "2024-09-18T23:10:15Z",
    "expires_at": "2024-09-21T23:10:15Z",
    "qr_image_url": "https://qr.payclip.com/c3effa5a-8ee8-47c6-b115-efcabf8a53f8",
    "api_version": "2"
}

Y el siguiente es un ejemplo de lo que sucede cuando se ingresa una tarjeta que no es Visa:


Y este es un ejemplo de lo que se observa al ingresar una tarjeta Visa: