Avisos
Vaciar todo

Problema con IPN Paypal  

 
Alberto
 Alberto
Usuario activo

Hola buenos días,

He recibido un correo de paypal que dice:

"Por favor, compruebe el servidor que se ocupa de sus notificaciones de pago instantánea de PayPal (IPN). Las IPN enviadas a las URL siguientes están fallando:

http://www.donhierro.com/tienda/modules/paypal/ipn.php

Si no reconoce esta URL, es posible que esté utilizando un proveedor de servicios que esté utilizando IPN en su nombre. Póngase en contacto con su proveedor de servicios con la información anterior. Si este problema persiste, puede que se desactiven las IPN para su cuenta."

Cómo puedo solucionarlo??

Gracias

URL del sitio: Contenido solo visible a usuarios registrados

Citar
Respondido : 21/07/2015 12:06 pm
Lorena
 Lorena
Miembro Moderator

Buenos días Alberto,

Mira si tienes un fichero error_log en la carpeta /tienda/modules/paypal/ y en caso afirmativo pega las últimas líneas para que vemos si hay errores en el código de tienda/modules/paypal/ipn.php

Te puede ayudar https://www.webempresa.com/blog/que-es-un-error-500-y-como-localizarlo-en-nuestra-web.html

Un saludo.

ResponderCitar
Respondido : 21/07/2015 12:32 pm

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

Alberto
 Alberto
Usuario activo

Hola Lorena,

Sí que se ha generado ese archivo. Te paso la última línea de código (las anteriores son iguales, solo varía la fecha)

[20-Jul-2015 18:49:02 Greenwich] PHP Fatal error: Call to a member function getSummaryDetails() on a non-object in /home/donhierr/public_html/tienda/modules/paypal/ipn.php on line 156

Gracias por tu ayuda.

ResponderCitar
Respondido : 21/07/2015 1:19 pm
Julen
 Julen
Miembro Admin

Hola,

Revisa la siguiente solución, por si te es de utilidad: https://www.prestashop.com/forums/topic/83021-solucionado-problema-paypal-api-ipn-alguieeeeeennnnnnnn/

Saludos

ResponderCitar
Respondido : 21/07/2015 5:25 pm

Alberto
 Alberto
Usuario activo

Hola Julen,

Ya había mirado ese post. Y tengo hecho lo que dice. Entré en mi cuenta paypal y cambié la ruta de IPN por la que he indicado en el primer comentario.

ResponderCitar
Respondido : 22/07/2015 9:05 am
Julen
 Julen
Miembro Admin

Hola,

Reinstala el modulo ya que posiblemente no este funcionando correctamente y posiblemente no este actualizado.

Puedes descargarlo de aquí: http://addons.prestashop.com/es/pagos-prestashop-modulos/1748-paypal.html

No obstante, antes de subirlo asegurate que has eliminado completamente el que tienes ahora.

Saludos

ResponderCitar
Respondido : 22/07/2015 11:00 am

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Alberto
 Alberto
Usuario activo

Hola Julen,

He vuelto a desinstalar y a re-instalar el módulo de Paypal. He vuelto a meter mis datos de API y seleccionado pago express.

Cobrar cobra, ya que hemos hecho una prueba. Pero no se procesa como pedido en prestashop, ni deja rastro alguno (ni en carritos abandonados ni en pedidos). ¿Alguna idea?

ResponderCitar
Respondido : 24/07/2015 11:06 am
Julen
 Julen
Miembro Admin

Hola Alberto,

Revisa en el directorio /modules/paypal de su tienda, si tienes un archivo error_log. De ser así, edítalo y comprueba si hay errores (no warnings) que coincidan en fecha después de la reinstalacion y dinos de qué se trata.

No obstante, revisa las siguientes soluciones que se dan en los siguientes enlaces, por si alguna te es de utilidad:

https://www.prestashop.com/forums/topic/435201-paypal-no-me-genera-un-pedido-en-el-bo/

https://www.prestashop.com/forums/topic/394650-paypal-acepta-el-cobro-y-no-se-ve-reflejado-en-los-pedidos/

https://www.prestashop.com/forums/topic/185888-al-pagar-con-paypal-no-llega-el-pedido-a-prestashop/

Saludos

ResponderCitar
Respondido : 24/07/2015 11:27 am

wpdoctor-revisa-la-salud-de-tu-wordpress

Alberto
 Alberto
Usuario activo

Hola Julen,

Me he revisado los enlaces, pero no se trata del mismo problema.

Respecto al IPN, sigue dando fallos (el archivo error.log que se genera, sigue registrándolos hoy).

El mensaje de error sigue siendo el mismo:

[24-Jul-2015 09:34:49 Greenwich] PHP Fatal error: Call to a member function getSummaryDetails() on a non-object in /home/donhierr/public_html/tienda/modules/paypal/ipn.php on line 156

La línea 156 en cuestión es:

$cart_details = Context::getContext()->cart->getSummaryDetails(null, true);

Y viene de:

public function checkPayment($payment_status, $mc_gross_not_rounded, $new_order)
{
$currency_decimals = is_array(Context::getContext()->currency) ? (int)Context::getContext()->currency['decimals'] : (int)Context::getContext()->currency->decimals;
$this->decimals = $currency_decimals * _PS_PRICE_DISPLAY_PRECISION_;

$mc_gross = Tools::ps_round($mc_gross_not_rounded, $this->decimals);

$cart_details = Context::getContext()->cart->getSummaryDetails(null, true);
$cart_hash = sha1(serialize(Context::getContext()->cart->nbProducts()));
$custom = Tools::jsonDecode(Tools::getValue('custom'), true);

$shipping = $cart_details['total_shipping_tax_exc'];
$subtotal = $cart_details['total_price_without_tax'] - $cart_details['total_shipping_tax_exc'];
$tax = $cart_details['total_tax'];

$total_price = Tools::ps_round($shipping + $subtotal + $tax, $this->decimals);

if (($new_order == true) && ($this->comp($mc_gross, $total_price, 2) !== 0))
{
$payment_type = (int)Configuration::get('PS_OS_ERROR');
$message = $this->l('Price paid on paypal is not the same that on PrestaShop.').'
';
}
elseif (($new_order == true) && ($custom['hash'] != $cart_hash))
{
$payment_type = (int)Configuration::get('PS_OS_ERROR');
$message = $this->l('Cart changed, please retry.').'
';
}
else
{
return $this->getDetails($payment_status) + array(
'payment_status' => $payment_status,
'total_price' => $total_price
);
}

No sé si con estos datos podéis ayudarme... La verdad es que me estoy volviendo loco

ResponderCitar
Respondido : 24/07/2015 1:17 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

Es como si faltaran achivos, o como si la solicitud no se completara

Tendrias que descartar primero el tema de la configuraicón de paypal, puedes probar instalando un nuevo pack prestashop en una carpeta , configurar el método de pago y realizar una prueba

Revisa si el módulo de paypal tiene actualizaciones

Saludos

ResponderCitar
Respondido : 24/07/2015 7:09 pm

Cursos Gratuitos WordPress