Autorización Captura
POST https://sandbox.paguelofacil.com/rest/processTx/AUTH_CAPTURE
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á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. |
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
.
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';
$creditcardmonth=12
;//Mes de expiración de la tarjeta, siempre 2 dígitos
$creditcardyear=32
;//Numeric Ej.:02 Año de expiración de la tarjeta.
$creditcard_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
=> $creditcardmonth,
expYear
=> $creditcardyear,
cvv
=> $creditcard_cvc,
firstName
=> $name,
lastName
=> $lastname,
cardType
=> $carType,
)
);
$json=json_encode($data);
$ch = curlinit();
curlsetopt($ch,CURLOPTURL, $urlConfig);
curlsetopt($ch, CURLOPTPOST, true);
curlsetopt($ch,CURLOPTRETURNTRANSFER,true);
curlsetopt($ch, CURLOPTHTTPHEADER, array('Content-Type: application/json','authorization:WT5hTaUcpa4J3h4AmrZa2EXXJs8boUVa|DIRd852djHbq2j5Fca5VDUkDbExTBCVf'));
curlsetopt($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
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 |
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 | |
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 |
Request Body
{"cclw"=>"2413555b2fd551e5d7988bb335cc16cec4a73178a9edfd3b229bcce72e9ee22c67b907d9124ee59662f47e00f4956b00f95d25d401170713b0f2091a6e29d95e", "amount"=>10.0, "taxAmount"=>1.0, "email"=>"jorge@hotmail.com", "phone"=>"66336535", "concept"=>"test", "description"=>"test", "cardInformation"=>{"cardNumber"=>"4059310181757001", "expMonth"=>"12", "expYear"=>"23", "cvv"=>"123", "firstName"=>"jorge", "lastName"=>"gomez", "cardType"=>"VISA"}}
HEADERS
Key | Datatype | Required | Description |
---|---|---|---|
Authorization | string |
RESPONSES
status: OK
{"headerStatus":{"code":200,"description":"Success"},"serverTime":"2022-03-09T16:38:32","message":null,"requestId":"7da5826e-523a-4da6-88ba-1dcf0ddbd6d3","data":{"date":"2022-03-09T16:38:32","isExternalUrl":false,"authStatus":"00","cardType":"VISA","type":"VISA","userName":"Nombre Apellido","cardToken":"SANDBOX-21","userLogn":"dev","idUsr":48395,"revisionLevel":null,"totalPay":"10.0","binInfo":{"risk_score":70,"credit_card":{"issuer":{"name":"Bank"},"country":"PA"}},"inRevision":false,"name":"jorge gomez","displayNum":"7001","operationType":"AUTH_CAPTURE","returnUrl":"https://checkout-demo.paguelofacil.com/pf/default-receipt/SANDBOX_AUTH_CAP-BQRTKM","requestPayAmount":10,"revisionOptions":null,"email":"jorge@hotmail.com","codOper":"SANDBOX_AUTH_CAP-BQRTKM","status":1,"messageSys":"VER UNAVAILBLE"},"success":true}