Está en la página 1de 5

Guía de integración (v1.

0)
1. Introducción

Cajero24 puede integrarse a través de programación a uno o más sitios web existentes. Cuando el
usuario va a pagar, se muestra un botón que despliega el proceso de pago, retornando al sitio web
una vez que el mismo se haya concretado.

2. Generar la solicitud de pago

En primer lugar, se debe generar una solicitud de pago haciendo una llamada a la API de Cajero24, a
la cual se envía la configuración requerida en formato JSON, de acuerdo a las especificaciones
indicadas en este documento.

La llamada debe incluir una clave de acceso única, que está ligada al comercio y punto de cobro que
se desee utilizar. En la sección «Integraciones» del Administrador de Cajero24 podrás encontrar las
claves correspondientes.

La solicitud a la API debe hacerse a https://cajero24.co/api/pay/create. El procedimiento puede


realizarse utilizando las herramientas disponibles en forma nativa en la mayoría de los lenguajes de
programación para aplicaciones web (no es necesario incluir ninguna librería, ni de servidor ni de
cliente). A modo de guía, se incluyen ejemplos sencillos desarrollados con PHP, cURL y JavaScript.

Por cuestiones de seguridad y para evitar la manipulación de los datos, las llamadas deben hacerse
desde el lado del servidor. En caso de utilizar JavaScript, es necesario realizar una consulta a una API
interna de desarrollo propio, que se encargará de hacer la llamada a la API de Cajero24 y devolver la
respuesta al cliente (ver ejemplos).
De acuerdo al lenguaje de programación que utilice el sitio web, te recomendamos consultar las
funciones equivalentes para realizar llamadas a una API.

3. Obtener el enlace de pago

Al realizar la llamada, la API devolverá un enlace único asociado a la solicitud. Este punto de entrada
es el que debe utilizarse para iniciar el proceso de pago.

Los enlaces de pago son válidos por 72 horas y pueden utilizarse durante este tiempo. Por ejemplo,
en caso de que fuera necesario reiniciar el flujo de pago, o por ejemplo si se enviara el link por
correo electrónico. Una vez concretado el pago, el enlace deja de ser válido.

4. Agregar un botón de acción

Una vez obtenido el link de pago, debe asociarse a un botón, enlace o procedimiento de redirección
de acuerdo a la lógica específica de la aplicación. Este elemento debe ser generado por el sitio web y
no requiere ninguna especificación técnica o gráfica por parte de Cajero24, por lo que puede
adaptarse completamente a la interfaz y experiencia de usuario del sitio web.

5. Estado del pago

Cuando el usuario realiza el pago, es redireccionado automáticamente a las URLs correspondientes


que se indicaron en la solicitud, según el pago haya sido exitoso, haya quedado pendiente o haya
tenido algún error.

Además, el estado y el identificador único de la transacción se pasarán como parámetros GET


dentro de estas URLs, a fin de que pueda asociarse el pago a la operación que llevó a cabo el usuario
dentro del sitio web.

6. Configuración de la solicitud de pago

Endpoint: https://cajero24.co/api/pay/create

access_token (requerido)
Es la clave de acceso única asociada al punto de cobro que se desee utilizar, podrás encontrarlas en
la sección «Integraciones» del Administrador de Cajero24.
currency (requerido)
Moneda en que se realizará el pago. Sólo se acepta el valor “ARS” para pesos argentinos.

external_reference (opcional)
Referencia externa asociada al pago. Puede utilizarse para sincronizar el pago con la lógica del sitio
web. Si se desea enviar más de un dato, se puede utilizar una cadena de texto en formato JSON (que
luego debe decodificarse desde la aplicación destino).

url_success (opcional)
URL a donde se redirecciona al usuario cuando el pago es exitoso.

url_pending (opcional)
URL a donde se redirecciona al usuario cuando el pago queda pendiente.

url_failure (opcional)
URL a donde se redirecciona al usuario cuando el pago no pudo realizarse.

items [array] (requerido)


Listado de los ítems que se cobrarán en el pago. Se requiere uno como mínimo. Este campo debe
enviarse como un array con los siguientes valores:

name (requerido)
Nombre identificativo del ítem.

external_reference (opcional)
Referencia externa asociada al ítem. Puede utilizarse para sincronizar el pago con la lógica
del sitio web. Si se desea enviar más de un dato, se puede utilizar una cadena de texto en
formato JSON (que luego debe decodificarse desde la aplicación destino).

amount (requerido)
Monto a cobrar. Sólo se aceptan números positivos decimales (el separador de decimales
debe ser un punto Ej. 99.99)

Ejemplo de solicitud:

[{
access_token:"00000000000000000000000000000000",
currency:"ARS",
external_reference:"Referencia_1234",
url_success:"https://mywebsite.com/success",
url_pending:"https://mywebsite.com/pending",
url_failure:"https://mywebsite.com/failure",
items:[
{name:"Item 1",
external_reference:"Referencia_Item1_1234",
amount:1499.99},
{name:"Item 2",
external_reference:"Referencia_Item2_1234",
amount:490}
]
}]

7. Respuesta devuelta

Al hacer una llamada a este punto de la API, se obtendrá como respuesta:

status
Indica el estado de la solicitud, será "success" si se generó correctamente; caso contrario, el valor
contendrá un código de error.

link
Es el punto de entrada al proceso de pago que debe asociarse a un elemento de acción dentro del
sitio web.

expiration
Fecha de vencimiento del link en formato Unix Timestamp. Los links son válidos durante 72 horas o
hasta que se concrete el pago.

Ejemplo de respuesta:

[{
status:"success",
link:"https://cajero24.co/p/pago/a4b74ed8-8993-4ba5-8f2b-c5a90323704f",
expiration: 1662614739
}]

8. Códigos de error

invalid_access_token
La clave única de acceso del punto de cobro no es válida.

invalid_point
El punto de cobro no es válido o se encuentra inactivo.
invalid_shop
El comercio no es válido o se encuentra inactivo.

invalid_currency
La moneda indicada no es válida. Sólo se acepta el valor “ARS” para pesos argentinos.

no_items
No se recibió ningún ítem para cobrar o el formato es incorrecto (el campo “items” debe enviarse
como array). Se requiere la configuración de un ítem como mínimo.

invalid_item_name
Se requiere indicar el nombre de cada ítem.

invalid_item_amount
El monto a cobrar de alguno de los ítems no es válido. Sólo se aceptan números positivos con dos
decimales (el separador de decimales debe ser un punto).

9. Ejemplos

Haciendo clic en este enlace podrás descargar ejemplos básicos desarrollados con PHP, cURL y
JavaScript.

10. Soporte

En caso de requerir asistencia técnica adicional, te pedimos que envíes una solicitud de ayuda desde
la zona de Soporte del Administrador de Cajero24. Nuestro equipo se comunicará a la brevedad.

También podría gustarte