Ya está disponible la versión 2.2 de Contact Form 7 – Integración con RedSys, y una de sus novedades está en un sitio que a veces se nos olvida cuidar: la página de gracias, la última pantalla que ve tu cliente cuando vuelve del banco después de pagar con tarjeta o con Bizum.
Desde la versión 1.10 ya podías mostrar en esa página los campos del formulario y algunos datos del pago: el importe, el número de pedido y cualquier campo que hubiera rellenado el cliente. Ahora la página de gracias puede enseñar prácticamente todo lo que RedSys nos devuelve: el código de autorización del banco, la fecha y la hora del pago, la tarjeta utilizada, el motivo por el que se ha rechazado un pago y, si es una suscripción, cuándo será el próximo cobro.
Cómo funciona la página de gracias
Al terminar el pago, RedSys devuelve al cliente a la URL OK si todo ha ido bien o a la URL KO si ha habido algún problema. Las dos se configuran en el perfil, dentro de Contacto > Ajustes RedSys, o en la pestaña RedSys de cada formulario si quieres que uno concreto use las suyas.
En esa página puedes usar dos shortcodes para enseñar un contenido u otro según el resultado:
[cra_ok]...[/cra_ok]: lo que pongas dentro solo se ve si el pago se ha completado.[cra_ko]...[/cra_ko]: lo que pongas dentro solo se ve si el pago ha fallado o se ha cancelado.
Con los dos juntos puedes usar la misma página como URL OK y como URL KO, y dentro de ellos escribir los comodines que te contamos a continuación. El plugin los sustituye por los datos reales del pago cuando el cliente llega a la página.
Todos los comodines disponibles
Datos del pago
[importe]: la cantidad pagada, con el símbolo de la moneda.[ds_order]: el número de pedido en RedSys.[id]: el identificador del pago en WordPress.[estado]: completado, preautorizado, cancelado o pendiente. Nuevo.[metodo_pago]: tarjeta, Bizum o domiciliación bancaria. Nuevo.[formulario]: el nombre del formulario desde el que se ha pagado. Nuevo.[email]: el correo electrónico del cliente. Nuevo.- Cualquier campo del formulario, con su nombre entre corchetes: si tienes un campo
[curso], puedes mostrarlo con[curso]. Las casillas con varias opciones marcadas se muestran ahora separadas por comas.
Respuesta de RedSys
[autorizacion]: el código de autorización que da el banco. Es el justificante que el cliente puede enseñar a su banco si tiene cualquier duda con el cargo.[fecha_pago]y[hora_pago]: cuándo se hizo el pago. La fecha sale con el formato que tengas configurado en WordPress.[tarjeta]: el número de tarjeta enmascarado, por ejemplo454881******0004.[marca_tarjeta]: VISA, Mastercard, American Express, Diners, JCB o UnionPay.[codigo_respuesta]: el código de respuesta de RedSys (Ds_Response).[motivo]: ese mismo código explicado en texto, por ejemplo «Tarjeta caducada».
Suscripción
[periodicidad]: cada cuánto se cobrará.[proximo_cobro]: la fecha del siguiente cobro.[total_cobros]: cuántos cobros se harán en total, o «Ilimitado».[enlace_gestion]: la dirección de la página donde el cliente puede ver y cancelar su suscripción.
Un ejemplo: una sola página para el pago correcto y el fallido
Esta página de gracias sirve a la vez como URL OK y como URL KO. Puedes copiarla en un bloque HTML personalizado y adaptarla a los campos de tu formulario:
[cra_ok]
<h2>¡Gracias, [your-name]! Tu pago se ha completado</h2>
<p>Hemos recibido [importe] con [metodo_pago] el [fecha_pago] a las [hora_pago].</p>
<ul>
<li>Número de pedido: [ds_order]</li>
<li>Código de autorización: [autorizacion]</li>
<li>Tarjeta: [marca_tarjeta] [tarjeta]</li>
</ul>
<p>Te hemos enviado la confirmación a [email].</p>
[/cra_ok]
[cra_ko]
<h2>No se ha podido completar el pago</h2>
<p>Motivo: [motivo]</p>
<p>No se ha realizado ningún cargo. Puedes volver al formulario e intentarlo de nuevo, o escribirnos si el problema continúa.</p>
[/cra_ko]Explica al cliente por qué no ha podido pagar
De todos los comodines nuevos, el que más trabajo te va a ahorrar es probablemente [motivo]. Un «no se ha podido completar el pago» sin más deja al cliente sin saber qué hacer, y lo normal es que acabe escribiéndote. Con [motivo] el código que devuelve RedSys se convierte en un texto que cualquiera entiende: «Tarjeta caducada», «Saldo insuficiente», «A petición del usuario se ha cancelado el pago»…
Colócalo dentro de [cra_ko] y el cliente sabrá enseguida si tiene que probar con otra tarjeta, llamar a su banco o simplemente volver a intentarlo.
Si el pago da de alta una suscripción
Si usas los pagos recurrentes que incorporamos en la versión 2.0, la página de gracias puede resumir las condiciones de la suscripción y darle al cliente, desde el primer momento, el enlace para gestionarla:
[cra_ok]
<p>Tu suscripción está activa: se cobrará [importe] [periodicidad].
El próximo cobro será el [proximo_cobro] (cobros totales: [total_cobros]).</p>
<p><a href="[enlace_gestion]">Gestionar mi suscripción</a></p>
[/cra_ok][enlace_gestion] es solo la dirección, así que úsalo siempre dentro de un enlace, como en el ejemplo. Para que se rellene tienes que tener creada la página con el shortcode [cra_mi_suscripcion] y seleccionada en la pestaña Suscripciones de los ajustes. Si el pago no es recurrente, estos cuatro comodines se quedan vacíos.
Datos que no se pueden falsear
Los datos del pago llegan a la página de gracias en la propia URL, así que cualquiera podría intentar modificarlos a mano. Por eso, antes de sustituir ningún comodín, el plugin comprueba la firma de RedSys con la clave de tu comercio. Si la URL se ha tocado, la firma no coincide y los comodines no se rellenan.
Además, todos los valores se insertan como texto. Si alguien escribe código HTML o JavaScript en un campo del formulario, en la página de gracias se verá tal cual y no se ejecutará.
Eso sí, recuerda que la página de gracias sirve para informar al cliente, no para confirmar el cobro. Puede que vuelva a tu web antes de que haya llegado la notificación del banco, y en ese caso [estado] todavía dirá «Pendiente». Para decidir qué mensaje enseñar usa [cra_ok] y [cra_ko], y para saber si un pago está cobrado fíate siempre del listado de pagos, que se actualiza con la notificación validada de RedSys.
Qué necesitas para que funcionen
- Que tu terminal devuelva los datos del pago. Los comodines se rellenan con los parámetros que RedSys añade a la URL de vuelta. Si te aparecen vacíos, pide a tu banco que active el envío de parámetros en las URL OK y KO del terminal.
- Para
[tarjeta], que el terminal esté configurado para devolver el número de tarjeta. Es una opción que también activa el banco. - Que los comodines estén en el contenido de la página. Funcionan con el editor de bloques y con la mayoría de maquetadores, pero algunos no pasan su contenido por el filtro estándar de WordPress y en ese caso no se sustituyen.
Toda la documentación, dentro del plugin
La versión 2.2 estrena también una pestaña Ayuda en Contacto > Ajustes RedSys, con la documentación completa del plugin traducida a los cuatro idiomas. En su sección Página de gracias tienes esta misma lista de comodines, para tenerla a mano mientras montas la página sin tener que volver a este artículo.
Cómo actualizar
Si tienes tu licencia activada, la actualización te aparecerá directamente en Plugins dentro del escritorio de WordPress. Como siempre, te recomendamos hacer una copia de seguridad antes de actualizar y comprobar después un pago de prueba en el entorno Sis-t: así verás también cómo queda tu nueva página de gracias con datos reales.
¿Todavía no lo usas? Puedes ver todos los detalles y hacerte con él en la página del plugin.
Cualquier duda o problema, escríbenos a contacto@codection.com. Estaremos encantados de ayudarte.
