Jump to content

[IMPORTANTE] Error con PayPal "Pasarela Integral"


magali ferber

Recommended Posts

Hola!

 
Para todos los comerciantes que utilizan PayPal "Hosted Sole Solution" (también conocida como "Pasarela Integral"), este es un mensaje importante para leer y transmitir a su equipo técnico .
 

---------
Aclaración:

- Si usted no integró HSS PayPal (Pasarela Integral), sus clientes que efectúan un pago con PayPal deben hacerlo en la página web de PayPal, en una nueva pestaña del navegador. Si este es el caso, ignore este mensaje.Todo está bien.

- Si usted integró PayPal HSS (Pasarela Integral) en su tienda en línea, sus clientes efectúan un pago con PayPal a través de su misma tienda, iniciando sesión en PayPal y procediendo al pago para completar la orden. Si este es el caso, por favor lea el siguiente mensaje.

---------

Ayer PayPal modificó su API y esto hace que se envíen datos no válidos en el IPN (Notificación de Pagos Instantánea). Como resultado, todos los comerciantes que utilizan PayPal HSS no están recibiendo en su back-office (Panel de Administración) los pedidos realizados por clientes que pagan con PayPal a través de su tienda.
 

Atención: No modifique nada en el software, el problema no está en el código de PrestaShop .
 
El jueves 16 de octubre, PayPal procederá con un retroceso completo de su API y la situación quedará resuelta. Hasta entonces, todos los comerciantes afectados por este problema tienen dos opciones para resolver este problema hasta el jueves:

1. Cambiarse a la solución de pago de Internet estándar de PayPal hasta el jueves.
2. Desactivar el uso de IPN (Notificación de Pagos Instantánea) hasta el jueves.
 
Para aquellos que aún no están seguros cuál es la solución que están usando: si usted está usando la solución HSS, estás pagando alrededor de $25 al mes. Si usted no está pagando este monto, entonces significa que está usando la solución de pago web clásico y todo está bien .
 
Gracias por leer y compartir la información con aquellos involucrados.
 
Estamos disponibles para cualquier pregunta que puedan tener.

 

Saludos,

 

Maggie

Link to comment
Share on other sites

  • 1 year later...

A parte de temas de SSL y demás el módulo oficial de paypal europa (3.10.2) de cara a pagos mediante pasarela integral tiene fallos que son simplemente para volverse loco

 

hay dos urls a las que paypal llama una vez se ha acabado la transacción

 

    'notify_url' => $shop_url._MODULE_DIR_.$this->name.'/ipn.php',
     'return_url' => $shop_url._MODULE_DIR_.$this->name.'/integral_evolution/submit.php?id_cart='.(int)$cart->id,

 

El que se encarga de validar el pedido es ipn.php y si da la casualidad (bastante probable) que llegemos al submit.php antes pues se ve
la pantalla de confirmación con el carrito lleno.

 

Es necesario que se ejecute correctamente previamente ipn.php antes de integral_evolution/submit.php

 

lo curioso del caso es que para 1.4 parece que lo hace correctamente porque se espera (vuelve a llamarse) hasta que esta ok, pero en 1.5 y posteriores no.

 

Entonces se debe modificar

paypal\controllers\front\submit.php

 

y añadir al principio de init ,

$id_cart = Tools::getValue('id_cart');
		$id_module = Tools::getValue('id_module');
		$id_order = Tools::getValue('id_order');
		$key = Tools::getValue('key');
		
		
		$all_ok=$id_module && $id_order && $key;
			
		
		
		if($id_cart &&  !$all_ok){
			$values = array(
					'id_cart' => (int)$id_cart,
					'id_module' => (int)Module::getInstanceByName('paypal')->id,
					'id_order' => (int)Order::getOrderByCartId((int)$id_cart),
			);
		
			$values['key'] = Context::getContext()->customer->secure_key;
			$link = Context::getContext()->link->getModuleLink('paypal', 'submit', $values);
	
			Tools::redirect($link);
		}

de esta forma hasta que no este creado el pedido se vuelve a llamar a sí misma

 

No creo que sea la mejor solución ya que hay un problema de base con este sistema/módulo (tal y como esta planteado), pero funcionar funciona y el carrito aparece vació como toca

 

y lo que es mas importante, desparecerán los errores de la llamada a ipn.php por parte de paypal

[Tue Mar 01 11:20:57 2016] [error] [client 173.0.81.1] PHP Notice:  Trying to get property of non-object in /home/.........modules/paypal/ipn.php on line 86[Tue Mar 01 11:20:57 2016] [error] [client 173.0.81.1] PHP Notice:  Trying to get property of non-object in /home/........./modules/paypal/ipn.php on line 88[Tue Mar 01 11:20:57 2016] [error] [client 173.0.81.1] PHP Notice:  Trying to get property of non-object in /home/........./modules/paypal/ipn.php on line 89[Tue Mar 01 11:20:57 2016] [error] [client 173.0.81.1] PHP Notice:  Trying to get property of non-object in /home/........./modules/paypal/ipn.php on line 90[Tue Mar 01 11:20:57 2016] [error] [client 173.0.81.1] PHP Fatal error:  Call to a member function getSummaryDetails() on a non-object in /home/........./modules/paypal/ipn.php on line 156
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...