¿Alguna vez has pensado en aplicar la política de precios a clientes como estrategia de fidelización? Pues que sepas que es una herramienta muy potente, si la sabes aprovechar.
Índice de contenidos
¿Qué gano aplicando descuentos a clientes?
Tanto si te planteas una estrategia de descuentos a clientes que ya han hecho alguna compra, como si simplemente estás valorando fomentar el registro de clientes aunque aún no hayan hecho ninguna compra, debes saber que puede ser un potenciador importante de ventas.
Algunos de los Ecommerce más famosos utilizan esta estrategia para fidelizar clientes y fomentar ventas.
Porque cuando eres capaz de generar una gran base de clientes gracias a descuentos exclusivos para ellos dispones de una potentísima base de usuarios a los que animar a realizar más compras, ya sea desde una newsletter o simplemente desde su cuenta de usuario.
Está más que demostrado el enorme potencial de incitar al registro, a la membresía, para obtener descuentos exclusivos para clientes registrados, la mayoría de las tiendas online de venta privada lo utilizan con éxito.
¿Cuál es el primer paso?
El primer paso es conseguir que los visitantes se registren para obtener los descuentos exclusivos solo para clientes.
Esto lo puedes conseguir de manera tan sencilla como el aviso de tienda que viene en toda instalación de WooCommerce por defecto.
Simplemente personalízalo para animar a los visitantes a registrarse para obtener el descuento exclusivo para clientes.
Eso sí, como les estás animando a registrarse en la página de cuenta de tu tienda online debes asegurarte de que se permita el registro, algo que consigues con este ajuste de WooCommerce…
Tienes el ajuste en WooCommerce > Ajustes > Cuentas y privacidad.
Una vez activo, cuando un usuario visite la página de «Mi cuenta» podrá acceder si ya era cliente o registrarse como nuevo cliente.
Para finalizar, asegúrate de que en los ajustes generales de WordPress marcar el perfil de «Cliente» como perfil usuario por defecto.
¿Cómo aplico descuentos en WooCommerce a los usuarios registrados?
¡Hechos los preliminares vamos al lío!
Hay dos maneras fundamentalmente con las que puedes aplicar descuentos a tus clientes ya registrados, que estén conectados claro.
Aplicar descuentos a clientes con un código
Mira tú por dónde hay un código que te facilita esto y mucho, este:
/* Parte 1 - Producto de WooCommerce */ add_filter( 'woocommerce_get_price_html', 'ayudawp_descuento_clientes_producto', 9999, 2 ); function ayudawp_descuento_clientes_producto( $price_html, $product ) { // SOLO EN LA TIENDA if ( is_admin() ) return $price_html; // SOLO SI NO HAY PRECIO if ( '' === $product->get_price() ) return $price_html; // SI EL CLIENTE ESTÁ CONECTADO APLICAR 20% DE DESCUENTO if ( wc_current_user_has_role( 'customer' ) ) { $orig_price = wc_get_price_to_display( $product ); $price_html = wc_price( $orig_price * 0.80 ); } return $price_html; } /* Parte 2 - Carrito y finalizar compra */ add_action( 'woocommerce_before_calculate_totals', 'ayudawp_descuento_clientes_carrito', 9999 ); function ayudawp_descuento_clientes_carrito( $cart ) { if ( is_admin() && ! defined( 'DOING_AJAX' ) ) return; if ( did_action( 'woocommerce_before_calculate_totals' ) >= 2 ) return; // SI EL CLIENTE NO ESTA CONECTADO NO SE APLICA DESCUENTO if ( ! wc_current_user_has_role( 'customer' ) ) return; // LOOP POR PRODUCTOS DEL CARRITO Y APLICAR DESCUENTO 20% foreach ( $cart->get_cart() as $cart_item_key => $cart_item ) { $product = $cart_item['data']; $price = $product->get_price(); $cart_item['data']->set_price( $price * 0.80 ); } }
Este código aplica un 20% de descuento ($orig_price * 0.80
) a cada producto o a todo el carrito si el usuario tiene el perfil de cliente (customer
) y está conectado.
En caso contrario muestra al visitante el precio normal que hayas introducido al crear el producto, descuentos normales incluidos si los tuviese.
O sea, que un visitante normal vería así un producto:
Mientras que el cliente conectado lo vería con el descuento del 20% añadido, así:
Como siempre, el código anterior puedes añadirlo al final del archivo functions.php del tema activo o a tu plugin de personalizaciones.
Aplicar descuentos a clientes con plugins
Hay varios plugins que permiten hacer personalizaciones de este tipo en WooCommerce, incluso los encontrarás en el directorio de WordPress.org, pero ninguno gratuito, la personalización de precios por tipo de usuario es siempre una opción premium.
Y de los plugins que ofrecen estas personalizaciones de precios por perfil de usuario el mejor y con la mejor relación precio/prestaciones es WooCommerce Role Based Prices
Nada más instalarlo tienes una nueva página de ajustes en Yith > Role Based Prices en la que configurar todos los aspectos.
Lo primero es definir a qué precio se aplicarán los descuentos especiales (normal o rebajado)…
Para a continuación configurar a qué perfiles de usuario se pueden aplicar descuentos.
Y, la página de ajustes más importante, la de reglas de precio.
Y añadir reglas es realmente sencillo, solo tienes que rellenar unos pocos campos para configurarla.
Como ves en la captura anterior es sencillísimo:
- Eliges a qué perfil de usuario se aplicará.
- Defines si se aplicará a todos los productos o filtras por categorías o etiquetas (exclusión o inclusión).
- Especificas si el descuento será fijo o por porcentaje.
- Escribes el valor.
- Aplicas una prioridad si hubiese alguna otra regla sobre lo mismos productos y/o perfiles.
Las reglas se aplicarán automáticamente, pero es que además puedes crear reglas de precio específicas por producto.
En la página de creación/edición de productos verás un nuevo campo desde el que crear reglas personalizadas por producto.
Igual que las reglas globales, tremendamente sencillas de crear y configurar.
Para finalizar, puedes incluso personalizar los textos que se mostrarán a los visitantes, para animarles a registrarse y obtener descuentos.
Esto siempre es importante ¿no crees?
Como ves, WooCommerce Role Based Prices un pedazo de plugin, con enormes posibilidades, pues no solo puedes aplicar reglas de precio por perfil de usuario…
- Puedes editar precios (en porcentaje y cantidad) para un producto simple, una categoría o etiqueta de productos, basándote en perfiles de usuario, etc.
- Puedes aplicar precios distintos tanto al precio normal como al rebajado
- Puedes cambiar la visibilidad del botón del añadir al carrito, el precio basado en perfiles, el precio, todo, según el p perfil de usuario
- Puedes mostrar u ocultar impuestos de productos basándote en perfiles de usuario
- Funciona con productos variables.
Además, como es un plugin de Yith, además de ser de por sí muy competitivo en precio, como todos sus plugins, puedes aprovechar el cupón de descuento que siempre tengo activo aquí.
Tanto si te sirve el código o prefieres optar por el plugin, espero que te animes a crear una estrategia de descuentos para clientes, está demostrado que es muy potente, y puede ayudarte a fidelizar y aumentar ventas en tu Ecommerce.
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!
Mucha gracias por tu blog, me ha ayudado mucho, en concreto este artículo me ha venido muy bien. El código funciona bien, no perfectamente, pues la miniatura del carrito no sale siempre bien con los precios, pero es pasable.
Por favor, corrige en el código la línea:
function ayudawp_descuento_clientes( $price_html, $product ) {
por esta:
function ayudawp_descuento_clientes_producto( $price_html, $product ) {
es una ligera omisión, pero con la que tarde un buen rato, hasta averiguar porque no aparecían los precios en el frontend. Así evitamos tiempo perdido a los demás.
Aunque este artículo es antiguo me ha venido muy bien, y seguiré con ganas cualquier otra nueva publicación o video.
Muchas gracias
Uy que tontá de fallo, gracias por avisar 😉
Gracias por la ayuda. Voy a intentar usar tu codigo!
Buenos días Fernando,
antes de nada, agradecerte la excelente y abundante ayudas que ofreces a través de ésta página, que sigo muy frecuentemente.
Respecto a ésta entrada, comentar que he instalado ésta función indistintamente tanto en functions.php como a través del plugin «Code Snippets», y no consigo que funcione.
Hice todos los preparativos que señalas, rol de cliente, crear cliente, etc y nada. Aparecen los precios sin el descuento. No se que puede pasar pues he repasado por activa y por pasiva, tanto el código de la función como los preparativos.
El hosting es SiteGround y Astra Pro es el tema.
Sería necesario alguna otra acción??
Gracias por tu ayuda.
E Torres