Checkout Clip te ayuda a integrar una solución de pago segura a tu tienda en línea. Cuando tus clientes estén listos para pagar, serán redirigidos a un sitio de pago en línea, generado por tu tienda en línea a través de la API de Checkout.

El siguiente diagrama muestra cómo funciona la API de Checkout al integrarla a tu tienda en línea:

15901590

Diagrama de integración de Checkout Clip a tu tienda en línea.

Objeto Completo

Ya sea que hayas generado un nuevo link de pago o estés revisando el estado de un link de pago generado previamente, la siguiente tabla describe los elementos del objeto de respuesta completo que recibirá tu sistema:

Elemento

Descripción

Tipo

Notas

payment_request_id

Identificador del link de pago.

String

Formato UUID.

Longitud máxima 36 caracteres.

Se genera un nuevo payment_request_id en cada solicitud para Crear un nuevo link de pago

object_type

Valor estático del link de pago “payment_request”.

String

Valor fijo

status

Estado actual del link de pago.

String

 Los estados posibles son:

CHECKOUT_CREATED: El link de pago fue creado exitosamente.

CHECKOUT_PENDING: El link de pago tuvo un intento de pago y se encuentra activo.

CHECKOUT_CANCELLED: El link  de pago fue cancelado por exceso de intentos (máximo 5).

CHECKOUT_EXPIRED: El link de pago expiró. El link de pago expira después de 1 hora.

CHECKOUT_COMPLETED:El link de pago se liquidó.

last_status_message

Mensaje del último estado del link de pago dependiendo del elemento status.

String

amount

Número con decimales que representa el monto a cobrar.

Float

El número mínimo entero es 1.

Utilizar dos decimales.

Para representar 50 pesos y 50 centavos el valor del parámetro amount sería ‘50.50’

receipt_no

Identificador de la transacción, se mostrará en el evoucher de la transacción.

String

Este campo se muestra cuando el valor de status  es CHECKOUT_COMPLETED

currency

Código de tres caracteres representando la moneda.

String

Formato ISO 4217 (Mayúsculas).

Nota:  Por el momento, solo aceptamos pesos mexicanos “MXN”

purchase_description

Texto describiendo el cargo.

String

Formato UTF-8

Se aceptan los siguientes caracteres especiales

[email protected]#$%^&*()\\=+\\\\|\\[{\\]};:'\"<>/?

No se aceptan emojis.

Longitud mínima: 1

Longitud máxima: 255

redirection_url

Objeto con las URLs para redirección del cliente después del pago.

Objeto

success

URL a la que se redireccionará al cliente cuando el pago es exitoso.

String

failure

URL a la que se redireccionará al cliente cuando han fallado varios intentos.

String

default

URL de la tienda virtual.

String

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 me_reference_id  y customer_info  se muestran como ejemplo.

me_reference_id

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.

customer_info

Objeto con la información del cliente para el link de pago.

Objeto

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

name

Nombre del cliente que realiza la transacción.

String

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

email

Correo electrónico del cliente que realiza la transacción.

String

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

phone

Número telefónico del cliente que realiza la transacción.

Number

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

created_at

Indica la fecha y hora de creación del enlace de pago.

String

 Formato ISO 8601 ( YYYY-MM-DDTHH-MM-SSZ )

modified_at

Indica la fecha y hora de modificación del enlace de pago.

String

Formato ISO 8601 ( YYYY-MM-DDTHH-MM-SSZ )

payment_request_url

Link de pago a donde se redirigirá al cliente.

String

expired_at

Indica la fecha y hora de expiración del enlace de pago.

String

Formato ISO 8601 ( YYYY-MM-DDTHH-MM-SSZ )

El objeto completo en formato JSON se muestra a continuación:

{
  "payment_request_id": "2cbf5775-1cdd-4601-9712-c4a6ab7fa6f5",
  "object_type": "payment_link",
  "status": "CHECKOUT_CREATED",
  "last_status_message": "Payment Request is active",
  "amount": 100.25,
  "receipt_no": "EyCtYWF",
  "currency": "MXN",
  "purchase_description": "Backpack's sale",
  "redirect_url": {
     "success": "https://my-website.com/redirection/success",
     "error": "https://my-website.com/redirection/error",
     "default": "https://my-website.com/redirection/default",
  },
  "metadata": {
     "me_reference_id": "OID123456789",
     "customer_info": {
        "name": "Alejandro Lee",
        "email": "[email protected]",
        "phone": "5512345678"
     }
   }
  "created_at": "2020-04-30T00:00:00.000Z",
  "modified_at": "2020-04-30T00:00:00.000Z",
  "payment_request_url": "https://completa-tu-pago.payclip.com/b7192811-6fa0-4038-b8dc-ad755dad1975",
  "expired_at": "2020-04-30T00:00:00.000Z"
}

Mensajes de error

La siguiente tabla detalla los mensajes de error para la API de Checkout Clip

Código HTTP

Mensaje

Código de mensaje

Detalle

400

Objeto no encontrado

001

Cuerpo de la solicitud vacío

400

Entrada inválida

002

Error de validación de formato

400

Campo inválido

003

Error de validación de contenido

400

Solicitud incorrecta

004

Error al crear payment_link

401

Error de autorización

011

Token de autenticación incorrecto

403

Prohibido

-

Solicitud bloqueada.Si tu sitio web está alojado en un servidor fuera de México o EUA, favor de contactar a Customer Happiness para recibir asistencia.

Ejemplo del mensaje de error

404

No encontrada

021

Página no encontrada

412

Límite de solicitudes alcanzado

031

Las siguientes son los motivos de excedentes del límite de solicitudes:

* Mónto máximo por link de pago

* Nùmero de links creados por día

* Max TPV acumulado por  link creado por día

500

Error de Servidor Interno

101

Hubo un error en la validación del payment_link.

Este es un ejemplo del objeto de error en formato JSON:

{
  “message”: ”Solicitud incorrecta”, 
  “code_message”: ”004”,
  “detail”: “Error al crear payment_link”
}

Incorpora el botón Clip

662662

Completa el proceso usando nuestros botones y comunica a tus clientes que cobras con Clip.

  • En distintos formatos visuales
  • Adaptables a cada tamaño de pantalla
  • Con varios estilos para cada contexto de uso

Conocer botones Clip.


📘

¿Necesitas ayuda?

Si tienes preguntas sobre cómo hacer la integración de la API, puedes contactar a nuestros desarrolladores técnicos mediante los siguientes pasos:

  1. Crear un ticket al seleccionar el botón Ayuda disponible en la parte inferior derecha de este sitio.
  2. Llena la información solicitada y envía tu solicitud de ayuda. Te responderemos en alrededor de 2 horas en días laborables.