Índice de contenidos
«¡Ay Redsys! ¿Por qué me haces la vida tan imposible?»
Estoy seguro de que todo el que haya trabajado antes con Redsys en WooCommerce ha dicho (o al menos pensado) esa frase alguna vez.
Y es que mientras el resto del mundo avanza, Redsys (la pasarela de pagos virtual con la que trabajan el 95% de los bancos en España) sigue anclada en el pasado y evolucionando al ritmo que evoluciona un dragón de Komodo. Y obviamente todo esto tiene consecuencias para nuestros ecommerce.
Una de esas consecuencias es que Redsys sigue sin «llevarse bien» con las tiendas WooCommerce que funcionan con HTTPS, generando problemas con el estado de los pedidos y el envío de notificaciones a los clientes.
Por suerte, hoy contamos con la ayuda de Rafa Gallego, fundador de la tienda online OutletPilarBatanero.com y alumno mío, para que nos hable de cómo usar correctamente HTTPS en nuestras tiendas y por supuesto, cómo solucionar los problemas con Redsys cuando trabajamos con este protocolo.
Con la cantidad de datos personales que, cada vez con más frecuencia, solemos aportar en las páginas web que vamos visitando a lo largo del día, y muy especialmente en las tiendas online –donde se suele incluir, además, información económica o bancaria muy sensible–, es normal que la seguridad se haya convertido en uno de los principales problemas a solventar por parte de proveedores de servicios de Internet (hostings, plataformas de pago, servidores en la nube, proveedores de correo electrónico, etc) y empresas dedicadas a la lucha contra la ciberdelincuencia.
Hackers o ladrones de datos los ha habido siempre, pero hasta hace unos años la mayor parte de la navegación en Internet se basaba en visitas a páginas con contenido meramente unidireccional, en el que el usuario apenas dejaba un rastro pequeño, del que había poco que rascar.
Si algún adolescente superdotado era capaz de robar listas y contraseñas de emails personales, el daño tampoco era catastrófico. Más problema podían dar los virus o troyanos que se propagaban en los disquetes de 3 ¼ de antaño, que los ciberataques.
Hoy en día, sin embargo, el malware ideado para hacerse con cuentas bancarias o secretos empresariales es más importante que nunca, ya que el adolescente cerebrito fue sustituido hace tiempo por bandas organizadas cuya misión es hacerse con miles o millones de euros/dólares desde el otro lado de la pantalla de sus ordenadores.
Y los más vulnerables en este sentido son los de siempre, los usuarios domésticos que escriben sus números de tarjeta, entre otras cosas, en los formularios de registros de webs y tiendas online porque necesitan hacerse con la última figura de Star Wars que ha salido a la venta (por darle un toque friki a todo esto, si me permitís).
Por el contrario, y para contrarrestar las retorcidas ideas del villano de turno, la ciberseguridad llegó para hacernos la vida más tranquila y, desde hace años, es un campo especialmente productivo que siempre está concibiendo técnicas de control y prevención. Y si hablamos de prevención en la World Wide Web, una de las armas más importantes que se utilizan actualmente y que ofrece resultados comprobados es el cifrado de datos.
Qué es HTTPS y para qué lo necesitas en tu tienda online
Llegados a este punto, y a estas alturas de la película, ya tendrías que saber de qué se trata cuando alguien te habla de “certificado SSL” o HTPPS, ¿no es así? Ah, bueno, parece que veo algún brazo en alto en el fondo… y aquí a la derecha creo que también hay alguien que no sabe qué diablos es esto de cifrados, certificados y demás. No pasa nada, tranquilos, que para eso está, entre otras cosas, este blog y Antonio Cantero me permite que os lo cuente, antes de entrar en materia práctica.
La explicación rápida y más visual es la siguiente: ¿os suena el candadito verde en la barra de direcciones del navegador (de escritorio o móvil) cuando visitáis una página web?
Perfecto, pues sabed entonces que estáis navegando a través de HTTPS (o http Seguro) y que podréis hacerlo con seguridad en esa web y, si os piden algún dato personal a modo de formulario porque queréis inscribiros en un curso o pagar por un producto, vuestra información personal va a viajar, hasta el servidor de la página, protegida por una encriptación especial que impedirá que cualquiera ajeno a la web visitada y vuestro ordenador se pueda hacer con estos datos y descifrarlos.
¿Y qué hay que hacer para poder navegar mediante el protocolo HTTPS en vuestras webs? Sencillo, instalar un certificado SSL que atestigüe que, efectivamente, la página cuenta con un protocolo de navegación segura.
Hasta hace no mucho, estos certificados han sido siempre de pago, con costes que iban desde unos pocos euros hasta una fortuna, según el nivel de seguridad que ofrecían.
A pesar de todo, incluso los certificados más económicos eran una buena opción para convertir la web en un lugar relativamente seguro. Pero precisamente por tratarse de productos de pago y de que todavía no hay una percepción plena de que la seguridad online es importante, la implantación del HTTPS no se ha popularizado en demasía. Hasta hace poco…
Instalando y configurando un certificado SSL para tu tienda WooCommerce con Let’s Encrypt
(Nota: si ya tienes instalado el certificado y lo que buscas es solucionar los errores de notificaciones de Redsys, puedes pasar directamente al siguiente apartado)
A finales de 2015, la Fundación Linux decidió dar un paso enorme para la Humanidad y ofrecer, de forma gratuita, un certificado SSL a todo aquél que necesitara instalarlo en su servicio online. Como ellos mismos dicen «Let’s Encrypt es una autoridad certificadora gratis, automatizada y abierta, realizada para el beneficio público»
Hablando en plata: que si ya no pones SSL a tu web es porque no quieres o te da igual comprometer la seguridad de tus visitantes. Una pena, porque por cada página que no tiene instalado SSL, un gatito morirá. Y nosotros adoramos a los gatitos.
Actualmente, casi todos los servicios de hosting, al menos los que conozco, ofrecen la posibilidad de instalar Let’s Encrypt desde el panel de control del servidor, con lo que os invito a consultarlo con vuestros proveedores.
VER HOSTING WOOCOMMERCE DE SITEGROUND
Seguramente se trate de una activación mediante un botón y poco más. Si no es así, habladlo con ellos para que os indiquen el modo de hacerlo.
Tras instalar el certificado, hay que decirle a WordPress y WooCommerce que a partir de ahora todas las urls de la tienda van a funcionar con HTTPS. Y puedes hacerlo de 2 formas:
OPCIÓN 1 – Sin plugins adicionales
En primer lugar, id a los “Ajustes” de WordPress y en el menú “General” indicadle que, a partir de ahora, lo vuestro es la ciberseguridad, y que por tanto hay que acceder a vuestra web a partir de https, así:
Seguidamente, habría que acudir al archivo .htaccess, que se encuentra en la carpeta raíz de nuestra web, accesible a través de un servicio de ftp, e incluir las siguientes líneas de código, que lo que harán es decirle a WordPress que haga una redirección desde la antigua http a la nueva https. De este modo:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.tudominio.com/$1 [R,L]
</IfModule>
Donde pone “tudominio.com” debes de escribir el nombre de dominio de tu web. (Tranquilos, que hay una solución menos peligrosa, que os cuento enseguida).
Finalmente, y para que no haya problemas a la hora de hacer login en vuestro panel de WordPress, deberéis añadir las siguientes líneas al archivo wp-config.php (justo antes de la que dice “That’s all, stop editing!”), que también se encuentra en la carpeta raíz vía ftp:
define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);
OPCIÓN 2 – Usando un plugin
Si no tenéis ganas de toquetear código ni archivos que no conozcáis y provocar, quizás, un estropicio, hay un método alternativo que consiste en instalar un plugin muy útil llamado «Really Simple SSL» y que deberéis configurar del siguiente modo:
Si tenéis acceso a Google Search Console y a Google Analytics, es importante, asimismo, que modifiquéis los parámetros para que ahora comiencen a rastrear la web con la nueva propiedad. ¿Os he dicho, además, que el SSL ayuda al SEO de vuestra página web? ¿A qué esperáis, entonces, a instalar un certificado?
¡Listo! Ya tienes tu web bajo el protocolo HTTPS funcionando, tus visitantes se encontrarán más seguros bajo su paraguas, y tú estarás tranquilo porque has salvado a un gatito.
Solución al problema de los pedidos en WooCommerce pagados con Redsys
Bien, llegados a este punto es posible que ya supieras toda la teoría, la práctica y que lo que andabas buscando al entrar en este post no lo hayas encontrado. Hasta ahora. Así que discúlpame si lo anterior te ha aburrido o era información redundante en tu cabeza.
En realidad, esta entrada se fraguó en un principio como una ayuda para todos aquellos que, teniendo instalado WooCommerce y el TPV Virtual de Redsys, tenían problemas con los pedidos en el backend de la tienda online (los pedidos se pagan, pero no se reflejan como pedidos “Procesando”, sino como “En espera”).
Pero al final, me salió mi vena periodística y decidí hacer un poco de historia y ofrecer una pequeñísima guía a todos aquellos que llegaran aquí y no supieran nada de certificados ni de instalaciones de éstos.
Por lo tanto, si hemos conseguido ayudar a esta gente, nos damos por satisfechos por partida doble.
Ok, pero os preguntaréis “¿me va a decir este tío de una vez cómo arreglar lo de los pedidos?”. Ea, vamos allá. Como decía, tras la instalación del certificado Let’s Encrypt en nuestra tienda online, la navegación se hacía, por fin, segura y los datos os llegaban encriptados, con lo que supone de confianza hacia vuestra clientela.
Sin embargo, muchos de vosotros, usuarios del TPV Virtual de Redsys, habréis comprobado que los pedidos realizados mediante este método de pago no se llegan a trasladar al backend como consumados.
Ya sabemos que los pedidos pagados al momento (ya sea por tarjeta bancaria, Paypal o Stripe) se notifican como “Procesando” de modo que vosotros, como propietarios de la tienda, conocéis en todo momento el estado de los mismos en el menú de gestión (independientemente de que se consulte el pago en el módulo de administración del TPV).
Al contrario, y aquí radica el problema, estos pedidos no se etiquetan como “Procesando” sino que se establecen como “En espera”, con la consiguiente confusión que puede provocar esta etiqueta, utilizada para los pedidos realizados pero no pagados (habitualmente porque se han efectuado mediante el método de transferencia). De forma adicional, los emails de confirmación de la transacción (los que envía Redsys) no se envían.
¿Y quién es el culpable de esta situación? Pues ni más ni menos que la propia Redsys.
Reconocido también por ellos, todo hay que decirlo, ocurre que la pasarela de pagos (la más extendida entre los proveedores de este servicio en España, dato importante y, por lo tanto, lo que más nos sorprende en este caso) no soporta SNI, que es la forma más común, hoy en día, de instalar los certificados SSL, como hace Let’s Encrypt.
No hace falta profundizar en qué es SNI, pero digamos de forma rápida que permite instalar los certificados sin contratar una IP dedicada.
Consecuentemente, y al no aceptarlo, Redsys (que requiere de una validación con IP dedicada) no va a notificar a nadie (ni a WordPress/WooCommerce ni a vosotros mediante el email) de que se ha realizado un pago como resultado de un pedido. Evidentemente, esta es una situación indeseable ya que tendríamos que estar cada dos por tres comprobando manualmente el pago y pasando las notificaciones de los pedidos de “En espera” a “Procesando”.
Señores de Redsys, ya que habíamos salvado a tantos gatitos, vienen ustedes y nos hacen desear que un león les haga una visita, a ver si así se ponen las pilas de una vez y arreglen esta situación. Mientras este deseado momento llega, somos nosotros los que vamos a tener que solucionar el inconveniente.
Para ello, lo que vamos a hacer es decirle a Redsys que las comunicaciones del banco hacia nuestra web, una vez efectuado el pago por parte del cliente, se hagan por http.
Tranquilos, esta operación no va a comprometer la seguridad de la web, ya que la información va a seguir circulando de forma cifrada y, además, la introducción de los datos de la tarjeta bancaria siempre tiene lugar en la página del banco, que es, asimismo, cifrada mediante su propio certificado SSL.
Hablamos de una comunicación puntual que sólo va a tener lugar en la trastienda, en el backoffice, entre el TPV y nosotros. Lo que vamos a conseguir es que una vez que la operación bancaria se haya efectuado, Redsys utilizará el antiguo protocolo, informando así a WooCommerce de que el pedido puede etiquetarse como “Procesando” y permitiendo el envío del email de confirmación de la transacción.
Lo bueno de todo esto es que si usas un plugin de gestión de la pasarela, seguramente éste contenga la opción para corregir esta deficiencia. En el caso del plugin que yo utilizo, el de modulosdepago, sólo hay que marcar la opción “marque esta opción si usa HTTPS y Redsys no reconoce su certificado”; por su parte, el plugin de Codection aparece como la elección desplegable “No, usar la respuesta estándar por HTTP” de la opción “Forzar respuesta por HTTP”.
Acto seguido, es necesario hacer una cosa importante: eliminad cualquier redirección de .htaccess.
Mientras sigáis manteniendo el código que tuvimos que introducir al instalar el certificado, el error se seguirá reproduciendo. Por lo tanto, a borrarlo.
En este sentido, si tenéis muchos enlaces apuntando a vuestra web, no estaría de más que los cambiarais con el https delante, para no tener demasiados problemas con los buscadores.
Unas consideraciones finales
1 – Si configuraste la instalación de Let’s Encrypt mediante el plugin Really Simple SSL, asegúrate de marcar la casilla “Dejar de modificar el archivo .htaccess”.
Te lo aseguro, estuve toda una mañana con la cabeza a punto de estallarme porque aunque borraba a mano el código de redirección, éste volvía a aparecer y las pruebas que hacía seguían siendo erróneas. No me di cuenta de que la solución estaba a un solo click pasadas unas cuantas horas 🙁
2 – Hay un plugin que, no obstante, no ofrece la posibilidad de forzar la comunicación por http en lugar de por https… ¿Adivináis cuál? ¡Claro, el propio de Redsys! Qué ilusos fuimos si creímos que nuestros amigos iban a ponernos las cosas fáciles… Bueno, tranquilos, que también hay solución a este desaguisado.
En primer lugar, desactivar la opción de “Forzar pago seguro” en los ajustes de Finalizar Compra de WooCommerce. Y, seguidamente, deberemos de hacer lo siguiente en el archivo wc-redsys.php (si usas una versión antigua del plugin, deberéis buscarlo en el archivo class-wc-redsys.php):
Localiza la siguiente línea de código:
//Callback
$urltienda = $this -> notify_url;
y sustituidla por esta:
$urltienda = str_replace('https://', 'http://', $this -> notify_url);
Recordad: este paso es necesario sólo si usáis el plugin de Redsys.
3 – Por último, y para rematar la faena, es posible que, a pesar de todo lo dicho hasta ahora, siga sin solucionarse esta pesadilla. A un conocido le pasó y, según me contaba, es posible que se debiera a características particulares del tema que usaba o vete tú a saber. Por eso, lo que hizo como última alternativa fue implementar una exclusión a las redirecciones del .htaccess.
Se fijó, desde el panel del TPV, a qué dirección mandaba Redsys las notificaciones, y esa es la dirección que excluyó. Es decir, de esta forma se le está diciendo que se redirija siempre a la versión HTTPS salvo si la petición incluye la cadena wc-api=WC_redsys [NC]. En concreto, la línea que añadió antes de la redirección fue esta:
RewriteCond %{QUERY_STRING} !wc-api=WC_redsys [NC]
quedando la redirección así:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{QUERY_STRING} !wc-api=WC_redsys [NC]
RewriteRule ^(.*)$ https://tudireccion.com/$1 [R=301,L]
A partir de ahora, vuestros problemas con Let’s Encrypt y Redsys en WooCommerce, esperamos, deberían de haberse solucionado. Ya es posible tener una tienda online segura y, además recibir las notificaciones de los pedidos de forma correcta.
Hola, Rafa y Antonio:
No sé si le habrá pasado a más gente, pero a nosotros nos vuelve a pasar desde hace algo menos de un mes.
Todo un desastre hoy en Black Friday.
¿Os han llegado más casos?
Y otra pregunta, ¿habeís probado el nuevo plugin in-site de Redsys? ¿Tenéis experiencia con él?
Un saludo.
Hola, Carlos.
Sinceramente no he notado problemas últimamente, y nadie me lo ha comentado. Aunque ya hace tiempo de tu mensaje, si lees esto, coméntame si se arregló o si pudisteis saber qué provocó el fallo. ¿El plugin, quizás?
Por otra parte, no, no he probado el nuevo plugin que comentas, pero precisamente esta tarde he hablado con un compañero que lo estaba instalando y lo tuvo que desinstalar al rato porque le daba muchos errores, así que…
¡Un saludo!
A mí lo que me pasa es que el cliente hace una simulación de pedido, o mete mal los datos de la tarjeta o cancela el pago en el último momento por la razón que sea, luego vuelve a darle a pagar (se mantienen los productos en al cesta) y el sistema arroja algo así como «no se puede pagar, pedido duplicado», pero yo veo en Woocommerce que el pedido está en «pendiente de pago». Es más, te vas a tu cuenta usuario, vas al pedido pendiente de pago, seleccionas hacer el pago y sigue saliendo lo mismo. El cliente se desespera y se va, y yo me quedo con 2 palmos. Incluso me descuenta los productos del stock y si cancelo el pedido manualmente no los repone, tengo que estar actualizando stock a mano, es desesperante ¿Qué está pasando? Otras veces en cambio funciona bien y cada vez que se cancela el pago se cancela el pedido, y se genera un nuevo pedido si vuelves a finalizar el carrito para poder pagarse.
Me pasa exactamente lo mismo.
Nosotros hemos probado mil cosas y no encontramos ni el fallo ni solución posible, los pedidos se quedan como pendientes de pago pero el error en las notificaciones de redsys es 303, alguien sabe que puede estar pasando¿?
Redsys y el error 9014…Hola…
Es muy frustrante que Amazon, o PayPal se chupen tarjetas que incluso están caducadas y nosotros tengamos que cranear por qué un cliente se le deniega el cobro después de comprar un «comeycalla» en Amazon con la misma tarjeta. Error 9014 otro nuevo invento… «Titular sin clave de compra segura»… soy yo o me están jodiendo ¿Es denunciable?
Hola,
Pues a día de hoy, mayo del 2020, esto sigue ocurriendo en ocasiones, puedes tener una temporada que te funcione todo bien, pero de golpe, pedidos que se pagan pero no se actualizan con el dichoso error de comunicación tpv-web «No trusted certificate found», cuando nada ha cambiado en producción.
Al final añadiendo estas reglas, o con el replace a nivel de código, se soluciona, pero tiene narices que tengamos que andar así con la pasarela más usada a día de hoy y que tendría fácil solución de su lado.
Totalmente de acuerdo.
De todas formas parece que los de Redsys ya se están «poniendo las pilas», aunque vayan con varios años de retraso.
Aun así, te recomiendo que pruebes MONEI. Es lo más parecido a Stripe, pero con integración directa con los bancos al igual que Redsys.
Saludos!
Muchas gracias por el post, a mi me sucede el problema de los pedidos cancelados desde el momento que en el plugin Really Simple ssl activé esto: »Permitir redirección 301 de .htaccess»
en este caso, que me recomendarías? Pienso que lo mejor es volver a desactivar esa opción, porque supongo que n afectará a la carga con ssl ya que antes lo hacía.
Muchas gracias, un saludo
Laura
Hola, Laura. Con que actives únicamente las opciones de «Solucionador de contenido mixto» y «Activar redirección 301 de WordPress a SSL» es suficiente. Es posible que tengas todavía en el htaccess las redirecciones escritas, si es así, bórralas de este archivo. Haz copia de seguridad por si acaso 😉
Hola quería saber donde se añade éste código (línea, antes o después) del archivo .htaccess exactamente … gracias
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{QUERY_STRING} !wc-api=WC_redsys [NC]
RewriteRule ^(.*)$ https://tudireccion.com/$1 [R=301,L]
Hola! Muchas gracias por tus artículos, simpre super útiles. En mi caso, el problema es que el carrito NO se vacía después de realizar un pago a través de Redsys. En cambio, SÍ se vacía cuando el pago es vía transferencia bancaria. Deduzco por tanto que es algún bug de la pasarela de Redsys. ¿Te suena que haya alguna forma de resolverlo?
Hola David!
Yo lo primero que probaría sería a desactivar todos los plugins excepto WooCommerce y el de Redsys. Es probable que haya alguna incompatibilidad con otro plugin que le impida funcionar bien.
Si no es eso, entonces probaría a reemplazarlo por el plugin oficial de Redsys para WooCommerce. Soy afiliado, gracias!
Saludos!
Hola, me ocurre esto pero solo al comprar desde Portugal, desde España funcionan bien,?puede estar relacionado? Tengo el plugin de redsys. Puedes ayudarme? Gracias!
Excelente aporte. Añadir la excepción en el .htaccess ha soluconado el problema.
Buenos días,
Muy interesante el artículo, es un problema que se debe encontrar mucha gente.
En mi caso, he seguido tus pasos pero no consigo que las comandas pasen de estado «pago pendiente» a «procesando» o «completado» por lo cual no se envían los mails de woocomerce correspondientes.
Me puedes hechar una mano? Compré el plugin redsys pro que mencionas en tu artículo.
Muchas gracias de antemano.
Arnau
Hola, Arnau.
¿Qué plugin exactamente es el que compraste? Los que se mencionan en el post tienen la opción de forzar la comunicación por HTTP, con lo que activándola debería de funcionar.
Hola Antonio,
Interesantisimo articulo, si señor!!
Eso si, al leerlo me ha surgido una duda. Dices que la solucion es quitar las redirecciones del .htaccess al https. Si hacemos esto, entonces, nuestra web no volvera a cargar con http?
Tengo el mismo problema que todos, y voy a usar el ultimo caso, el de añadir la excepcion al .htaccess ya que pienso que, si quito la redireccion, y dejo el .htaccess como viene en su origen, el usuario podra acceder al http y no sera forzado a entrar al https.
Te pido que me corrijas si me estoy equivocando.
Gracias!!
Hola, Antonio. Soy Rafa, el autor del post.
En realidad, quitar la redirección sólo es necesario si estás usando Woocommerce (imagino que lo dirás por tal motivo) y usas el plugin «Really Simple SSL». La redirección del htaccess es sobre todo necesaria en caso de que tuvieras muchos enlaces externos apuntando a tu web y, sin no se han cambiado a https, pues ahí entra en juego la misma.
Sin embargo, si mantienes la redirección, vas a seguir con el problema de la no comunicación entre el TPV y Woocommerce/Wordpress. Imagino que te compensará más que te lleguen las confirmaciones de pedidos y que éstos aparezcan correctamente en el backend de Woocommerce. Finalmente, si tampoco tienes problemas de enlaces externos y demás, no tienes por qué preocuparte en eliminar esa redirección, ya que el plugin hace todo lo necesario para que se cargue el SSL correctamente.
Gracias por la aportación.
A mi me sucedió ese problema en el pasado pero cambiando a otro hosting se resolvió todo, mejor no menciono el antiguo.
Supongo que reembolsar un pedido desde wc sería pedir demasiado, viendo lo visto. Esto si que nunca lo he podido hacer.
Un saludo!
Hola Antonio, gracias por este gran Post. Me ha salvado la vida!
La verdad que segui los pasos y seguia sin funcionarme. Al final desactive el plugin de seguridad Ithemes Security, limpiando el .htacces y al fin me funciona. Quería preguntarte si tienes probado en tus instalaciones que funcione con algun plugin de seguridad activado. Supongo que dentro de toda la configuración del Ithemes security debe haber algunos parámetros que cape la comumnicación con redsys y siga dando el error, pero la verdad que no doy con la tecla, asi que de momento lo dejo desactivado.
Un saludo!
Genial David! Aunque el mérito es de Rafa, que es quien lo ha escrito 🙂
Yo no lo he probado con un plugin de seguridad, así que no puedo decirte.
Saludos!
Ay gracias por la idea!
Desactivando el Ithemes security pude conseguir que todo funcione como quería, no más pedidos en espera de pago.
Desde mi hosting, Raiola, van a mirar este asunto para tratar de recomendarme alguna configuración de seguridad que funcione con Redsys
Hola!, Redsys funciona también para blogger? Es decir hay algún plugin para instalarlo en blogger? Gracias!
Hola!
Que yo sepa, no funciona. Al menos este plugin no te va a servir.
Saludos!
Hola Antonio,
Muchas gracias por el post, nos lleva tocando los huevos el tema de redsys un montón de meses y encima se estaban lavando las manos, menudos hijos de… bueno, vamos a ver si lo podemos arreglar así.
Un abrazo tío 😉
Hola Jesús!
Tranquilo que no eres el único. Todos hemos pasado ese calvario 😀
Prueba con lo que explica Rafa en el post y si no quieres complicarte, entonces usa el plugin de Codection –> https://woodemia.com/la-mejor-solucion-para-pagos-con-tarjeta-en-woocommerce/
Un abrazo crack!
CECA se integrará en RedSys este año y todo el problema por la falta de soporte de SNI por parte de RedSys, está ya resuelto con las últimos librerías (o al menos eso dijeron desde RedSys).
En teoría esto ya no ocurre desde hace unos meses, claro que en la práctica y conociendo a RedSys, no me atrevo a asegurarlo.
En mi caso, para complicarlo todo, tenía Cloudflare por medio… Por lo cual entre el SSL flexible de este y Redsys todos los pedidos se quedaban en espera y -lo que es peor- los correos de notificación al cliente tras la compra no salían (porque Redsys no notificaba correctamente a la tienda); lo que obligaba a pasar todos los pedidos del estado «En Espera» a «Procesando».
Tras mucho probar, entre otras cosas lo que se dice en el artículo, contratamos un certificado SSL dedicado en el propio Cloudflare y forzamos mediante configuración en la propia plataforma que todas las comunicaciones fueran mediante HTTPS estricto.
De esta manera, Redsys volvió a notificar correctamente a la tienda y las notificaciones volvieron a enviarse 😀
Espero le sea de ayuda a alguien 😉
Gran aporte Luis!
Estoy seguro de que a más de uno le será muy útil tu experiencia y recomendación.
Saludos!
Hola, Luis Miguel.
De hecho, a mí también me pasó lo mismo cuando trasladé mi web a Siteground. Al activar Cloudflare volvieron los errores, pero los pude solucionar como tú.
Este ya es un tema distinto y lo podía haber metido en el artículo perfectamente, pero ya lo habríamos hecho interminable… Pero bueno, esatá bien que hagas mención, por si a alguien le sirve ;(
Realmente esa solución implica cambiar «y pagar» el certificado «que le gusta» que además es un coste periódico.
Nosotros en Codection lo arreglamos sin tener que llegar a eso. Cuestión de afinar bien la configuración en todas las partes, a veces echamos horas, pero para eso está el soporte del plugin.
Nunca se nos ha resistido aún ninguno y eso que son miles los que hemos visto.
Muchas gracias Luis Miguel! En mi caso se trataba de la combinación fatídica de Prestashop + SSL Let’s Encrypt + Redsys + Cloudflare. Después de pelearme tanto con los de Redsys como con los del Banco así como los del Servidor (Siteground) tu solución fué lo único que me funcionó: comprar un SSL en Cloudflare por 5€ mensuales.
Saludos!
¡Hey!
Muy agradecido a Antonio por haberme permitido publicar este post en su blog. Espero que os sirva o, al menos, no os haga sentir tan solos en este «complicado» mundo de la seguridad online, aunque sea a un nivel básico 😀
Y como dice Antonio, si algo no se soluciona, a dar la matraca a los de soporte, que son quienes tienen que ponerse las pilas en estas lides.
Gracias a ti Rafa! Estoy seguro de que a más de uno le vas a salvar el día 🙂
Muy útil y me he sentido identificado, no por usar Redys sino porque tengo también un conflicto con el https y mi proveedor de mailing y formularios y es frustrante tener un certificado y publicitar a bombo y platillo la seguridad de tu web para luego tener estos problemas. Gracias por el post!
Hola Álvaro!
Llevas toda la razón. Aunque queramos estar al día en temas de seguridad para nuestras tiendas, muchas veces ocurren problemas de este tipo que se escapan a nuestras manos.
En estos casos yo siempre recomiendo tirar de soporte técnico y dejarlo en manos de quien realmente sabe dónde está el problema.
Gracias por comentar. Un saludo!
Buen artículo Antonio y Rafa Gallego. Gracias por compartir vuestra experiencia.
Gracias a ti Raúl por pasarte por aquí y comentar. Me alegra que te haya gustado.
Saludos!
Antonio, muy bueno el tutorial. Hasta ahora, por suerte, no he tenido ningún problema de este estilo, pero me lo guardo por si las moscas.
Me hubiese encantado ir al Meetup que diste en WPGranada, pero me fue imposible por tiempo.
Gracias por compartir tus conociemientos.
Un saludo.
Hola Juan Manuel!
Me alegra verte por aquí y que te haya gustado el post, pero las gracias se las tienes que dar a Rafa Gallego. Yo simplemente me he limitado a presentarlo 😉
No te preocupes por lo de la Meetup. No podemos cumplir siempre con todos los compromisos jeje… Es normal.
Espero verte en la próxima.
Un abrazo!
Yo ya lo estoy sufriendo….
Animo y gracias por el aporte
Hola Mane!
Pues espero que al menos este post te haya iluminado un poco en tu lucha con Redsys 🙂
Un abrazo!
Jajaja, pues entonces la CECA está en la era de las cavernas!
Jeje… Tú lo has dicho Jairo!
Aunque yo todavía no he tenido la «suerte» de tener que lidiar con CECA. Espero que siga así mi racha 🙂
Saludos!
Realmente la tecnología al completo es más obsoleta pero este problema en concreto no lo tiene. Y te digo que he visto miles en RedSys y cientos en Ceca.
Un buen artículo y de gran ayuda. Creo que aunque Redsys presta un buen servicio como pasarela de pago, en algunos aspectos está aún, un paso por detrás de plataformas como Stripe, tanto en el tema de integración en mi caso me tocó hacer una excepción en el archivo .htaccess para el tema del estado del pedido, como en la solicitud de un terminal TPV que es tediosa. Por último lo de la notificación del estado del pedido lo pude solucionar después de leer este artículo muchas gracias.
Muy interesante tu artículo Antonio. No hay nada que me de más palo que configurar una pasarela de pago con Redsys y que de los típicos problemas. Con lo bien que funciona Stripe!
Gracias Daniel! Aunque en realidad el post es de Rafa Gallego 🙂
Estoy 100% de acuerdo contigo. La verdad es que todo sería mucho más fácil si Redsys funcionase igual de bien que Stripe jeje…
Saludos!
Hola, algún consejo para escoger plugin para tpv Ceca con WordPress + Woocomerce por favor??? Es mi primer TPV !!!
Hola Rocio!
En Codection.com también tienen un plugin de CECA para WooCommerce. El soporte técnico que ofrecen es de lo mejor que hay 😉
Saludos!