jcm3610 Posted October 30, 2014 Share Posted October 30, 2014 (edited) Buenos días, tengo un problema con el módulo de Unicaja para pagos con tarjeta. El tema es que lo tenía funcionando en la versión 1.3.2.3, pero al actualizar a 1.6 ha dejado de funcionar. Cuando entro a la pantalla de pagos se queda en blanca completamente. He buscado otros módulos gratuitos que me sirvan en la 1.6 y por ahora he encontrado el de CecaTPV. El tema es que intento configurar este módulo y no me funciona. Consigo que me lleve hasta la página de Unicaja, pero luego la propia página del banco me dice que se ha producido un error y me ponga en contacto con ellos. Mi duda es que los dos módulos no tienen los mismos campos, y no se si estoy poniendo los datos donde corresponden. He adjuntado dos imágenes: unicaja--> es como lo tenía configurado en la versión antigua ceca--> son los campos que me ofrece el nuevo módulo En ceca he puesto: URL del TPV --> he copiado aquí el campo de URL de la llamada del entorno de Unicaja Código del comercio (Merchant ID) --> he copiado el campo ID del comercio de Unicaja Código entidad (AcquirerBIN) --> he copiado ID del estado de orden de Unicaja He puesto los campos que considero "iguales" de un módulo a otro, pero por supuesto de la forma que he creído yo (ni mucho menos será la correcta seguramente). Alguien sabe si esto que estoy intentado es lo correcto?? Hay otra forma?? Por casualidad estoy intentando una barbaridad?? xD Gracias de antemano Edited October 30, 2014 by jcm3610 (see edit history) Link to comment Share on other sites More sharing options...
joseantgv Posted October 30, 2014 Share Posted October 30, 2014 Lo que yo haría es volver a poner el de Unicaja y activar errores para ver porqué aparece la pantalla blanca. Link to comment Share on other sites More sharing options...
jcm3610 Posted October 30, 2014 Author Share Posted October 30, 2014 ok, creo que he visto manual de como activar errores. Voy a activarlo y pruebo a ver que sale. Gracias por la idea!! Link to comment Share on other sites More sharing options...
jcm3610 Posted October 30, 2014 Author Share Posted October 30, 2014 (edited) ok, lo tengo. El error que me sale es: Fatal error: Uncaught --> Smarty Compiler: Syntax error in template "/homepages/4/d515861335/htdocs/wordpress/prestashop/modules/unicaja/unicaja.tpl" on line 13 "<input type="hidden" name="fecha" value="{php}echo date('d/m/Y');{/php}" />" unknown tag "php" <-- thrown in/homepages/4/d515861335/htdocs/wordpress/prestashop/tools/smarty/sysplugins/smarty_internal_templatecompilerbase.php on line 13 No entiendo por ahora mucho lo que dice la verdad xD. Parece algo de la fecha??? Gracias! Edito: Estoy viendo que la ruta busca en localhost (y de una forma "rara"). Es normal?? Actualmente está subido a un servidor con un dominio Edited October 30, 2014 by jcm3610 (see edit history) Link to comment Share on other sites More sharing options...
joseantgv Posted October 30, 2014 Share Posted October 30, 2014 Modifica ese fichero y sustituye: {php}echo date('d/m/Y');{/php} por {$smarty.now|date_format:"%d/%m/%Y"} Link to comment Share on other sites More sharing options...
jcm3610 Posted October 30, 2014 Author Share Posted October 30, 2014 (edited) había visto ya que el problema venía por las etiquetas esas php que no eran compatibles (o que se yo xD), pero no había encontrado lo que me has puesto, muchas gracias. En ese archivo, hay dos líneas donde hay que sustituir lo que me comentas, línea 13 y 31. (Pongo el código de ese archivo) <p class="payment_module"> <a href="javascript:$('#unicaja_form').submit();" title="{l s='Conectar con el TPV' mod='unicaja'}"> <img src="{$module_dir}banner.jpg" alt="{l s='Conectar con el TPV' mod='unicaja'}" /> {l s='Pague con tarjeta a traves de Unicaja' mod='unicaja'} </a> </p> <form action="modules/unicaja/data1.php" method="post" id="unicaja_form" class="hidden" enctype="application/x-www-form-urlencoded"> <input type="hidden" name="tienda" value="{$merchantid}" /> <input type="hidden" name="referencia" value="{$num_operacion}" /> <input type="hidden" name="importe" value="{$importe}" /> <input type="hidden" name="divisa" value="EUR" /> <input type="hidden" name="fecha" value="{php}echo date('d/m/Y');{/php}" /> <input type="hidden" name="AcquirerBIN" value="{$acquirerbin}" /> <input type="hidden" name="TerminalID" value="{$terminalid}" /> <input type="hidden" name="Exponente" value="{$exponente}" /> <input type="hidden" name="idioma" value="es" /> <input type="hidden" name="Urlok" value="{$url_ok}" /> <input type="hidden" name="Urlko" value="{$url_nok}" /> <input type="hidden" name="urltpv" value="{$urltpv}" /> <input type="hidden" name="UrlVerificacion" value="https://www.alesframa.com/tienda/modules/unicaja/test.php" /> <input type="hidden" name="Pago_soportado" value="{$pago_soportado}" /> <!-- <input type="hidden" name="Pago_elegido" value="{$pago_elegido}" /> --> <input type="hidden" name="Descripcion" value="{$descripcion}" /> <!-- <input type="hidden" name="Referencia" value="{$referencia}" /> --> <input type="hidden" name="Firma" value="tienda={$merchantid}&referencia={$num_operacion}&importe=50&divisa={$tipomoneda}&fecha={php}echo date('d/m/Y');{/php}&idioma={$Idioma}" /> </form> {php} {/php} Al final hay dos llaves PHP que las he quitado directamente (entiendo que no sirven para nada) porque fallaban también. Una vez hecho esto, el módulo parece como que funciona bien, pero no, me explico: En la primera pantalla de bienvenida, aparece un trozo de código "suelto", en concreto este: (el de la línea 31) value="tienda={$merchantid}&referencia={$num_operacion}&importe=50&divisa={$tipomoneda}&fecha={php}echo date('d/m/Y');{/php}&idioma={$Idioma}" /> He adjuntado la captura "pago" donde se ve. Una vez acepto, en la siguiente pantalla pasa una cosa curiosa. Si te fijas en el total del pago pone 37,60, pero verdaderamente en la cesta tengo artículos por valor de 886,10€ (se ve en el código suelto de la anterior captura). Creo que ese código que se queda suelto está provocando este error. Por ahora al menos ya he avanzado algo, muchísimas gracias por tu ayuda. Sigo probando y si voy descubriendo más cosas lo voy comentando. Gracias!! Edito: Lo del código "suelto" pensaba que era de la línea 31, pero he borrado esa línea completamente (por probar) y sigue saliendo como en la primera captura, así que no es por culpa de esa línea como pensaba. Edited October 30, 2014 by jcm3610 (see edit history) Link to comment Share on other sites More sharing options...
joseantgv Posted October 30, 2014 Share Posted October 30, 2014 Puedes copiar el fichero tal como lo has dejado? Link to comment Share on other sites More sharing options...
jcm3610 Posted October 30, 2014 Author Share Posted October 30, 2014 Hola, si claro, lo he dejado así: <p class="payment_module"> <a href="javascript:$('#unicaja_form').submit();" title="{l s='Conectar con el TPV' mod='unicaja'}"> <img src="{$module_dir}banner.jpg" alt="{l s='Conectar con el TPV' mod='unicaja'}" /> {l s='Pague con tarjeta a traves de Unicaja' mod='unicaja'} </a> </p> <form action="modules/unicaja/data1.php" method="post" id="unicaja_form" class="hidden" enctype="application/x-www-form-urlencoded"> <input type="hidden" name="tienda" value="{$merchantid}" /> <input type="hidden" name="referencia" value="{$num_operacion}" /> <input type="hidden" name="importe" value="{$importe}" /> <input type="hidden" name="divisa" value="EUR" /> <input type="hidden" name="fecha" value="{$smarty.now|date_format:"%d/%m/%Y"}" /> <input type="hidden" name="AcquirerBIN" value="{$acquirerbin}" /> <input type="hidden" name="TerminalID" value="{$terminalid}" /> <input type="hidden" name="Exponente" value="{$exponente}" /> <input type="hidden" name="idioma" value="es" /> <input type="hidden" name="Urlok" value="{$url_ok}" /> <input type="hidden" name="Urlko" value="{$url_nok}" /> <input type="hidden" name="urltpv" value="{$urltpv}" /> <input type="hidden" name="UrlVerificacion" value="https://www.alesframa.com/tienda/modules/unicaja/test.php" /> <input type="hidden" name="Pago_soportado" value="{$pago_soportado}" /> <!-- <input type="hidden" name="Pago_elegido" value="{$pago_elegido}" /> --> <input type="hidden" name="Descripcion" value="{$descripcion}" /> <!-- <input type="hidden" name="Referencia" value="{$referencia}" /> --> <input type="hidden" name="Firma" value="tienda={$merchantid}&referencia={$num_operacion}&importe=50&divisa={$tipomoneda}&fecha={$smarty.now|date_format:"%d/%m/%Y"}&idioma={$Idioma}" /> </form> Gracias! Link to comment Share on other sites More sharing options...
jcm3610 Posted November 3, 2014 Author Share Posted November 3, 2014 Hola de nuevo, volviendo a este tema, ya consigo mas o menos que funcione salvo por una cosa (importante). La cantidad del carrito no se corresponde con la que lleva al TPV virtual de Unicaja. En el carrito, los datos que pasa por POST son correctos, el siguiente paso que es como una página de bienvenida (todavía perteneciente al módulo) también pasa bien los datos por POST a la página de Unicaja. El tema es que cuando se llega al paso definitivo, ya en la web de Unicaja, el total que muestra no es el mismo que se le ha pasado. Es extraño porque el total es siempre el mismo, da igual lo que tenga el carrito, a Unicaja llegan siempre por ejemplo 40€. Esa cantidad varía extrañamente sola (los 40€) cada x tiempo, por ejemplo, hoy da igual el total que le pase en el carrito que sólo muestra 50€. Algún dato creo que no está llegando bien, pero no sé cuál, y lo que no sé es de donde se saca esas cantidades fijas, que pase lo que le pase no varía. Alguna idea/sugerencia/experiencia con esto?? xD Me tiene ya un poco loco Link to comment Share on other sites More sharing options...
Recommended Posts