Error de número decimal al pagar con tarjeta de credito en OpenPay en Thirty Bees

Buen día amigos, pues seguimos con la pasarela de pagos de OpenPay, y el detalle obtenido ahora fue al tratar de realizar un pago con tarjeta, el monto en esta ocasión es de $754.99 pesos y al momento de procesar el pago marca error.

Indagando en el log que ofrece OpenPay para el sandbox me encuentro con un numero con mas de 3 decimales '754.990000000000009094947017729282379150390625':

 En la imagen siguiente se observa la función  cardPayment donde se realiza el proceso, use la opción de (float),el round  y tampoco, y menos la bcdiv($valor,'1',2).

En la parte 2 de la imagen se ve el log donde el número es muy largo.

y en la parte 3 haciendo mis pruebas en php para ver que si funcionaba.









Al final la solución fue tratarlo como texto y separar 2 decimales al final.


El archivo modificado es en la raiz del modulo: modules/openpayprestashop/openpayprestashop.php



Bueno amigo eso es todo, espero que si alguien tenga este detalle le pueda servir.





Comentarios

Entradas populares de este blog

Ejecutar IDSE IMSS con certificados vencidos de Java.

Dietas para adelgazar

3159 TONOS MIDI