Jump to content

Redsys 2.8.5 Devuelve Error De Pago Pero Si Lo Cobra


Selenilla

Recommended Posts

Hola, 

 

He instalado hace unos días el nuevo módulo, pero me devuelve error de pago en el pedido. Se confirma como tal, pero sale en estado de Error de Pago. El cobro lo hace perfectamente.. debe ser algún tipo de respuesta que hace mal.

Me podéis ayudar? 

 

www.elaborabio.com

1.6.1.4

 

Edito: Veo que en los mensajes que se quedan en el pedido dice esto errores:0Advertencia: la clave de seguridad está vacía, revise su cuenta de pago antes de la validación

Edited by Selenilla (see edit history)
Link to comment
Share on other sites

  • 2 weeks later...

Hola, yo estoy utilizando Prestashop V1.6.1.3 y Módulo Redsys 2.8.5. A mi también me pasa lo mismo. Me realiza el cobro perfectamente, pero en el pedido me sale "error en el pago".

 

Me he dado cuenta que en el archivo "log" de fallos del módulo me aparece lo siguiente:

 

Total Pre:    6.05

TotalPost:   605

Total (8):     605

El importe tota no coincide. (:605)

 

Con esto veo que el problema está en la coma, pero no se cómo lo tengo que solucionar. Tal vez a vosotros os pase lo mismo.

 

He hablado con Redsys pero no me dan ninguna solución.

 

No se si alguien sabe que solución hay para esto?

Muchas gracias de antemano.

Link to comment
Share on other sites

Hola, yo estoy utilizando Prestashop V1.6.1.3 y Módulo Redsys 2.8.5. A mi también me pasa lo mismo. Me realiza el cobro perfectamente, pero en el pedido me sale "error en el pago".

 

Me he dado cuenta que en el archivo "log" de fallos del módulo me aparece lo siguiente:

 

Total Pre:    6.05

TotalPost:   605

Total (8):     605

El importe tota no coincide. (:605)

 

Con esto veo que el problema está en la coma, pero no se cómo lo tengo que solucionar. Tal vez a vosotros os pase lo mismo.

 

He hablado con Redsys pero no me dan ninguna solución.

 

No se si alguien sabe que solución hay para esto?

Muchas gracias de antemano.

 

 

Ya he conseguido hacerlo funcionar:

 

En el archivo validation.php, línea 119 y siguientes, podéis ver que hace un try catch en el que hace una consulta en la base de datos.

try {
	$totalOrig = Db::getInstance()->getValue("SELECT total FROM "._DB_PREFIX_."redsys WHERE idPedido = ".$pedidoSecuencial);
	escribirLog($idLog." -- "."TotalBD (" . $pedidoSecuencial . "): ".$totalOrig,$logActivo);
} catch (Exception $e) {
	scribirLog($idLog." -- "."Excepción recuperando pedido " . $pedido . ": ".$e->getMessage(),$logActivo);
}

Pues me he llevado la sorpresa al ver que no existía esa tabla en mi base de datos. Segurámente habrá sido porque instalé la versión nueva de REDSYS sin haber desinstalado la anterior.

 

Para comprobar que se tenía que generar la tabla, he instalado en local el módulo y, efectivamente, se creaba la tabla prefix_redsys , con las columnas idPedido y total. Sólo habría que importar esa tabla en la base de datos de vuestra tienda para que funcione y funcione correctamente.

 

En sí, el problema del 'vacío' es porque se reescribía $totalOrigin con esa consulta, resultando nada, porque no existía la tabla

 

Un saludo y espero que os sirva

Edited by Iván-JGR (see edit history)
Link to comment
Share on other sites

  • 3 weeks later...

hola

 

a mi también me esta dando problemas me sale error de pago, se cobra el pedido pero se cobra un euro menos del importe total o se lo cobra y no entra el pedido.... no tengo ni idea de donde puede estar el problema.

 

saludos

Link to comment
Share on other sites

  • 1 month later...
Hola Iván-JGR,

 

Gracias por la información, tiene bastante sentido. ¿Podrías dar el detalle de cómo importar esa tabla en la base de datos? Voy a intentarlo si no es demasiado complicado.

 

Gracias por adelantado,

Fran

Link to comment
Share on other sites

  • 3 weeks later...

Aunque mi caso es bastante mas complicado tengo 2 módulos mas que están interviniendo junto con el módulo de redsys me gustaría saber si hay avances sobre estos errores en el pago

 

Al hablar del log que crea redsys tened en cuenta que el que lo ha hecho posiblemente tomaba alucinógenos.... o le dieron un latigazo al becario.

Resumiendo para un pedido válido debería aparecer:

 

Jun 01 2016 20:50:51 -- YbeWlrwK0lffffffffP3ey -- totalPre: 11.89
 
es el resultado de restar:
  • total del pedido (todo productos - descuentos + gastos de envío)

  • descuentos

Esto como es lógico da un número erróneo.. pero... pa'lante

 
 
Jun 01 2016 20:50:51 -- YbeWlrwK0lffffffffP3ey -- totalPost: 1189
 

Totalpost es el mismo importe de salida de totalpre pero cambiado el formato a céntimos (esto es así en la comunicación con el banco así que está bien)

 
Jun 01 2016 20:50:51 -- YbeWlrwK0lffffffffP3ey -- Total (idCarro): 1189
 
Muestra el idcarro y el mismo importe que totalpost así que poca información extra aporta
 
Jun 01 2016 20:50:51 -- YbeWlrwK0lffffffffP3ey -- TotalBD (000000idCarro0): 1189
 
Esta línea se genera después de la consulta a la tabla redsys de la db , si ha ido ok y tenéis la versión actualizada ok sustituye la variable $totalCart que es la que se utiliza posteriormente para validar el importe del carro con respecto a lo que se ha pagado en tpv. Es decir este es el valor importante para saber si hay "desajustes"
 
Jun 01 2016 20:50:57 -- YbeWlrwK0lffffffffP3ey -- El pedido con ID de carrito idCarro es válido y se ha registrado correctamente.
 
Si todo ha ido ok esta es la línea que te lo indica.. 
 
Si el pedido ha tenido algún tipo de error lo normal es que muestre una línea indicando donde se encuentra el mismo:
  • La moneda no coincide.
  • El importe total no coincide
  • El código de comercio no coincide
  • Ds_AuthorisationCode inválido.
  • El pedido con ID de carrito " . $pedido . " es inválido."
El caso mas común suele ser que no coincida el importe. motivos que me he ido encontrado:
  • Se aplica un descuento y este no se almacenó ok en la tabla redys
  • Los gastos de envío no corresponden a los que debería , por lo que en la tabla redsys no está ok el importe y... lo mismo que antes.

Como he mencionado si el error es de importe validad que la línea TotalBD (000000idCarro0): tenga el mismo importe que os aparece en el tpv si no es así.. os toca hacer un poco de matemáticas para saber si se ha liado con los gastos de envío o con posibles descuentos... y una vez localizado pues depende de la config de cada uno

 

 

En mi caso no me da el log de error así que no puedo saber cual de mis módulos no está de acuerdo con lo que está pasando en el momento de la validación

 

Un saludo

Link to comment
Share on other sites

  • 1 month later...

Lo que dice czt es importante: debe existir la tabla ps_redsys  ('ps_' o el prefijo que tengáis). Es de donde recupera el importe del pedido cuando regresa de la pasarela.

 

Si no existe, hay dos alternativas para instalar esta tabla:

 

1.- Resetear el módulo Redsys; no es necesario desinstalarlo, con resetearlo es suficiente. NOTA: Anotad antes los datos de configuración, pues estos se borrarán.

 

2.- Crear la tabla a mano. Con una consulta en SQL se puede crear así:

 

CREATE TABLE  `ps_`.`ps_redsys` (
  `idPedido` bigint(20) NOT NULL,
  `total` bigint(20) NOT NULL,
  PRIMARY KEY (`idPedido`)
)

Link to comment
Share on other sites

  • 4 weeks later...

Me alegra saber que no he sido el único que está experimentado problemas con Redsys.

Mi sorpresa llegó cuando en nuestra tienda, Google nos exigió instalar un certificado de seguridad SSL, para poder seguir utilizando Google Merchants y Google Shopping. 

Una vez instalado el certificado, y configurada la tienda para funcionar con https, y que apareciera el candadito verde en los navegadores, nos dimos cuenta que los pedidos pagados con TPV virtual, no entraban en nuestra tienda, pero sí que se cobraban al cliente, con las molestias que esto ocasionaba.

Optamos por deshabilitar la configuración de SSL desde prestashop, pero nuestro certificado seguía instalado en el servidor. 

Tras varias llamadas al gestor de nuestro TPV (Sabadell en este caso) y a 1and1, llegamos a la conclusión que para que todo funcione correctamente, el certificado debe estar instalado a nivel de IP. Es decir, se requiere de un servidor dedicado para poder operar. Es un requisito fundamental de Redsys, me dijeron.

 

Así pues, a día de hoy, es inviable para nosotros costear un servidor dedicado, y por tanto no podemos tener habilitado el SSL en nuestro sitio. Ahora todos los pedidos nos llegan , pero muchas veces , tal vez una vez al mes, nos llega un pedido con error de pago. A veces un euro más, otras un euro menos. pero lo damos por perdido porque no hay respuestas útiles en los foros y redsys tampoco nos da solución.

Espero que entre todos podamos seguir añadiendo información al problema. 
 

  • Like 1
Link to comment
Share on other sites

  • 2 months later...
  • 2 weeks later...

Me alegra saber que no he sido el único que está experimentado problemas con Redsys.

 

Mi sorpresa llegó cuando en nuestra tienda, Google nos exigió instalar un certificado de seguridad SSL, para poder seguir utilizando Google Merchants y Google Shopping. 

 

Una vez instalado el certificado, y configurada la tienda para funcionar con https, y que apareciera el candadito verde en los navegadores, nos dimos cuenta que los pedidos pagados con TPV virtual, no entraban en nuestra tienda, pero sí que se cobraban al cliente, con las molestias que esto ocasionaba.

Optamos por deshabilitar la configuración de SSL desde prestashop, pero nuestro certificado seguía instalado en el servidor. 

 

Tras varias llamadas al gestor de nuestro TPV (Sabadell en este caso) y a 1and1, llegamos a la conclusión que para que todo funcione correctamente, el certificado debe estar instalado a nivel de IP. Es decir, se requiere de un servidor dedicado para poder operar. Es un requisito fundamental de Redsys, me dijeron.

 

Así pues, a día de hoy, es inviable para nosotros costear un servidor dedicado, y por tanto no podemos tener habilitado el SSL en nuestro sitio. Ahora todos los pedidos nos llegan , pero muchas veces , tal vez una vez al mes, nos llega un pedido con error de pago. A veces un euro más, otras un euro menos. pero lo damos por perdido porque no hay respuestas útiles en los foros y redsys tampoco nos da solución.

 

Espero que entre todos podamos seguir añadiendo información al problema. 

 

 

No es correcto que necesites un dedicado, lo unico que necesitas es un hosting que te ofrezca un certificado vinculado a ip.

 

Entre otros Loading los ofrece por muy pocos € desde su plan más básico.

 

Saludos

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...