• Resolved andreu

    (@andreu)


    Hola,

    Desde el update a la última versión y el cambio a SHA256 mi WooCommerce no marca los pedidos como pagados. Se quedan pendientes de pago y se cancelan automáticamente al cabo de unas horas porque no se detecta el pago.

    Hemos comprobado en todos los nuevos pedidos que el pago ha sido realizado, por lo que la culpa es de la notificación o la conexión de la misma.

    Hemos estado revisando el log del servidor i no vemos errores de PHP. En el log de apache hemos encontrado líneas como esta, pero no tenemos ni idea si puede tener algo que ver.

    195.76.9.222 - - [30/Nov/2015:15:32:50 +0100] "POST ?wc-api=WC_MyRedsys/ HTTP/1.1" 400 365 "-" "Java/1.5.0" 990

    Alguna idea de como podemos resolverlo?

    Gracias

    https://www.ads-software.com/plugins/woocommerce-sermepa-payment-gateway/

Viewing 15 replies - 1 through 15 (of 30 total)
  • Tengo el mismo problema, los pedidos se quedan como pendientes de pago a pesar de que se han cobrado.

    Plugin Author jesusangel.delpozo

    (@jesusangeldelpozo)

    Hola @andreu

    Si los pedidos se cobran pero la tienda los mantiene como pendientes de pago el problema es que no se procesa correctamente la notificación de la pasarela de RedSys.

    Normalmente es por culpa de algún plugin de seguridad, que impide la conexión desde la pasarela. Lo que hace esta, una vez confirmado el pago, es contactar con la tienda para enviar la confirmación.

    El log del apache que muestra @andreu está rechazando la conexión de la pasarela de Redsys con el código 400 (Bad request). Deberías revisar la configuración del plugin de seguridad que estés usando, para autorizar las conexiones procedentes desde la pasarela de redsys.

    Saludos cordiales.

    Thread Starter andreu

    (@andreu)

    Hola @jesusangel.delpozo,

    También pensaba en algo así, por eso contacté con dinahosting para resolver el problema que parecía venir del modsecurity. Se lo miraron y en principio ahora ya no está afectando y desde entonces que en el log del server ya no encuentro conexiones rechazadas como la que te pasé. De plugins de seguridad no tengo ninguno configurado tampoco.

    Se te ocurre como puedo testearlo si en el server ya no aparecen registros como el que te pasé? Alguna otra idea?

    Gracias!

    Plugin Author jesusangel.delpozo

    (@jesusangeldelpozo)

    Hola.

    La mejor manera de probarlo es ver si los pedidos se marcan como pagados cuando el pago se ha realizado correctamente.

    En la página de administración del TPV puedes comprobar el resultado de las notificaciones online enviadas al comercio (tu página web).

    Puedes activar el log del plugin y realizar un pago (con la tarjeta de pruebas que se indica en la documentación de Redsys: número 4548812049400004, caducidad 12/17, CCV 123 y CIP 123456) con el TPV en modo de pruebas.

    En el log quedará reflejado la conexión desde la pasarela de Redsys, algo como esto:

    11-19-2015 @ 19:39:40 – Checking notification is valid…

    También puedes buscar en el log de accesos del servidor web y buscar conexiones con la variable wc-api=WC_MyRedsys. El código devuelto debe ser 200.

    Thread Starter andreu

    (@andreu)

    Ok, gracias por la información.

    Acabo de encontrar otro registro que devuelve 400. He contactado de nuevo con los del hosting para ver si podemos saber a qué se debe este error de conexión.

    He recibido decenas de compras desde el update a SHA256 y no se ha marcado ninguna como pagada. Con PayPal, en cambio, el problema no ha aparecido.

    Si descubro algo te voy contando. Gracias de nuevo!

    Plugin Author jesusangel.delpozo

    (@jesusangeldelpozo)

    ?Cual es la URL de tu tienda?

    Thread Starter andreu

    (@andreu)

    https://kukaclip.com, es la misma que me dio problemas previamente con WPML que ya solventamos, tengo otras tiendas funcionando que a priori no han tenido el mismo problema. Eso sí, esta es la única que está en dinahosting.

    Plugin Author jesusangel.delpozo

    (@jesusangeldelpozo)

    Revisa el log del plugin a ver si aparece algún mensaje indicando que está comprobando la notificación. De lo contrario el problema está antes, pues la notificación no está llegando a WooCommerce.

    Thread Starter andreu

    (@andreu)

    Para cada intento de compra el log muestra esto:

    12-07-2015 @ 22:31:22 - ivLQvUOFzvNabPu5GG5W -- Acceso a la opción de pago con tarjeta de REDSYS
    12-07-2015 @ 22:31:28 - gqQOdf9j11ejZ3QBFDI7 -- Acceso a la página de confirmación de la opción de pago con tarjeta de REDSYS
    12-07-2015 @ 22:31:29 - gqQOdf9j11ejZ3QBFDI7 -- Acceso al formulario de pago con tarjeta de REDSYS

    Entiendo que esto signfica que no recibe bien la solicitud de marcar el pedido como pagado, verdad?

    Plugin Author jesusangel.delpozo

    (@jesusangeldelpozo)

    Pues no. Pero, ?estás usando mi plugin o el que ha hecho Redsys?

    Thread Starter andreu

    (@andreu)

    Ahora mismo el de Redsys. Lo puse el viernes para probar si el problema era del plugin pero hace lo mismo que el tuyo… No sé si esto te da más pistas.

    Me ocurre lo mismo que a Andreu. No se cambian de estado “Pendiente de pago” a otros estados, comprobado que pagos autorizados ok. Sólo me pasa con pago con tarjeta, para paypal pasa a “Procesando” correctamente.

    Plugin Author jesusangel.delpozo

    (@jesusangeldelpozo)

    @andreu, @pablogil1

    Algo en vuestros WordPress/WooCommerces está impidiendo que se procese la notificación de la pasarela de Redsys. Lo de que funcione la confirmación de Paypal es algo extra?o, pero ahora mismo no recuerdo como funcionaba el sistema de notificaciones de dicha plataforma, probablemente haga algo distinto.

    Echad un vistazo en el panel de control del TPV, en el apartado de notificaciones. Allí aparecerá el resultado de las mismas, que probablemente tengan un código de error (4XX, 5XX…).

    También podéis revisar el log de consultas de vuestro servidor web. Allí quedarán reflejados los intentos de notificación de la pasarela de Redsys.

    Saludos cordiales.

    Thread Starter andreu

    (@andreu)

    Hola @jesusangel.delpozo,

    Las notificaciones salen con un error 500:

    10-12-2015
    13:42:40	Autorización
    000021784002	HTTP
    Síncrona	0000	Error	https://kukaclip.com/es/?wc-api=WC_redsys
    Server returned HTTP response code: 500 for URL: https://kukaclip.com/es/?wc-api=WC_redsys

    Sin embargo, en el log de apache de mi servidor los únicos errores de acceso que veo por parte de Redsys son de noviembre. Los de dinahosting hicieron unos cambios y en principio ahora no se está bloqueando la conexión.
    Los errores de noviembre eran de este estilo:

    [Thu Nov 26 22:28:49 2015] [error] [client 195.76.9.187] ModSecurity: Access denied with code 403 (phase 2). Match of "rx ^(?i:(?:[a-z]{3,10}\\\\s+(?:\\\\w{3,7}?://[\\\\w\\\\-\\\\./]*(?::\\\\d+)?)?/[^?#]*(?:\\\\?[^#\\\\s]*)?(?:#[\\\\S]*)?|connect (?:\\\\d{1,3}\\\\.){3}\\\\d{1,3}\\\\.?(?::\\\\d+)?|options \\\\*)\\\\s+[\\\\w\\\\./]+|get /[^?#]*(?:\\\\?[^#\\\\s]*)?(?:#[\\\\S]*)?)$" against "REQUEST_LINE" required. [file "/etc/modsecurity/20_protocol_enforcement.conf"] [line "46"] [id "960911"] [rev "2"] [msg "Invalid HTTP Request Line"] [data "POST ?wc-api=WC_MyRedsys/ HTTP/1.1"] [severity "WARNING"] [maturity "9"] [accuracy "9"] [hostname "kukaclip.com"] [uri "/"] [unique_id "Vld5kVJikCoAAALudoQAAAAE"]

    ?Tienes idea de qué más puedo hacer para intentar resolver el problema?

    ?Gracias por tu ayuda!

    Plugin Author jesusangel.delpozo

    (@jesusangeldelpozo)

    Hola.

    Así sin más ahora mismo no se me ocurre lo que puede pasar. El error 500 es un error de servidor, puede estar fallando el script por un error de sintáxis, por que falte alguna extensión (raro)…

    Habría que depurar la consulta en el servidor y ver donde se produce el problema.

    Saludos

Viewing 15 replies - 1 through 15 (of 30 total)
  • The topic ‘Error al marcar pedido como pagado’ is closed to new replies.