En caso de producirse algún error durante el proceso de pago éste quedará grabado en el log de errores del servidor web.
Con el servidor Apache, en su configuración por defecto, el fichero es error.log.
Este error es debido a una configuración incorrecta del módulo. Repasa los datos que has puesto en la configuración según se explica en el apartado de instalación. Especialmente los datos de la Palabra Secreta y la Clave XOR. Si los datos son incorrectos se generará error de firma.
En el error.log aparecerá:
ERROR BBVA. FIRMA INCORRECTA EN EL ENVIO.
Este error se produce cuando se han introducido incorrectamente los datos de Comercio y Terminal en la configuración del módulo.
En el error.log aparecerá:
ERROR BBVA. COMERCIO Y/O TERMINAL INCORRECTOS. REVISE SU CONFIGURACION DEL MODULO.
Este error se produce porque el comercio no está dado de alta correctamente en Redsys (Servired/4B).
Debes ponerte en contacto con BBVA para solucionen el problema.
En el error.log aparecerá:
ERROR BBVA. COMERCIO MAL CONFIGURADO EN REDSYS. CONTACTAR CON BBVA.
Si se producen otros errores aparecerán en el fichero de log.
En el error.log aparecerá:
ERROR BBVA. CODERROR: XXX DESERROR: XXX
CODERROR y DESERROR son enviados por BBVA y pueden consultase en el manual o bien en el servicio de atención al cliente de BBVA.
En BBVA el pago aparece aceptado pero al volver a la tienda aparece el mensaje indicando que el pago no se ha procesado correctamente.
Estas son las posibles causas:
Se están realizando pruebas con "localhost".
Debido a que BBVA notifica al comercio el resultado del pago, no puede notificar a "localhost" ya que no es accesible desde internet. Tampoco son válidas direccciones del tipo 10.x.x.x, 172.16.x.x a 172.31.x.x ni 192.168.x.x.
Las pruebas hay que realizarlas desde una máquina conectada a internet y que pueda recibir peticiones desde internet.
Pruebas con la tienda en modo mantenimiento.
Para realizar pruebas en modo mantenimiento, además de la IP de tu ordenador, hay que añadir las IP de notificación de BBVA. BBVA notificará el resultado del pago por tanto tienes que permitir que notifique a tu tienda.
Las IP's que hay que añadir son: 89.107.180.34 y 89.107.180.35
Por ejemplo, suponiendo que tu IP es 123.456.78.90, en la opción Preferencias -> Mantenimiento -> IP de mantenimiento, hay que poner: 123.456.78.90,89.107.180.34,89.107.180.35 (sin dejar espacios).
Uso de certificados SSL no reconocidos por BBVA.
Este problema también puede aparecer al utilizar algunos Certificados SSL debido a que BBVA no reconoce todos los certificados que si reconoce el navegador.
Cuando BBVA notifica al comercio el resultado de la operación si la tienda utiliza un Certificado SSL que no es reconocido por BBVA, esa notificación nunca llegará al comercio, y por tanto el pago no se da por aceptado y no se genera pedido.
Podéis solicitar a BBVA que incluya a vuestro proveedor de certificados como emisor válido.
Por este motivo no se pueden utilizar certificados autofirmados para realizar pruebas, la notificación nunca llegará al comercio.
Peticiones GET limitadas
Algunos hosting utilizan extensiones de PHP que limitan el tamaño que puede tener una variable GET. Este límite suele estar fijado a 512 pero las notificaciones de BBVA son mayores.
El parámetro a modificar es "suhosin.get.max_value_length". Hay que ponerle un valor de 800 para que las notificaciones lleguen correctamente.
Si PHP está instalado como módulo de Apache, se puede modificar el valor creando (si no existe) o modificando el fichero .htaccess en la raíz de su tienda, añadiendo:
php_value suhosin.get.max_value_length 800
También se puede modificar en el fichero php.ini añadiendo o modificando:
[suhosin]
suhosin.get.max_value_length = 800
En caso de duda consulta con tu proveedor de hosting.
Algunos webhosting incluyen algunos complementos de seguridad que rechazan las notificaciones de BBVA.
Si tienes problemas y no cumples el punto 1 y el punto 2, ponte en contacto con tu proveedor de hosting para ver si tiene algún módulo de filtrado de peticiones.