Jump to content

"Error pago" TPV en el backoffice


Recommended Posts

Hola, os agradeceria mucho si me pudierais echar una mano, he añadido la posibilidad de poner un recargo por pago con tarjeta en el TPV, todo va bien pero cuando entro en el backoffice me da un error en el cobro, no le gusta el incremento del recargo del 2% en el total:
 
"Advertencia: 3,09 € pagado en vez de 3,00 €"
 
No recoge bien el incremento del recargo. Adjunto tambien imagen.

 

Este  es el codigo:

 

include(dirname(__FILE__).'/../../config/config.inc.php');
include(dirname(__FILE__).'/../../header.php');
include(dirname(__FILE__).'/cajarural.php');
 
$respuesta = '';
$total = '';
 
 
if (!empty($_GET)){
 
// Recoger datos de respuesta y limpiar
$total = filter_input(INPUT_GET, 'importe', FILTER_SANITIZE_STRING);
$pedido = filter_input(INPUT_GET, 'numpedido', FILTER_SANITIZE_STRING);
$moneda = filter_input(INPUT_GET, 'moneda', FILTER_SANITIZE_STRING);
$respuesta = filter_input(INPUT_GET, 'compra', FILTER_SANITIZE_STRING);
$firma_remota = filter_input(INPUT_GET, 'firma', FILTER_SANITIZE_STRING);
$fecha = filter_input(INPUT_GET, 'fecha', FILTER_SANITIZE_STRING);
$rid_key = filter_input(INPUT_GET, 'key', FILTER_SANITIZE_STRING);
$rid_cart = filter_input(INPUT_GET, 'id_cart', FILTER_SANITIZE_STRING);
$rid_module = filter_input(INPUT_GET, 'id_module', FILTER_SANITIZE_STRING);
$rid_order = filter_input(INPUT_GET, 'id_order', FILTER_SANITIZE_STRING);
 
 
// Creamos objeto
$cajarural = new cajarural();
 
//Verificamos opciones
$error_pago = Configuration::get('CAJARURAL_ERROR_PAGO');
 
// Contraseña secreta
$clave = Configuration::get('CAJARURAL_CLAVE');
 
// Calculo del SHA1
//comprobacion de la firma devuelta..
    if  ($respuesta=="si"){
$mensaje = "0" . $clave . $pedido . $total . $fecha;
 
}
elseif ($respuesta=="no"){
$mensaje = "1" . $clave . $pedido . $total . $fecha;
}
 
$firma_local = sha1($mensaje);
 
 
if ($respuesta =="si"){
 
if ($firma_local == $firma_remota){
// Formatear variables
// NINO - eliminar el punto de los miles para evitar error en pago
// ORIGINAL - $total  = number_format($total / 100,4);
$total  = number_format($total / 100,4,'.', '');
$pedido = substr($pedido,0,8);
$pedido = intval($pedido);
$moneda_tienda = 1; // Euros
 
 
// Compra valida
$mailvars=array(); 
$cajarural = new cajarural(); 
$cajarural->validateOrder($cart->id, _PS_OS_PAYMENT_, $total, $cajarural->displayName, NULL, $mailvars, NULL, false, $cart->secure_key);
Tools::redirectLink('http://www.idealitas.es/store/modules/cajarural/pago_correcto.php?key='.$rid_key.'&id_cart='.$rid_cart.'&id_module='.$rid_module.'&id_order='.$rid_order);
 
}else{
//Compra NO válida con firma remota
 
Tools::redirectLink('http://www.idealitas.es/store/modules/cajarural/pago_error.php?key='.$rid_key.'&id_cart='.$rid_cart.'&id_module='.$rid_module.'&id_order='.$rid_order);
 
}
 
} else { 
//Compra NO válida SIN firma remota, puede retornar de ruralvia sin la firma remota, se redirecciona también a error para evitar una página en blanco.
 
Tools::redirectLink('http://www.idealitas.es/store/modules/cajarural/pago_error.php?err=f&key='.$rid_key.'&id_cart='.$rid_cart.'&id_module='.$rid_module.'&id_order='.$rid_order);
 
}
 
}
 
?>

 

 

 

 

post-593593-0-26222700-1394712224_thumb.png

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...