Magento 2: RedSys. Pedidos se quedan pendientes y tras el pago,lleva a una página a una página con error.

Si tienes Magento con el módulo oficial de RedSys puede que te esté ocurriendo este error. Los pagos están entrando, se reciben, pero el pedido se queda pendiente y al cliente le devuelve a una página con error.

La causa de esto es que el módulo está mal, tiene definidas 3 páginas de “callback” (retorno):

DS_MERCHANT_MERCHANTURL, DS_MERCHANT_URLOK y DS_MERCHANT_URLKO

Estas páginas son las de la tienda, las de pedido correcto y las de pedido erróneo. Pero el plugin tiene definida la misa url (dirección) para todas estas páginas.

Os enseñamos a corregirlo.

Solución.

Tenemos que modificar el fichero /app/Code/Redsys/Redsys/Controller/RedSysController.php y añadir las direcciones. Una manera de hacerlo es:

  • Encontrad donde pone  $urlTiendaOK=$this->_baseURL.”redsys/index/notify”; y añadid justo después las siguientes dos líneas (dos variables):
        $urlTiendaOK=$this->_baseURL.”checkout/onepage/success”;
        $urlTiendaKO=$this->_baseURL.”checkout/onepage/failure”;
  • Id a donde pone:

    $miObj->setParameter(“DS_MERCHANT_URLOK”,$urlTienda);
    $miObj->setParameter(“DS_MERCHANT_URLKO”,$urlTienda);


    y cambiadlo por

    $miObj->setParameter(“DS_MERCHANT_URLOK”,$urlTiendaOK);
    $miObj->setParameter(“DS_MERCHANT_URLKO”,$urlTiendaKO);

De esta manera tiene las nuevas direcciones a las que ir cuando el pago sea exitoso o no.
Probad ahora un pago, veréis como llega bien a Magento, el pedido pasa a su estado pagado y el cliente recibe el mensaje de “pago correcto”.

Deja un comentario

Resumen de nuestra Política de Privacidad

  • Responsable: SmythSys IT Consulting SLNE.
  • Finalidad: Gestionar y moderar los comentarios.
  • Legitimación: Necesitas dar tu consentimiento para publicar un comentario.
  • Destinatarios: Tus datos se alojan en los servidores de OVH.
  • Derechos: Tienes derecho a acceder, rectificar, limitar y suprimir los datos en la dirección del responsable (en nuestra política de privacidad).

Time limit is exhausted. Please reload CAPTCHA.