Autorización Captura

Paguelofacil ofrece la posibilidad de realizar una autorización y captura en una sola transacción.


  

Prerrequisitos

CCLW
Llaves de conexión al API
Certificado SSL
TLS 1.3 o superior

  

Base URL de ambientes

Producción
https://secure.paguelofacil.com/
Pruebas
https://sandbox.paguelofacil.com/
Servicio POST
/rest/processTx/{TRANSACCION_TYPE}

Autorizar y Captura una transacción

Para realizarla solo debes hacer una petición con la solicitud de autorización Captura y procesar la respuesta una vez la transacción sea procesada.

Descripción de parámetros

Parámetro Tipo Requerido Descripción
cclw

String


Ej.: A7BFCAF7B6……….

Si Este es el código web que recibe de parte de Paguelofacil y que identifica a su comercio
amount

 Numeric, Money
 

 

Ej.: 10.00 – 1450.15 – 9.14

Si El monto o valor total de la transacción a realizar.
NO PONER COMAS (,) o separador de miles.
taxAmount

 Numeric, Money
 


Ej.: 10.00 – 1450.15 – 9.14

Si Declaras cuanto de ese monto es ITBMS
NO PONER COMAS (,) o separador de miles.
email  String MaxLength:100
 
Si  Email del Tarjeta habiente
phone  Numeric MaxLength:16
 
Si  Teléfono del Tarjeta habiente
address  String MaxLength:100 No  Dirección del la tarjeta
concept  String MaxLength:100
 
Si  Concepto de la transacción
description  String MaxLength:150
 
Si  Descripción de la transacción
ipCheck  Ip (0.0.0.0)  No  Dirección Ip del Comprador, está información es analizada para fraude de la transacción
lang  String MaxLength:2 No

 Idioma de la transacción. Valores posibles:

  • EN para Inglés
  • ES para Español
customFieldValues

 Array de campos con formato: (id, label, value)

No  Información adicional de la transacción. Serán retornados cuando implementas el api de consulta de transacciones
cardInformation  Arreglo de campos con formato: (cardNumber,  expMonth, expYear, cvv, firstName, lastName, cardType) Si

 Información de la tarjeta de crédito del comprador.

  • cardNumber: Número de la tarjeta de crédito
  • expMonth: Mes en el que expira la tarjeta
  • expYear: Año en el que expira la tarjeta
  • cvv: código de seguridad
  • firstName: Nombre del cliente
  • lastName: Apellido del cliente
  • cardType: Tipo de tarjeta VISA o MASTERCARD

Petición 

Realiza la petición de la autorización indicándonos en la URL que es una "AUTH_CAPTURE".

                    
//Ejemplo de AUTH_CAPTURE

$urlConfig = "https://secure.paguelofacil.com/rest/processTx/AUTH_CAPTURE";

$cclw = 'D17B05A095489D1176560B4666A283454185F353F401D0201CC5C16F92535DF6B1DEBA18E79442CC0D6F75FD024207680AFBDFD6CF015478BF30CBEF9160A08D ';
$amount=3.50;//El monto o valor total de la transacción a realizar. NO PONER
$description='Nro-Order-523';//MaxLength:150 ;Es la descripción o el motivo de la transacción en proceso
$credit_card='4916000000000000';
$carType = 'VISA';
$credit_card_month="12";//Mes de expiración de la tarjeta, siempre 2 dígitos
$credit_card_year="32";//Numeric Ej.:02 Año de expiración de la tarjeta.
$credit_card_cvc="003";//Código de Seguridad de la tarjeta Numeric MaxLength:3

$name='alam';//String MaxLength:25 Nombre del tarjeta habiente
$lastname='brito';//String MaxLength:25 Apellido del Tarjeta habiente
$email='alambrito@correo.com';//String MaxLength:100 Email del
$address='testing new address';//String MaxLength:100 Dirección del Tarjeta
$phone='60201236';//Numeric MaxLength:16 Teléfono del Tarjeta habiente


    $data = array(
        "cclw" =>  $cclw ,
        "amount" => $amount,
        "taxAmount" => 1.00,
        "email" => $email,
        "phone" => $phone,
        "address" => $address,
        "concept" => $description,
        "description" => $description,
        "ipCheck" => '100.23.45.51',
        "lang" => 'ES', //EN
        "customFieldValues"  => [["id"=>"idOrder","nameOrLabel"=>"Nro de Orden","value"=>"OD-234567"],
                            ["id"=>"idUser","nameOrLabel"=>"User","value"=>"24"],
                              ["id"=>"idTx","nameOrLabel"=>"Txtx","value"=>"678643"],
                                ["id"=>"reference","nameOrLabel"=>"Referencia","value"=>"6754"],
                            ["id"=>"activo","nameOrLabel"=>"estado","value"=>"true"]],
        "cardInformation" => array(
            "cardNumber" => $credit_card,
            "expMonth" => $credit_card_month,
            "expYear" => $credit_card_year,
            "cvv" => $credit_card_cvc,
            "firstName" => $name,
            "lastName" => $lastname,
            "cardType" => $carType,
        )
    );


$json=json_encode($data);

$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, $urlConfig);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json','authorization:WT5hTaUcpa4J3h4AmrZa2EXXJs8boUVa|DIRd852djHbq2j5Fca5VDUkDbExTBCVf'));
curl_setopt($ch,CURLOPT_POSTFIELDS,$json);

$result = curl_exec($ch);

echo "<br>";
echo "Respuesta de paguelo Facil";
echo "<br>";

$result = json_decode($result, true);
                    
                
                    
const request = require("request");

let callAuth = () => {

    let payload = {
        cclw: 'D17B05A095489D1176560B4666A283454185F353F401D0201CC5C16F92535DF6B1DEBA18E79442CC0D6F75FD024207680AFBDFD6CF015478BF30CBEF9160A08D ',
        amount: 3.50,//El monto o valor total de la transacción a realizar. NO PONER
        taxAmount: 1.0,
        email: 'alambrito@correo.com',//String MaxLength:100 Email del
        phone: '60201236',//Numeric MaxLength:16 Teléfono del Tarjeta habiente,
        address: 'testing new address',//String MaxLength:100 Dirección del Tarjeta,
        concept: 'Nro-Order-523',//MaxLength:150 ;Es la descripción o el motivo de la transacción en proceso
        description: 'Nro-Order-523',//MaxLength:150 ;Es la descripción o el motivo de la transacción en proceso
        lang: 'ES', //EN
        customFieldValues: {{"id"=>"idOrder","nameOrLabel"=>"Nro de Orden","value"=>"OD-234567"},
                            {"id"=>"idUser","nameOrLabel"=>"User","value"=>"24"},
                              {"id"=>"idTx","nameOrLabel"=>"Txtx","value"=>"678643"},
                                {"id"=>"reference","nameOrLabel"=>"Referencia","value"=>"6754"},
                            {"id"=>"activo","nameOrLabel"=>"estado","value"=>"true"}},
        cardInformation: {
            cardNumber: '4916000000000000',
            expMonth: "12",//Mes de expiración de la tarjeta, siempre 2 dígitos
            expYear: "32",//Numeric Ej.:02 Año de expiración de la tarjeta.
            cvv: "003",//Código de Seguridad de la tarjeta Numeric MaxLength:3
            firstName: 'alam',//String MaxLength:25 Nombre del tarjeta habiente
            lastName: 'brito',//String MaxLength:25 Apellido del Tarjeta habiente
            cardType: 'VISA'
        }
    };

    let options = {
        method: 'POST',
        url: 'https://sandbox.paguelofacil.com/rest/processTx/AUTH_CAPTURE',
        headers: {
            "authorization": 'WT5hTaUcpa4J3h4AmrZa2EXXJs8boUVa|DIRd852djHbq2j5Fca5VDUkDbExTBCVf',
            "content-type": 'application/json'
        },
        body: payload,
        json: true
    };

    request(options, (error, response, body) => {
        if (error) throw new Error(error);

        console.log("Response Authorize Service: ", body);
        console.log("Business logic...");
    });
};
                    
                

Respuesta 

//Ejemplo de AUTH
{ 
   "headerStatus":{ 
      "code":200,
      "description":"Success"
   },
   "serverTime":"2020-02-19T15:39:23",
   "message":null,
   "data":{ 
      "date":"2020-02-19T15:39:23",
      "authStatus":"00",
      "cardType":"VISA",
      "type":"VISA",
      "userName":"Nombre Apellido",
      "idtx":509333,
      "cardToken":"SANDBOX-36",
      "userLogn":"dev",
      "idUsr":48395,
      "totalPay":"4.5",
      "binInfo":{ 
         "id":"0030ae56-d070-4b5a-869c-35df5909c3f3",
         "risk_score":99,
         "funds_remaining":541.18499999999994543031789362430572509765625,
         "queries_remaining":36079,
         "ip_address":{ 
            "risk":45,
            "city":{ 
               "confidence":20,
               "geoname_id":4744870,
               "names":{ 
                  "en":"Ashburn",
                  "ru":"\u0410\u0448\u0431\u0435\u0440\u043d"
               }
            },
            "continent":{ 
               "code":"NA",
               "geoname_id":6255149,
               "names":{ 
                  "de":"Nordamerika",
                  "en":"North America",
                  "es":"Norteam\u00e9rica",
                  "fr":"Am\u00e9rique du Nord",
                  "ja":"\u5317\u30a2\u30e1\u30ea\u30ab",
                  "pt-BR":"Am\u00e9rica do Norte",
                  "ru":"\u0421\u0435\u0432\u0435\u0440\u043d\u0430\u044f \u0410\u043c\u0435\u0440\u0438\u043a\u0430",
                  "zh-CN":"\u5317\u7f8e\u6d32"
               }
            },
            "country":{ 
               "confidence":99,
               "geoname_id":6252001,
               "is_high_risk":false,
               "iso_code":"US",
               "names":{ 
                  "de":"USA",
                  "en":"United States",
                  "es":"Estados Unidos",
                  "fr":"\u00c9tats-Unis",
                  "ja":"\u30a2\u30e1\u30ea\u30ab\u5408\u8846\u56fd",
                  "pt-BR":"Estados Unidos",
                  "ru":"\u0421\u0428\u0410",
                  "zh-CN":"\u7f8e\u56fd"
               }
            },
            "location":{ 
               "accuracy_radius":1000,
               "latitude":39.04809999999999803321770741604268550872802734375,
               "local_time":"2019-05-22T08:01:50-04:00",
               "longitude":-77.47280000000000654836185276508331298828125,
               "metro_code":511,
               "time_zone":"America\/New_York"
            },
            "postal":{ 
               "code":"20149",
               "confidence":10
            },
            "registered_country":{ 
               "geoname_id":6252001,
               "iso_code":"US",
               "names":{ 
                  "de":"USA",
                  "en":"United States",
                  "es":"Estados Unidos",
                  "fr":"\u00c9tats-Unis",
                  "ja":"\u30a2\u30e1\u30ea\u30ab\u5408\u8846\u56fd",
                  "pt-BR":"Estados Unidos",
                  "ru":"\u0421\u0428\u0410",
                  "zh-CN":"\u7f8e\u56fd"
               }
            },
            "subdivisions":[ 
               { 
                  "confidence":60,
                  "geoname_id":6254928,
                  "iso_code":"VA",
                  "names":{ 
                     "en":"Virginia",
                     "fr":"Virginie",
                     "ja":"\u30d0\u30fc\u30b8\u30cb\u30a2\u5dde",
                     "pt-BR":"Virg\u00ednia",
                     "ru":"\u0412\u0438\u0440\u0434\u0436\u0438\u043d\u0438\u044f",
                     "zh-CN":"\u5f17\u5409\u5c3c\u4e9a\u5dde"
                  }
               }
            ],
            "traits":{ 
               "autonomous_system_number":14618,
               "autonomous_system_organization":"Amazon.com, Inc.",
               "domain":"amazonaws.com",
               "ip_address":"100.24.233.128",
               "isp":"Amazon.com",
               "organization":"Amazon.com",
               "user_type":"hosting"
            }
         },
         "credit_card":{ 
            "issuer":{ 
               "name":"MBNA EUROPE BANK LTD.",
               "phone_number":"08009174466"
            },
            "brand":"Visa",
            "country":"GB",
            "is_issued_in_billing_address_country":false,
            "is_prepaid":false,
            "type":"credit"
         },
         "email":{ 
            "first_seen":"2019-04-24",
            "is_free":false,
            "is_high_risk":false
         },
         "billing_address":{ 
            "latitude":9,
            "longitude":-80,
            "distance_to_ip_location":3354,
            "is_in_ip_country":false
         },
         "disposition":{ 
            "action":"manual_review",
            "reason":"custom_rule"
         }
      },
      "name":"alam brito",
      "displayNum":"7001",
      "operationType":"AUTH_CAPTURE",
      "returnUrl":"https://sandbox.paguelofacil.com/PF/#/default-receipt/SANDBOX_AUTH_CAP-YGOPWL",
      "requestPayAmount":4.5,
      "email":"ramon.olmos90@gmail.com",
      "codOper":"SANDBOX_AUTH_CAP-YGOPWL",
      "status":1, // 1 Autorizada, 0 No autorizada
      "messageSys":"VER UNAVAILBLE"
   },
   "success":true
}

Parámetros de respuesta

Nombre Tipo Formato Descripción
headerStatus JSON   Header Status, Indica el estado de la consulta
     code Integer   Código del estado de la respuesta
     description String   Descripción del estado de la respuesta
serverTime Date as String yyyy-MM-dd'T'HH:mm:ss Current Server Time
message String   Mensaje de la respuesta
data String | JSON | JsonArray   Contenido de la respuesta del servicio
     date DateTime yyyy-MM-dd'T'HH:mm:ss Fecha de la transacción
     authStatus String   Estado de sesión de la transacción
     cardType String VISA / MASTERCARD Tipo de tarjeta usada para la transacción
     type String VISA / MASTERCARD Proveedor de la tarjeta usada para la transacción
     idtx Integer   Id identificador de la transacción
     cardToken String   Token generado de la transacción
     totalPay String   Monto total de la transacción
     binInfo JSON   Información del provvedor de la tarjeta (El retorno de estos datos puede variar según el proveedor)
     name String   Nombre del tarjetahabiente
     displayNum String   Últimos digitos de la tarjeta
     operationType String   Tipo de operación
     returnUrl String   La dirección URL de retorno
     requestPayAmount Numeric   Monto a pagar de la petición
     email String   Correo del cliente
     codOper String   Código de operación de la transacción
     status Boolean   Indica si la transacción se procesó exitosamente o no
     messageSys Boolean   Indica el mensaje del sistema
success Boolean   Retorna true si el headerStatus es SUCCESS

Tarjetas de Pruebas

Con estos números de Tarjetas Visa y Mastercard, podrás realizar transacciones aprobadas en cualquiera de nuestros servicios. En cuanto a las fechas de vencimiento te funcionan cualquier mes y año mayor o igual a la fecha actual y para el código de seguridad (CVV2, CVC2) cualquiera tres digitos númericos.

4059310181757001
4916012776136988
4716040174085053
4143766247546688
4929019201087046

5517747952039692
5451819737278230
5161216979741515
5372362326060103
5527316088871226

5038460000000019
CVV: 475
Fecha: 04-21
PIN: 1234