Reverso de una Captura
Paguelofacil ofrece la posibilidad de realizar un reverso y/o reembolso de una transacción capturada. Este reverso puede ser por el total o un monto menor de los fondos capturados en la tarjeta de tu comprador.
Reversar una transacción de captura
Para realizar un reverso de una captura, debes conocer el CodOper de la Captura y el monto que deseas reversar el cual no puede ser mayor a la transacción de captura, luego hacer el llamado al API y procesar la respuesta del servicio una vez 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
|
Si | El monto o valor total de la transacción a realizar. NO PONER COMAS (,) o separador de miles. |
codOper |
String MaxLength:100 |
Si | Código de operación de la transacción autorizada |
description |
String MaxLength:150 |
Si | Descripción de la transacción |
lang | String MaxLength:2 | No |
Idioma de la transacción. Valores posibles:
|
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 |
Petición de Autorización
Realiza la petición de reverso indicándonos en la URL que es una "REVERSE_CAPTURE".
//Ejemplo de REVERSE_CAPTURE
$urlConfig = "https://sandbox.paguelofacil.com/rest/processTx/REVERSE_CAPTURE";
$cclw = 'D17B05A095489D1176560B4666A283454185F353F401D0201CC5C16F92535DF6B1DEBA18E79442CC0D6F75FD024207680AFBDFD6CF015478BF30CBEF9160A08D ';
$amount=3.50;//El monto o valor total de la transacción a realizar. No puede ser mayor a la transacción Capturada
$description='Devolución de la Order 523';//MaxLength:150 ;Es la descripción o el motivo de la transacción en proceso
$CodOper = 'STS-LU1ZGW16QA';
$data = array(
"cclw" => $cclw ,
"amount" => $amount,
"description" => $description,
"codOper" => $CodOper,
"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"]],
);
$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);
Respuesta de un Reverso de Captura
Transacción Aprobada
//Ejemplo de Respuesta Reverso de Captura
{ "headerStatus":{ "code":200,"description":"Success" },
"serverTime":"2019-09-24T09:48:23",
"message":null,
"data":{
"date":"2019-09-24T09:48:23",
"authStatus":"00",
"cardType":"MC",
"type":"MC",
"userName":"Nombre Apellido",
"idtx":502410,
"cardToken":"SANDBOX-34",
"userLogn":"dev",
"idUsr":48395,
"totalPay":"4.5",
"binInfo":{"credit_card":{"issuer":{"name":"Bank"},"country":"PA"}},
"displayNum":"1226",
"operationType":"REVERSE_CAPTURE",
"returnUrl":"https://sandbox.paguelofacil.com/PF/#/default-receipt/SANDBOX_STS-J6JCR4W4TIM",
"requestPayAmount":4.5,
"email":"oeneikaphotos@gmail.com",
"codOper":"SANDBOX_STS-J6JCR4W4TIM",
"status":1,
"messageSys":"VER UNAVAILBLE"},
"success":true}
Transacción Denegada
//Ejemplo de Respuesta Reverso de Captura
{"headerStatus":{
"code":604,
"description":"AMOUNT GREATER THAN MAXIMUN"},
"serverTime":"2019-09-24T09:56:10",
"message":null,
"data":{},
"success":false}
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 | |
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 |