Redsys puede confirmar el cobro en pantalla y el cliente recibir el cargo, pero WooCommerce puede mantener el pedido «pendiente de pago» si la confirmación técnica no llega o no se valida correctamente.
Los errores al integrar pasarelas de pago locales en WooCommerce suelen estar en las credenciales, la firma, la URL de notificación, el entorno sandbox o la compatibilidad con caché y SSL.
Índice
Anuncio
Separa el cobro bancario del pedido WooCommerce
Distingue el pago aprobado del pedido pagado para evitar entregar una venta sin confirmación técnica.
Un pago aprobado en Redsys significa que el banco ha autorizado o cobrado la operación, pero WooCommerce solo cambia el pedido cuando recibe una notificación servidor a servidor, también llamada callback, IPN o webhook, y valida sus datos.
Distingue retorno y notificación
La URL de retorno lleva al comprador a la página de gracias, mientras que la notificación comunica el pago a WordPress sin depender del móvil, navegador o conexión del cliente; si el pedido queda pendiente tras un cobro aprobado, revisa el callback y no la página de gracias.
Sigue el recorrido real del pago
Comprueba el checkout, la redirección al banco, la autenticación 3D Secure, la respuesta de la tarjeta o de Bizum, el callback HTTP, la validación de firma SHA-256 y el cambio de estado; el pedido solo debe pasar a pagado cuando coinciden resultado bancario, identificador de operación y registros de la tienda.
Relaciona cada síntoma con su prueba
Localiza el síntoma y consulta el registro adecuado antes de cambiar ajustes.
Consulta la matriz antes de actuar
| Síntoma | Causa probable | Dónde comprobar | Acción inicial |
|---|---|---|---|
| Cobrado y pendiente | Callback bloqueado o firma inválida | Panel TPV y logs WooCommerce | Comparar operación y HTTP |
| Vuelta al checkout | Cancelación SCA o URL de retorno | Panel TPV y pedido | Ver código de respuesta |
| Firma inválida | Clave, terminal o importe distinto | Log del plugin | No cambiar estados |
| Pedido duplicado | Reintento, doble clic o conflicto | Pedidos y operaciones | Bloquear el envío |
| Error 401, 403 o 500 | Acceso denegado o error PHP | Log servidor y WAF | Corregir respuesta HTTP |
Diferencia rechazo de fallo técnico
Abre el pedido afectado, anota número, importe, moneda y hora, y busca la operación en el panel de Redsys u otro proveedor; un rechazo puede deberse a saldo, límites o SCA, mientras que un fallo técnico existe cuando hay autorización bancaria pero no actualización del pedido o aparecen errores HTTP 401, 403 o 500.
Guarda pruebas antes de cambiar pedidos
Recoge identificadores y revisa los logs sin exponer información sensible.
Reúne pedido, operación y autorización
Copia en una nota privada el ID de pedido WooCommerce, el número enviado al TPV, la autorización bancaria, importe en EUR, fecha, método y estado actual; verifica que impuestos, descuentos y gastos de envío coinciden al céntimo con el total enviado al banco.
Abre los registros adecuados
Ve a WooCommerce > Estado > Registros, selecciona el archivo del plugin por fecha y busca callback, webhook, signature, SHA-256, response, 401, 403 o 500; consulta también el registro de errores del alojamiento, porque un error PHP puede impedir que WordPress responda al banco.
1. Confirma el cargo en el TPV.
2. Relaciónalo con el pedido y el importe.
3. Lee el log del plugin.
4. Comprueba el código HTTP del callback.
5. Corrige una sola causa y repite una prueba controlada.
Aísla conflictos sin cerrar ventas
Crea una copia de staging antes de probar cambios de tema, PHP o plugins, y desactiva allí caché, seguridad y minificación uno por uno; revisa también WP-Cron si la extensión depende de tareas posteriores al cobro.
Además de consultar los logs de WooCommerce después de un problema, configura una revisión preventiva de los pagos. Registra la hora, el ID de pedido, el ID de transacción, el estado recibido y el código HTTP devuelto por cada webhook de pago; una respuesta 200 no confirma por sí sola que la firma se haya validado ni que el pedido haya cambiado de estado. Crea una alerta en el servicio de monitorización, en el alojamiento o en el sistema de registros cuando aumenten los errores HTTP 401, 403 o 500, cuando falle repetidamente una IPN WooCommerce o cuando existan pagos aprobados en el panel del proveedor sin pedido pagado durante un plazo definido.
Este control permite intervenir antes de acumular pedidos pendientes de pago.
Haz accesible el callback de Redsys
Permite que la pasarela alcance la URL de notificación y reciba una respuesta válida.
Prueba la URL sin ser cliente
Abre la URL de notificación en una ventana privada: puede no mostrar una página legible porque espera datos firmados, pero no debe redirigir a mantenimiento, inicio de sesión o error 403; comprueba además que usa HTTPS válido y el dominio configurado en WordPress.
Quita barreras al servidor bancario
Revisa plugin de seguridad, CDN, WAF, modo mantenimiento y reglas del alojamiento, porque pueden bloquear una petición POST firmada; excluye solo el endpoint de la pasarela y recuerda que Basic Auth en staging impedirá la llamada del banco.
Valida firma, importe y terminal
Compara FUC o código de comercio, terminal, clave secreta, algoritmo, número de pedido e importe con los valores del banco; una firma SHA-256 inválida suele indicar clave incorrecta, formato de pedido distinto o datos modificados antes de validar la respuesta.
No todas las pasarelas locales notifican el pago del mismo modo. En una integración de Mercado Pago es habitual revisar las credenciales de vendedor, la URL configurada para las notificaciones y el identificador externo que vincula el pago con el pedido; en PayU, además, conviene contrastar la respuesta de confirmación con la de retorno y los estados intermedios que puede comunicar el proveedor. En un TPV virtual como Redsys suelen ser decisivos el FUC, el terminal y la firma SHA-256.
Antes de aplicar una solución, identifica el proveedor, el país de la cuenta comercial y el método usado —tarjeta, transferencia, billetera o pago en efectivo—, porque un mismo estado de WooCommerce puede corresponder a flujos de confirmación distintos.
Separa sandbox y producción por completo
Revisa los datos de producción como si se tratara de una integración nueva.
Comprueba los datos que no se migran
Verifica FUC, terminal, credenciales API, clave secreta, algoritmo, URL de notificación y modo activo para cada pasarela; comprueba también moneda, métodos permitidos y que no haya un terminal de pruebas en producción.
Elige integración por mantenimiento real
| Opción | Coste habitual | Tiempo de revisión | Cuándo encaja |
|---|---|---|---|
| Plugin del banco | Cuota o soporte según entidad | 10 a 30 minutos | TPV local sencillo |
| Proveedor especializado | Entre 0,3% y 1,2% por operación, según contrato | 20 a 45 minutos | Varios métodos y mejores logs |
| Desarrollo a medida | Presupuesto técnico propio | Horas o días | Flujos muy particulares |
Prueba cinco resultados antes de publicar
Haz una compra real de importe bajo en producción si el banco lo permite y prueba pago aprobado, rechazo, cancelación, devolución y cierre del navegador; probar solo una tarjeta aprobada deja sin revisar los fallos que más dañan la conciliación.
La conciliación también depende de las reglas locales de cobro. Verifica que WooCommerce envía la moneda admitida por la cuenta, el importe en la unidad requerida por la API y el redondeo correcto de descuentos, impuestos y envío; una diferencia de un céntimo o una conversión automática puede invalidar una firma o causar un rechazo. Si vendes en mercados con impuestos incluidos, retenciones o documentos fiscales obligatorios, comprueba que la factura se emite solo tras el estado de pago adecuado.
Asimismo, habilita únicamente los métodos regionales realmente contratados y revisa sus requisitos: 3D Secure para tarjetas, datos de identificación para algunas billeteras o plazos de confirmación más largos para pagos diferidos.
Anuncio
Concilia cobros antes de tocar estados
Confirma cada cobro con el pedido, el TPV y el registro técnico antes de cambiar estados.
Comprueba el pago en tres lugares
Confirma en el banco si la operación está autorizada, cobrada, anulada, pendiente o devuelta; compara número de pedido, importe, EUR, fecha, autorización y operación con WooCommerce, y revisa el log para saber si llegó el callback. Si todo coincide, cambia un pedido físico a procesando.
Deja una nota y evita automatismos
Añade una nota privada con fecha, operación, comprobación y motivo del cambio manual, y pausa envío, facturación o acceso hasta terminar la comparación; realiza devoluciones desde el proveedor cuando sea posible y distingue la anulación previa a la liquidación del reembolso de un cargo ya cobrado.
Preguntas comunes
¿Por qué Redsys cobra y WooCommerce deja el pedido pendiente de pago?
Redsys puede cobrar aunque WooCommerce no reciba o no valide el callback. Revisa URL de notificación, firma SHA-256, HTTP e identificador de operación.
¿Dónde veo los logs de pagos en WooCommerce?
Están en WooCommerce, Estado y Registros. Busca callback, webhook, errores HTTP y mensajes de firma sin compartir claves secretas.
¿Puedo usar la URL de gracias como notificación?
No, porque depende del navegador del cliente y no sustituye una notificación servidor a servidor.
¿Qué debo probar antes de activar el TPV?
Prueba pago aprobado, rechazo, cancelación, devolución y cierre del navegador, con una compra real de bajo importe si la entidad lo permite.
¿Qué hago si hay un pago duplicado?
Confirma si hay dos cargos reales o un solo cargo con dos pedidos, bloquea el envío y devuelve únicamente la operación duplicada confirmada.
- El banco cobra, pero el callback confirma el pedido dentro de WooCommerce.
- Los logs y los identificadores deben revisarse antes de tocar estados o devoluciones.
- Sandbox y producción requieren claves, terminales y pruebas separadas.
- Caché, WAF, Basic Auth y SSL pueden bloquear una notificación correcta.
- Una prueba completa incluye rechazos, cancelaciones, devoluciones y cierres del navegador.
Lecturas adicionales
Si quieres ampliar información sobre este tema, estas fuentes pueden interesarte:
- Mejores pasarelas de pago para WooCommerce — webempresa.com
- Integración de pagos en WooCommerce: Evita los errores ... — eupago.es
- Actualiza WooCommerce sin perder ventas ni datos
- Con 1.000 productos, salva pedidos en Woo: nube o local
Josu Barrios
Somos especialistas en mantenimiento WordPress para empresas, profesionales y tiendas online. Contamos con experiencia en seguridad web, optimización de rendimiento, actualizaciones, copias de seguridad y resolución de incidencias técnicas, ayudando a que cada sitio funcione de forma rápida, estable y protegida. Nuestro enfoque combina soporte técnico profesional, buenas prácticas de seguridad y seguimiento continuo para ofrecer un servicio fiable, transparente y orientado a resultados reales.