Tokenización

POST https://sandbox.paguelofacil.com/rest/processTx/RECURRENT

Autorización Captura

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

IMPORTANTE — PagueloFacil tiene credenciales para ambiente de pruebas y credenciales para ambiente de producción que permiten integrar los métodos de pago, no se deben confundir al momento de realizar las configuraciones, cada ambiente requiere de sus credenciales. El monto mínimo es de $ 1.00 y la moneda permitida es USD.

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ámetroTipoRequeridoDescripción
cclw

String


Ej.: A7BFCAF7B6……….

SiEste 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

SiEl 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

SiDeclaras cuanto de ese monto es ITBMS
NO PONER COMAS (,) o separador de miles.
emailString MaxLength:100
SiEmail del Tarjeta habiente
phoneNumeric MaxLength:16
SiTeléfono del Tarjeta habiente
addressString MaxLength:100NoDirección del la tarjeta
conceptString MaxLength:100
SiConcepto de la transacción
descriptionString MaxLength:150
SiDescripción de la transacción
ipCheckIp (0.0.0.0)NoDirección Ip del Comprador, está información es analizada para fraude de la transacción
langString MaxLength:2No

Idioma de la transacción. Valores posibles:

* EN para Inglés
* ES para Español

customFieldValues

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

NoInformación adicional de la transacción. Serán retornados cuando implementas el api de consulta de transacciones
cardInformationArreglo 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.

PHP

//Ejemplo de AUTH_CAPTURE

$urlConfig = [https://secure.paguelofacil.com/rest/processTx/AUTH_CAPTURE](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
$creditcard='4916000000000000';
$carType = 'VISA';
$credit
cardmonth=12;//Mes de expiración de la tarjeta, siempre 2 dígitos
$credit
cardyear=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 => $creditcard,
expMonth => $credit
cardmonth,
expYear => $credit
cardyear,
cvv => $credit
card_cvc,
firstName => $name,
lastName => $lastname,
cardType => $carType,
)
);

$json=json_encode($data);

$ch = curlinit();
curl
setopt($ch,CURLOPTURL, $urlConfig);
curl
setopt($ch, CURLOPTPOST, true);
curl
setopt($ch,CURLOPTRETURNTRANSFER,true);
curl
setopt($ch, CURLOPTHTTPHEADER, array('Content-Type: application/json','authorization:WT5hTaUcpa4J3h4AmrZa2EXXJs8boUVa|DIRd852djHbq2j5Fca5VDUkDbExTBCVf'));
curl
setopt($ch,CURLOPT_POSTFIELDS,$json);

$result = curl_exec($ch);

echo ;
echo Respuesta de paguelo Facil;
echo ;

$result = json_decode($result, true);

NODE

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

INFO — Al realizar la petición recibirás la respuesta en formato JSON. Debes obtener la variable Status la cual si es recibida como 1 la transacción fue autorizada y los fondos fueron capturados.

//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](https://sandbox.paguelofacil.com/PF/#/default-receipt/SANDBOX_AUTH_CAP-YGOPWL"),
requestPayAmount:4.5,
email:[ramon.olmos90@gmail.com](mailto: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

NombreTipoFormatoDescripción
headerStatusJSONHeader Status, Indica el estado de la consulta
codeIntegerCódigo del estado de la respuesta
descriptionStringDescripción del estado de la respuesta
serverTimeDate as Stringyyyy-MM-dd'T'HH:mm:ssCurrent Server Time
messageStringMensaje de la respuesta
dataStringJSONJsonArray
dateDateTimeyyyy-MM-dd'T'HH:mm:ssFecha de la transacción
authStatusStringEstado de sesión de la transacción
cardTypeStringVISA / MASTERCARDTipo de tarjeta usada para la transacción
typeStringVISA / MASTERCARDProveedor de la tarjeta usada para la transacción
idtxIntegerId identificador de la transacción
cardTokenStringToken generado de la transacción
totalPayStringMonto total de la transacción
binInfoJSONInformación del provvedor de la tarjeta (El retorno de estos datos puede variar según el proveedor)
nameStringNombre del tarjetahabiente
displayNumStringÚltimos digitos de la tarjeta
operationTypeStringTipo de operación
returnUrlStringLa dirección URL de retorno
requestPayAmountNumericMonto a pagar de la petición
emailStringCorreo del cliente
codOperStringCódigo de operación de la transacción
statusBooleanIndica si la transacción se procesó exitosamente o no
messageSysBooleanIndica el mensaje del sistema
successBooleanRetorna true si el headerStatus es SUCCESS

Request Body

{"cclw"=>"2413555b2fd551e5d7988bb335cc16cec4a73178a9edfd3b229bcce72e9ee22c67b907d9124ee59662f47e00f4956b00f95d25d401170713b0f2091a6e29d95e", "amount"=>10.0, "taxAmount"=>1.0, "email"=>"jorge@hotmail.com", "phone"=>"66336535", "codOper"=>"SANDBOX_AUTH-8I3J7C2WED", "concept"=>"test", "description"=>"test"}

HEADERS

KeyDatatypeRequiredDescription
Authorizationstring

RESPONSES

status: OK

{"headerStatus":{"code":620,"description":"INVALID RELATED TX"},"serverTime":"2022-03-23T08:58:30","message":"Invalid Related TX.","requestId":"f874a370-b360-4cdb-a365-2ad89197903d","data":{},"success":false}