Hola @ejercitopatoso
Muchas gracias por los comentarios. Disculpa que no haya podido responderte con la velocidad que querías, pero son unas fechas difíciles.
El plugin no está preparado para ninguna de las opciones que indicas. Piensa que la información que se pide es la mínima que “exige” Redsys a la hora de hacer el pago.
Lo único que puedes hacer es pedir que en numero de pedido pongan el DNI y el precio pasarlo tu por $_GET en la URL, así cada producto se rellenaría con el precio indicado.
Esto serío así https://www.svenska-bcn.org/pagina-de-pago?c=90 donde 90 es el precio.
Algo más complicado sería algo con JavaScript con el contact form 7 y el plugin de Redsys, donde vas autorellenando los campos o fuerzas a que el submit del contact form te haga el email y haga el submit del formulario.
Espero que con esta respuesta puedas hacer lo que necesitas.
Salut!
Buenas Adrian,
He conseguido que el formulario de matrícula (https://www.svenska-bcn.org/matricula) funcione y, al enviar el formulario, pase los parámetros por URL. Lo puedes hacer con el plugin de Redirection for CF7 (https://es.wordpress.org/plugins/wpcf7-redirect/). La URL quedaría de este estilo:
https://www.svenska-bcn.org/pago-matricula/?nombre-completo=EMILIO%20JOSE%20FERNANDEZ&numero-documento=12345678A&tipo-de-curso=INTENSIVO
Ahora me surge la duda: entiendo que para que estos valores se concatenen en los campos correspondientes, tengo que tocar el PHP del código, ¿es así? Es decir, para el ejemplo que tengo, los campos del formulario deberían ser:
CÓDIGO DE PEDIDO: 12345678A-EMILIO JOSE FERNANDEZ-INTENSIVO
CANTIDAD A PAGAR: 300 (dependería si es INTENSIVO, SEMESTRAL o ANUAL)
Tampoco sé si es posible esa limitación en el campo del código de pedido.
Un saludo y gracias de antemano.
Buenas adriandegrafreak
He conseguido hacer que funcione, correctamente, el plugin y el pago. He creado un código alfanumérico para cada transacción y el precio, que se envían al formulario de pago gracias al plugin de redireccion. Ahora me falta saber una cosa adicional.
Quiero que al realizar el pago, no vuelva a la página original sino que vaya a la página de agradecimiento y, en caso de fallo, vuelva a la página de pago. ¿Cómo debería hacer esto? Entiendo que es con los shortcode, pero no sé donde los debería colocar.
Igualmente, ¿como puedo personalizar esas páginas?
La página desde donde podrías hacer una prueba es https://www.svenska-bcn.org/matricula-en-curso-intensivo/. Al rellenar los datos, te redirecciona a tu plugin. Pero tanto si va bien, como si es erróneo, se queda en la misma página.
Un saludo.
Actualmente no está pensado para redirigir, tendrías que capturar el POST que te devuelve y hacerle tu la redirección.
En un futuro la idea es tener campos para que la redirección sea directa, pero no te puedo dar fechas.
Salut!
No se sí te he entendido bien… He visto en la documentación del plugin que existen los shortcode correspondientes para el pago OK y para el pago NOK. ¿Donde tendría que colocarlos? Por tu comentario, entiendo que en la misma web que el formulario, no?
Un saludo.
Si, en la misma página y solo se verá en el caso de que sea ok o ko la transacción. Igualmente mediante hooks de WP podrías redirigirlo a la página que quisieras, pero en un futuro pondremos directamente para que vayan a la URL que se le marque.
Pues ahí está mi problema. He puesto los códigos, pero no sé si es porque estoy en entorno de pruebas o que, pero me redirecciona a la misma página con el mismo formulario de pago… Voy a revisar a ver si he puesto mal los shortcode o algo así.
Gracias por todo y, como hasta ahora, te mantengo informado.
Mira, te cuento, por si me puedes terminar de ayudar. La web desde la que se realiza el pago es https://www.svenska-bcn.org/pago-matricula, a la que siempre se llamará con los parámetros de c y np rellenos.
[pago_tpv][/pago_tpv]
Con este shortcode, muestra el formulario. A continuación, el shortcode del pago correcto sería:
[pago_tpv_ok]Tu pago se ha procesado correctamente. Bienvenido a SVENSKA![/pago_tpv_ok]
Sin embargo, tras hacer toda la lógica del pago de RedSYS y pagar correctamente, la web vuelve al mismo punto con la tabla rellena pero no muestra el mensaje… ¿Que podría ser el problema?
Si necesitas cualquier información, no dudes en pedirmela.
Un saludo.
Buenos días,
Pues al final he conseguido una solución, modificando tu plugin que ha funcionado en mi web. El cambio consiste en lo siguiente:
a. He generado dos paginas en mi wordpress (una de OK y otra de KO).
b. En el código del plugin, en el fichero donde se definen los parámetros de la llamada a REDSYS, he forzado a que la URL_OK y la URL_KO, en vez de ser la misma de envío, sean cada una de las dos páginas que he generado.
Lo he probado ya con dos clientes en entorno real y está funcionando. Plugin recomendable, relativamente fácil de configurar y que, con un poco de idea, te puede sacar de un aprieto.
Un saludo para todos.
Hola @ejercitopatoso
¿Querrías compartir el código conmigo para aplicarle las mejoras?
En un principio la idea principal será poner en el admin, las URLs de las redirecciones para que cada usuario envie al usuario a donde quiera. O generar unas CONSTANTS para hacerle override desde el wp-config.
Ya me dices y enhorabuena por el workaround que le has dado al plugin. Me parece muy buena integración!!
Por supuesto, para mi es un placer ayudar a la Comunidad. El fichero modificado es el class-pago-redsys-grafreak-public.php, que se encontraría en la ruta /wp-content/plugins/pago-redsys-tpv-grafreak/public.
Te envío el fichero por correo ahora mismo.
Un saludo.
Hola
He visto muy interesante vuestro hilo y querría hacer algo similiar. ¿como lo hicisteis al final?
Hola @ivanauskas82
Todo se basa en el plugin
https://es.wordpress.org/plugins/wpcf7-redirect/
o con cualquier formualrio de contacto que permita la redirección y pasar parámtetros en la URL.
Lo que haces es configurar que cuando el formulario se envia, te redirija a la página donde tengas el plugin de pago confgigurado, poniéndole en la URL los parámetros.
https://es.wordpress.org/plugins/pago-redsys-tpv-grafreak/#%C2%BFpuedo%20pre-rellenar%20los%20campos%20para%20que%20el%20usuario%20s%C3%B3lo%20deba%20realizar%20el%20pago%3F
Espero que puedas ponerlo en práctica.
Salut!