Magento – Pago Paypal cancelado y carro de compras vacío

Se Problem, que era desde el principio en Magento, fue el carro vacío molesto cancelado un pago a un procesador de pagos externo como. PayPal.

Se ejecuta como éste:

El cliente llena el carrito de la compra y pasar por caja. Allí selecciona PayPal como método de pago y completa el pedido. Él ahora será redirigido a PayPal, donde podrán completar el pago.

Pero lamentablemente hay un problema con PayPal. El problema más común es un conjunto de datos de inicio de sesión incorrectos o datos olvidados. Sin embargo, el cliente cancela el pago de PayPal y haga clic en “Cancelar y volver a la [Tienda]”.

Ahora por desgracia llega a su carrito de la compra vacío y se debe hacer el pedido de nuevo.

Hay dos problemas:

1. El cliente tiene que hacer el esfuerzo para finalizar la orden de nuevo (y por desgracia, tienen poca cliente como)

2. Esto crea un pedido cancelado en el backend.

Problema 1 Sin embargo, los rel normales OnePageCheckout. ser resuelto fácilmente. Existen varios enfoques, Me decidí por éste:

Copie el archivo OnepageController.php desde la aplicación del directorio / code / core / Mago / Caja / controladores / en el directorio app / code / / Mago / Caja / controladores locales /

A continuación, busque la línea

        $esta->getOnepage()->GetQuote()->ahorrar();
        /**
         * cuando hay una redirección a terceros, no queremos salvar pedido aún.
         * vamos a guardar el orden en la acción de retorno.
         */
        si (isset($redirectUrl)) {
            $resultar['Redireccionamiento'] = $ RedirectUrl;
        }

        $esta->getResponse()->setBody(Mago::ayudante("Núcleo")->jsonEncode($resultar));
    }

y sustituir este por

//        $esta->getOnepage()->GetQuote()->ahorrar();
/**
 * cuando hay una redirección a terceros, no queremos salvar pedido aún.
 * vamos a guardar el orden en la acción de retorno.
 */
        si (isset($redirectUrl)) {
          $resultar['Redireccionamiento'] = $ RedirectUrl;
          $esta->getOnepage()->GetQuote()->setIsActive(1) ;
          }
          $esta->getOnepage()->GetQuote()->ahorrar();
          $esta->getResponse()->setBody(Mago::ayudante("Núcleo")->jsonEncode($resultar));
        }

Ahora bien, no se envía en la demolición del pago por PayPal en la caja para seleccionar otro método de pago, pero al menos en el carro todavía lleno de.

Lamentablemente no tengo ninguna solución para el problema 2 fundar, Por lo tanto, en cada proceso de pago astillado un pedido cancelado en el backend se almacena.

Se utiliza en la versión de Magento 1.7. PREGUNTAR, Comentarios, Propuestas? Nosotros directamente o como un comentario.

Publicado por Covos

DESDE 2009 He estado trabajando intensamente con Magento. Empecé con la creación y el funcionamiento de las tiendas B2C. Esto se extendió a través de mi trabajo en el sector de la logística. Esto dio lugar a sistemas especializados primera B2E. Hoy trabajo del día a día con una emocionante B2C, B2B- y proyectos B2E e informes en este blog sobre los desafíos y dan consejos de expertos.

3 pensamientos sobre “Magento – Pago Paypal cancelado y carro de compras vacío”

  1. “Copiar el archivo OnepageController.php desde la aplicación del directorio / código / núcleo / Mago / Caja / controladores / en la aplicación del directorio / código / local / Mago / Caja / Los controladores /”

    Después de eso siempre, SIEMPRE, Cuando siempre hay dio a conocer un nuevo parche Magento, leer el código de parche, comprobar si se cambia OnepageController.php y si es así manualmente implementar cambios en su versión local del archivo.

    Una mejor solución es utilizar observador.

Deja un comentario

Su dirección de correo electrónico no será publicado. Los campos obligatorios están marcados *