Saltar al contenido

Link Dinámico

Link dinámico del Botón de Pagos para Desarrolladores
PayAgile le permite conectarse a través de APIREST a la funcionalidad del botón. Para la integración se describe los siguientes procesos:

  1. Se debe enviar mediante APIREST lo siguientes datos:
Tipo: POST
Url de envío: https://portal.botonpagos.com/api/datafast/linksApi
1.1 Parámetros Obligatorios:
1.1.1 Código del Establecimiento code => texto (30) (Se envía como cabecera de la petición y este código es proporcionado por Botón Pagos)
1.1.2 Productos (Enviar en formato Json) products => array ( 0 => array ( id => int, quantity => double (10,2), price => double (10,2), subtotal => double (10,2), tax => double (10,2), total => double (10,2) ) )
1.2 Parámetros Opcionales:
1.2.1 Datos de Cliente (Enviar en formato Json) customer => array ( name => texto(50) (opcional), last_name => texto(50) (opcional), document => texto(20) (opcional), email => texto (opcional), phone => texto(20) (opcional), address => texto (opcional), aditional_data => texto (opcional) )
1.2.2 URL de respuesta url_response => texto (Opcional) Llamada tipo POST
1.2.3 Descripción description => texto (Opcional)
Ejemplo de uso con PHP

<?php
//Armo los productos de la orden
//ID del Producto en la Tienda
$products[0]['id'] = 01;
//Cantidad del producto
$products[0]['quantity'] = 2;
//Valor del producto
$products[0]['price'] = 5.00;
// Subtotal del producto
$products[0]['subtotal'] = 10.00;
// Impuesto del producto
$products[0]['tax'] = 1.20;
//Valor total del producto
$products[0]['total'] = 11.20;

//Armo los datos del cliente
//Nombres del cliente (Opcional)
$customer['name'] = 'Pedro Andres';
//Apellidos del cliente (Opcional)
$customer['last_name'] = 'Ramirez Cando';
//Documento de Identidad del cliente (Opcional)
$customer['document'] = '1785698847';
//Email del cliente (Opcional)
$customer['email'] = '[email protected]';
//Telefono del cliente (Opcional)
$customer['phone'] = '0984571241';
//Direccion del cliente (Opcional)
$customer['address'] = 'Av. Amazonas y Patria';
//Motivo de Transacción / Notas Adicionales (Opcional)
$customer['aditional_data'] = 'Venta de Suministro';
        
//Armo el array a enviar
$datos = array(
        'products' => json_encode($products),
        'customer' => json_encode($customer)  // (Opcional) Enviar solo si se desea enviar datos del cliente
        'url_response' => 'https://url_de_respuesta.com', // (Opcional) Llamada tipo POST
        'description' => 'Descripción de link' // (Opcional)
);

//Dirección para generar link de pagos
$url = 'https://portal.botonpagos.com/api/datafast/linksApi';
//Consulta vía CURL
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'code: ID del comercio'//ID provisto por BotónPagos
));
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $datos);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$responseData = curl_exec($ch);
//Si existe un error de conexión
if (curl_error($ch)) {
    echo curl_error($ch);
}
curl_close($ch);
//Paso a array los datos obtenidos en Json
$responseData = json_decode($responseData, true);
?>
2. Link de Pagos
Como resultado del paso anterior se obtiene un objeto json con código de error en caso de que no se haya podido procesar los datos enviados.

La variable $responseData[‘error_code’] será igual a 1 si existe un error y la descripción del error estará contenida en la variable $responseData[‘error_description’]

En caso de que no existe un error se obtendra un link mediante el cual el cliente podrá realizar el pago.

El resultado debería ser el siguiente:

https://portal.botonpagos.com/datafast/pagos/checkout/[code]

Con eso se termina la generación del link de pagos.