Hola tengo un problema con la URL de retorno de la pasarela de ruralvia, está configurado perfecto pues funciona en entorno pruebas y en entorno produccion pero cuando la compra finaliza la pasarela no retorna correctamente a mi web, yo creo que puede deberse las url amigables pues el index visitado desde cualquier CMS da error 404, solo se puede volver al index desde el logo :
debería redireccionar o bien a :
www.elpasacable.com/pago_correcto.php si es correcto
o bien a :
www.elpasacable.com/pago_error.php si no es correcto
y lo que hace es redireccionarme a la pagina 404, incluso en el tpv virtual viene una URL Y URL+ notificacion y ahí le he puesto el index de la web
me comentan en caja rural que debo ver el archivo en FTP /public_html/modules/cajaruralrespuest_tpv.php y cambiarle la URL pero no veo nada anormal:
* Agosto 2012 - modificaciones a la v0.90 * * NOTAS: Basado en Módulo original Servired. * v0.7 Javier Barredo Fecha: Noviembre 2008 * Agradecimientos: Yago Ferrer por su módulo de pago que se utilizó como base de este módulo. * Alberto Fernández por su ayuda con los testeos y las imágenes. * Modificación para su uso en RuralvÃa: * Autor: R. Rodrigo * Fecha: Diciembre 2009 * * Released under the GNU General Public License * */ 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,2,'.', ''); $pedido = substr($pedido,0,8); $pedido = intval($pedido); $moneda_tienda = 1; // Euros // Compra valida $cajarural = new cajarural(); $mailvars=array(); //$cajarural->validateOrder($cart->id, _PS_OS_PAYMENT_, $total, $cajarural->displayName, NULL, $mailvars, $moneda_tienda,$cart->secure_key); $cajarural->validateOrder($cart->id, _PS_OS_PAYMENT_, $total, $cajarural->displayName, NULL, $mailvars, NULL, false, $cart->secure_key); //$cajarural->validateOrder(intval($rid_order), _PS_OS_PAYMENT_, $total, $cajarural->displayName, NULL, $mailvars, NULL, false, $cart->secure_key); Tools::redirectLink(__PS_BASE_URI__.'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 //Se permite al cliente intentar otra vez el pago Tools::redirectLink(__PS_BASE_URI__.'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(__PS_BASE_URI__.'modules/cajarural/pago_error.php?err=f&key='.$rid_key.'&id_cart='.$rid_cart.'&id_module='.$rid_module.'&id_order='.$rid_order); } } ?>
gracias.
URL del sitio: Contenido solo visible a usuarios registrados
perdon equivoque las rutas:
http://www.elpasacable.com/modules/cajarural/pago_error.php
http://www.elpasacable.com/modules/cajarural/pago_correcto.php
Hola,
En el código que has puesto parece que todo está bien. Tendrías que indicarnos a qué página te devuelve al retornar a la tienda. Me refiero a la que te da el error 404.
esta es la URL de retorno http://www.elpasacable.com/index.php?controller=modules/cajarural/pago_correcto?key=5e24df8c0629506ca7bb0880031e4734&id_cart=31&id_module=92&id_order=315651
y si pinchas, el error.
Hola Oscar
La url que envías ya no esta disponible
Prueba deshabilitando temporalmente las urls amigables de tu sitio web y luego realiza una prueba de pago y verifica si te sucede lo mismo.
Saludos.
Gracias voy a probar.