• Resolved doublet

    (@doublet)


    Hola, al mover una web de un cliente de nuestro cPanel a un VPS los pagos con Redsys han dejado de funcionar correctamente.

    Parece que los pedidos constan como “no pagados” a pesar de que el pago con la pasarela funciona correctamente.

    Me he mirado los logs pero no veo nada que me de información relevante.

    Cómo analizar y detectar el error ?

    Gracias.

Viewing 11 replies - 16 through 26 (of 26 total)
  • Plugin Author jesusangel.delpozo

    (@jesusangeldelpozo)

    Ah. Ya lo he visto. Disculpa.

    AngeloLazzari

    (@angelolazzari)

    Hola, me pasaba lo mismo con ssl y sni…y entonces he puesto la notificación por HTTP y no en automatico, pero cada pedido que entra viene puesto como enviado y no como procesando…que puede ser? Muchas gracias!!!!

    Plugin Author jesusangel.delpozo

    (@jesusangeldelpozo)

    @angelolazzari

    Estimado ángel.

    Aunque tú comuniques a la pasarela de Redsys que se conecte por HTTP, si luego tu servidor la redirige a la versión HTTPS, el problema va a seguir produciéndose. Lo que tienes que hacer es desactivar la redirección HTTP->HTTPS para la URL de tu sitio que contenga la cadena de consulta (query string) wc-api=WC_MyRedsys.

    Si tu alojamiento usa Apache como servidor web, tendrás un archivo .htaccess en la carpeta raíz de su sitio con algo parecido a esto:

    # Enviar trafico HTTP a HTTPS
    RewriteEngine On
    # Si la cadena de consulta no contiene wc-api=WC_MyRedsys
    RewriteCond %{QUERY_STRING} !wc-api=WC_MyRedsys [NC]
    # Y la conexión no es HTTPS
    RewriteCond %{HTTPS} off
    # Redirigimos a la versión con HTTPS
    RewriteRule ^(.*)$ https://dominio.com/$1 [R=301,L,NE]

    Debes a?adir la condición que excluye la URL con la query string que te indiqué antes.

    Saludos cordiales.

    AngeloLazzari

    (@angelolazzari)

    ok, muchas gracias, lo intento y te digo.

    Un saludo
    Angelo

    AngeloLazzari

    (@angelolazzari)

    Hola, he puesto el código pero creo que algo va mal… porque a la hora de elegir pago por redsys la web empieza a pensar…y no termina…. a la mejor es porque tengo más rewrite en mi htacces? como estas…por ejemplo

    # BEGIN Math Captcha
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_METHOD} POST
    RewriteCond %{REQUEST_URI} .wp-comments-post.php*
    RewriteCond %{HTTP_REFERER} !.*www.naranjascostadelsol.es.* [OR]
    RewriteCond %{HTTP_USER_AGENT} ^$
    RewriteRule (.*) ^https://%{REMOTE_ADDR}/$ [R=301,L]
    </IfModule>
    # END Math Captcha

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>

    no van bien?

    yo he a?adido
    # Enviar trafico HTTP a HTTPS
    RewriteEngine On
    # Si la cadena de consulta no contiene wc-api=WC_MyRedsys
    RewriteCond %{QUERY_STRING} !wc-api=WC_MyRedsys [NC]
    # Y la conexión no es HTTPS
    RewriteCond %{HTTPS} off
    # Redirigimos a la versión con HTTPS
    RewriteRule ^(.*)$ https://naranjascostadelsol.es/$1 [R=301,L,NE]
    # END WordPress

    …pero nada… no va bien…

    donde me equivoco?
    Muchas muchas gracias
    Angelo

    Plugin Author jesusangel.delpozo

    (@jesusangeldelpozo)

    Hola.

    No tienes que a?adir todas las líneas, sólo la condición del query_string y sólo si previamente tenías las otras líneas que hacían la redirección de HTTP->HTTPS, que parece que no es tu caso.

    Vuelve a dejar el fichero .htaccess como estaba. Activa el log en la zona de configuración del plugin de pago redsys (dentro de la configuración de Woocommerce) y echa un vistazo al log que aparecerá dentro de la carpeta logs del plugin Woocommerce.

    Saludos cordiales.

    AngeloLazzari

    (@angelolazzari)

    ok ok he usado la funcion solo HTTP para la notificación y todo funciona correctamente y no he tenido que modifica el ht access.

    Muchas graicas
    ANgelo

    Hola Jesús,

    Muchas gracias por tu aportación con el Plugin.

    Me pasa más o menos lo mismo en mi caso.

    El pago se llega a efectuar bien, se registra en el Panel de administración de ResSys, lo descuenta de la tarjeta, y cuando vuelve a la web, registra el pedido bien, pero no como “Completado” sino como “Pendiente de pago”, a pesar de que tengo la opción “?Marcar el pedido como completado tras el pago?” activado.

    En los detalles de la transacción me aparece un error 403. ?Podría ser esto? (quito mi dominio real):

    -1 Server returned HTTP response code: 403 for URL: https://midominio.es/?wc-api=WC_MyRedsys

    Tengo LetsEncrypt.

    ?Qué problema podría ser? Me urge por favor.

    Muchas gracias de antemano.

    Hola el problema parece ser el mismo: las notificacinoes HTTPS no son soportadas, así que tienes que asegurarte que la notificación vuelva con un HTTP y no HTTPS… lo puedes ver en tu mensaje… lleva HTTPS… así que, en el plugin, pon la notificación como HTTP y no como HTTPS o AUTOMATICA… y a ver que tal… si no te funciona, tendrán que poner en tu htaccess algunas reglas para que la llamada https de la notificación pase a ser http…

    Vale?

    Buenas.

    Yo uso nginx en lugar de apache ?podrían indicarme las reglas que debo poner?

    Saludos y gracias.

    Hola, creo que con esta documentación vas a resolver tus dudas…

    https://stackoverflow.com/questions/3470290/nginx-redirect-https-to-http

    https://www.nginx.com/blog/creating-nginx-rewrite-rules/

    el objetivo es que la llamada https://midominio.es/?wc-api=WC_MyRedsys
    se ponga en http

Viewing 11 replies - 16 through 26 (of 26 total)
  • The topic ‘Pendiente de pago’ is closed to new replies.