Developer

Última actualización: 22 de febrero de 2019

Objetivo

Pagalo está formado por un webservice central y web App. El webservice central controla todo los movimientos y transacciones con métodos seguros para la empresa y los usuarios. La integración desde la página web o aplicación tiene token y API key secreta y pública. Trabajando de la siguiente manera:

Descarga

URL API

URLs

La integración es realizada por JSON, utilizando un token único del cliente más parámetros necesarios para datos (APIS KEY SECRETAS Y PÚBLICAS).

Nuestra URL de webservices para API es:
https://app.pagalocard.com/api/v1/integracion
Nuestra URL de pruebas webservices para API es:
https://sandbox.pagalocard.com/api/v1/integracion

Credenciales

IdenEmpresa
  • Dato enviado por los administradores de págalocard, al validar su usuario. Para identificar el idenEmpresa: Letra+9 Número Ej:"c564852135".
Token Empresa
  • Dato enviado por los administradores de págalocard, al validar su usuario. Para identificar el Token: Letras y Número de 20 caracteres.
Key Secret y Pública
  • Dato enviado por los administradores de págalocard, al validar su usuario. Para identificar el Token: Letras y Número de 20 caracteres.

Nota:

Toma en cuenta que las credenciales que utilices sean las del entorno correcto (live, test)

Parámetros necesarios para la empresa

Parámetros
PARÁMETRO DESCRIPCIÓN TIPO REQ
Key_secret Key proporcionada por Pagalo string SI
Key_public Key proporcionada por Pagalo string SI
IdenEmpresa Identidad de la empresa string SI
Ejemplo:
    
        {
            "idenEmpresa": "B44823229",
            "key_public" :  "TYy46vvpH002w7s0TewK5ltdYkq1pz0zLOjQur",
            "key_secret" :  "0HuZXIteXuUtc00rba2IUTUSiSI6wC4FoEXfQv",
        }
    

Enviar el array convertido a JSON, en algunos lenguajes se utiliza json encode:

Ejemplo:
    
        {
            "empresa":"{
                    \"key_secret\":\"E0qDeQBuCmdMYmI0hBSni74RMpebzeJDD0Jm\",
                    \"key_public\":\"23l1oHOgEhLRSclyeN1fAD5UBxSNl NIR4iDuqMbs\",
                    \"idenEmpresa\":\"P111321201\"
                }",
        }
    

Parámetros necesarios para el cliente

Parámetros
PARÁMETRO DESCRIPCIÓN TIPO REQ
firstName Nombre del cliente string SI
lastName Apellido del cliente string SI
street1 Dirección del envío string SI
country Abreviatura del país según iso 2 (GT, US, MX, etc.) string SI
city Ciudad o departamento del país string SI
state Estado o Municipio de la ciudad string SI
postalCode Código postal string SI
email Correo electrónico del cliente string SI
ipAddress IP del cliente string SI
phone Teléfono del cliente integer SI
total Total de la venta double SI
fecha_transaccion Fecha del momento de transacción Date "AAAA-MMDD HH:MM:SS" SI
deviceFingerprintID Huella digital string SI

¿Qué es el deviceFingerprintID?

Es la huella digital del dispositivo que realiza la transacción. Es un dato muy importante que se tiene en cuenta en el proceso de validación cuando se utiliza Cybersource. Si el comercio utiliza nada mas Paymen GateWay no es indispensable para realizar las transacciones. Para obtenerlo hay que incluir en el formulario de pago el segmento de código que se proporcionan a continuación.

Ejemplo:
    
        
    

Preste especial atencion a los dos parametros:

MerchantID: Utiliza "visanetgt_jupiter" cuando se está utilizando la llave de pagalo, en caso contrario utilizar el merchantID de la llave propia.

Environment: “test”/”live” Adicionalmente incluir el cybs_devicefingerprint.js al formulario de pago. Puede descargar el archivo aquí

Nota:

Recuerde que el DeviceFingerPrint es obligatorio únicamente si utiliza CyberSource, en el caso de utilizar no necesario lo agregue al arreglo. Adicional si trabaja bajo una llave propia de CyberSource contacte a PagaloCard para que puedan brindarle su merchanID , ya este se basa en su afiliación propia.

Ejemplo:
    
        $cliente[ ] = array(
            'firstName'     => Jhon,
            'lastName'      => 'Peter,
            'street1'       => '12 Avenida Zona 15',
            'country'       => 'Guatemala',
            'city'          => 'Ciudad de Guatemala',
            'state'         => 'Guatemala',
            'postalCode'    => '01015',
            'email'         => 'peterjsz@gmail.com',
            'ipAddress'     => '192.168.1.45',
            'Total'         => '70.00 ',
            'fecha_transaccion'   => '2017-08-31 09:05:00 ',
            'deviceFingerprintID' => 'ASDF32RDSF23DSFA32',
        );
    

Enviar el array convertido a JSON, en algunos lenguajes se utiliza json encode, realizarlo como el ejemplo de EMPRESA.

Parámetros necesarios del producto y/o items

Parámetros
PARÁMETRO DESCRIPCIÓN TIPO REQ
id_producto SKU o ID único para identificar el producto string SI
nombre Nombre del producto string SI
precio Precio del producto double SI
cantidad Cantidad del producto integer SI
tipo Tipo de Producto (producto, servicio,reserva) string SI
subtotal Precio x cantidad del producto double SI
Ejemplo:
    
        $detalle = [];

        foreach($productos as $producto) {
            $detalle[] = array(
            'id_producto' => 'P01',
            'cantidad'    => '2',
            'tipo'        => 'producto',
            'nombre'      => 'Hamburguesa',
            'precio'      => '35.00',
            'Subtotal'    => '70.00');
        }
    

Enviar el array convertido a JSON, en algunos lenguajes se utiliza json encode, realizarlo como el ejemplo de EMPRESA.

Ejemplo

Ejemplo de una Transacción
    
        { "empresa":"{\"key_secret\":\"E0qDeQBuCmdMYgULzmI0hBSni74RMpebzeJDD0Jm\",
        \"key_public\":\"23l1oHOgEhLRSclyeN1fAD5UBxSNlNIR4iDuqMbs\",
        \"idenEmpresa\":\"P111321201\"}",
        "cliente":"{\"codigo\":\"0001\",
        \"firstName\":\"Jhon\",
        \"lastName\":\"Peter\",
        \"street1\":\"12-45 Z.15, Guatemala\",
        \"country\":\"GT\",
        \"city\":\"Guatemala\",
        \"state\":\"GT\",
        \"email\":\"peterjsz@gmail.com\",
        \"ipAddress\":\"172.16.10.30\",
        \"Total\":2,
        \"currency\":\"GTQ\",
        \"fecha_transaccion\":null,
        \"postalCode\":\"01009\",
        \"phone\":\"2300\",
        \"deviceFingerprintID\":\"1536014945757\"}",
        "tarjetaPagalo": "{\"nameCard\":\"Jhon Peter\",
        \"accountNumber\":\"454881204940004\",
        \"expirationMonth\":\"12\",
        \"expirationYear\":\"2020\",
        \"CVVCard\":502}",
        "detalle":"[{\"id_producto\":\"P1\",
        \"cantidad\":\"1\",
        \"tipo\":\"producto\",
        \"nombre\":\"Consola de videojuegos\",
        \"precio\":4000,
        \"Subtotal\":4000}]"
        }
    

Códigos de Respuesta

CyberSource
CODIGO DESCRIPCIÓN
100 Transacción aprobada.
101 Transacción rechazada, falta uno o dos campos en la solicitud.
102 Datos de la solicitidud invalidos.
104 Transacción rechazada, intente nuevamente.
110 Transacción no aprobada, intente nuevamente.
150 Transacción invalida, contacte a soporte.
151 Time out.
152 Time out. Contacte a soporte.
200 Transacción rechazada, contacte a soporte.
201 Transacción rechazada, contacte a soporte.
202 Tarjeta vencida ó fecha de la tarjeta invalida.
203 Transacción rechazada, contate a su banco.
204 Fondos insuficientes.
205 Tarjeta reportada como robada o perdida.
207 Transacción rechazada, contacte a su banco.
208 La tarjeta o tarjeta inactiva no está autorizada para transacciones que no están presentes en la tarjeta.
209 CVV no valido.
210 Fondos insuficientes.
211 CVV no valido.
220 Transacción rechazada, intente nuevamente si persiste contate a soporte.
221 Transacción invalida. Contacte a soporte.
222 Transacción rechazada. Contacte a su banco.
230 Trate nuevamente, el sistema no reconocio CVV.
231 Número de tarjeta invalido
232 Tipo de tarjeta no valida, intente con otra tarjeta o contacte a soporte para detalles.
233 Transacción invalida. Intente nuevamente.
234 Credenciales invalidas, contacte a soporte.
235 Fondos insuficientes.
236 Transacción invalida, contacte a soporte.
237 Transacción invalida, contacte a soporte.
238 Transacción invalida, contacte a soporte.
240 Tarjeta invalida.
250 Time out.
251 Insuficiente información del cliente/dirección
254 Transacción invalida, contacte a soporte.
461 Datos no validos, contacte a soporte.
481 Transacción rechazada posiblemente por varios intentos, contacte a soporte para mas detalles
Payment Gateway
CODIGO DESCRIPCIÓN
00 Transacción aprobada.
01 Contacte a su banco emisor.
02 Contacte a su banco emisor.
03 Credenciales invalidas, contacte a soporte.
04 Contacte a su banco emisor.
05 Contacte a su banco emisor. Posible visacuota sin permisos del banco emisor.
07 Transacción rechazada, retener tarjeta.
12 Transacción invalida, intente nuevamente.
13 Fondos insuficientes.
14 Número de tarjeta invalido.
15 Credenciales invalidas, contacte a soporte.
19 Intenta nuevamente.
25 Credenciales invalidas, contacte a soporte.
30 Faltan datos obligatorios que enviar, contacte a soporte.
31 Error al validar campos de la tarjeta
35 Tarjeta invalida.
36 Transacción invalida, intente nuevamente.
41 Tarjeta reportada como perdida o robada.
43 Tarjeta reportada como perdida o robada.
51 Fondos insuficientes.
54 Tarjeta de fecha expirada.
58 Transacción rechazada, intente de nuevo.
61 Fondos insuficientes.
62 Tarjeta sin permisos, contacte su banco emisor.
65 Transacción invalida, contacte a soporte. Monto de afiliación.
78 Credenciales invalidas, contacte a soporte.
85 Transacción invalida, intente nuevamente.
89 Credenciales invalidas, contacte a soporte.
91 Emisor NO Disponible - TIME OUT
96 Transacción rechazada, contacte a soporte.