En WooCommerce, los cupones son una excelente forma de ofrecer descuentos y fidelizar clientes.
Pero, ¿qué pasa si querés que un cupón solo se aplique cuando el cliente elige pagar por transferencia bancaria? 🤔
Por defecto, WooCommerce no tiene una opción nativa para eso y hay plugins pagos para hacerlo. Sin embargo, con un pequeño snippet de código podés lograrlo fácilmente.
Objetivo
Queremos que el cliente pueda ingresar un cupón de descuento, pero que se elimine automáticamente si elige otro método de pago distinto a la transferencia bancaria.
Paso 1: Agregar el snippet al sitio
Podés pegar este código en el archivo functions.php de tu tema hijo o, mejor aún, usar un plugin como Code Snippets para agregarlo sin tocar los archivos del tema.
En este caso, como solamente tengo habilitado los métodos de pago por transferencia y mercado pago, en el código indico que si el método es mercado pago elimine el cupón y muestra el mensaje.
Cómo funciona
- El código detecta qué método de pago seleccionó el usuario en el checkout.
- Si no es “Transferencia bancaria” (por defecto,
bacs), elimina los cupones activos. - WooCommerce muestra un mensaje explicando por qué el cupón fue quitado.
De esta forma, el cupón solo se mantiene válido cuando el cliente elige pagar por transferencia.
Tip extra
Si usás Mercado Pago, Stripe, u otro gateway, podés aplicar la misma lógica cambiando el ID del método de pago.
Conclusión
Con este snippet, limitás los descuentos a quienes eligen pagar por transferencia, impulsando ese medio de pago.
Es una solución simple, efectiva y totalmente compatible con el nuevo checkout de WooCommerce.