por: Carlos Quesada

Solución de precios personalizados por rol de usuario en WooCommerce más API REST

  • Plugins
  • Woocommerce

Introducción a los Precios Personalizados en WooCommerce

En el mundo del ecommerce, la personalización es clave para maximizar las conversiones y ofrecer una experiencia única a cada cliente; aún más si estamos hablando de una tienda de Wordpress. Woocommerce es el plugin por excelencia para dotar de las potentes funcionalidades de comercio electrónico a tu sitio web. Sin embargo, tiene una estructura rígida que solo podrás mejorar con la ayuda de otros plugins, la intervención de un programador o ambas situaciones.

Una necesidad común a la hora de personalizar una tienda es la facilidad de poder crear precios personalizados según tipo de usuario. Es una estrategia bien común que muchas tiendas, por ejemplo de tecnología o mayoristas, ofrezcan descuentos a los estudiantes o usuarios VIP. Con esta estrategia adaptas los precios a cada situación y lograr convertir más que con un solo precio fijo.

Para lograr que esta estrategia se haga realidad necesitarás crear un rol de usuario específico (estudiante) y tener precios específicos, ya sean descuentos o bien un precio fijo.

Soluciones alternativas para precios personalizados en WooCommerce

Primero que todo, es bueno que conozcas las alternativas que existen en el mercado para solucionar esta problemática así como sus ventajas y deficiencias, tanto gratis como de pago:

  1. Custom User Defined Pricing for Woocommerce

    También conocido como “Precios definidos por el usuario para Woocommerce”, es un módulo premium que permite configurar precios personalizados para diferentes roles de usuario. Es una opción muy fiable, ya que está disponible en la tienda oficial de plugins de Woocommerce y recibe constantes actualizaciones. Las desventajas: es de pago y no ofrece opciones si se busca integración avanzada con la API de WooCommerce.

  2. Custom Price for WooCommerce

    Una opción gratuita disponible para todos en el repositorio oficial de WordPress. Este plugin es ideal para quienes buscan una solución sencilla sin coste, pero puede quedarse corto al no tener funcionalidades específicas que puedas necesitar.

  3. Dynamic Pricing Plugins

    Este módulo ofrece la funcionalidad de añadir a tu ecommerce precios dinámicos basados en condiciones que pueden variar según tus necesidades, añadiendo una capa extra de personalización a la forma en la que se muestran los precios condicionalmente. En mi opinión, está muy bien si es el tipo de funcionalidad que estás buscando.

La imagen muestra la página de descarga y compra del plugin oficial Custom User Defined Pricing for Woocommerce Página de compra del plugin Custom User Defined Pricing for Woocommerce

🤔 Sin embargo, aunque estos plugins ofrecen unas soluciones para muchas necesidades relacionadas con precios personalizados en wordpress, pueden no ser suficientes si necesitas una integración más profunda, como por ejemplo, una interacción directa con la API de WooCommerce para gestionar precios desde un CRM u otro sistema externo.

Hasta este punto había llegado, igual que tú, sin respuesta alguna a la problemática.

Explicaré un poco el contexto para entender el problema. Uno de mis clientes necesitaba añadir la funcionalidad de precios personalizados para estudiantes y profesionales. Actualmente tiene una tienda online de productos de belleza, por lo que se asocia con diferentes salones de belleza o estudiantes del sector.

El plugin de pago Custom User Defined Pricing for Woocommerce, podría servirle. ¿El inconveniente? El cliente tiene un ERP desde el cuál nutre el inventario de la tienda para tener actualizado los productos que se venden en la tienda física. El principal problema de los plugins antes mencionados es que ninguno ofrecía la posibilidad de que esos precios personalizados por rol de usuario se pusieran disponibles en la base de datos para que el software ERP los pudiera leer y editar.

¿Qué es la API de Woocommerce?

La API de WooCommerce es una herramienta muy útil que nos ofrece el plugin de ecommerce en Wordpress. Nos permite a los desarrolladores interactuar con casi todos los aspectos de una tienda WooCommerce desde aplicaciones externas para crear, leer o escribir datos. Esto incluye la posibilidad de gestionar productos, pedidos, clientes y, lo más importante para este artículo, añadir precios personalizados.

Un plugin de precios personalizado con la API de WooCommerce

Una vez investigado el mercado insatisfactoriamente, no quedaba otra, tenía que buscar la forma de crear un plugin. Un código sencillo y funcional que respondiera exactamente a esta necesidad: Crear precios customizados por rol de usuario y trabajar con ellos a través de la API de Woocommerce

Creación de un Plugin Personalizado: Solución Real para Precios por Rol de Usuario

Desarrollar un plugin personalizado fue la solución definitiva. Desarrollé un plugin que permite crear campos de precios específicos para cada rol de usuario que existe en la tienda, y lo más importante, hace que estos campos estén disponibles para leer y escribir a través de la API de WooCommerce. Esto no solo soluciona la necesidad específica para el ecommerce del cliente, sino que también abrió la puerta a una personalización prácticamente ilimitada de los precios en la tienda.

El plugin creado lo he nombrado Custom Price by User Role. Actualmente está en una versión temprana pero que si tienes esta necesidad te solucionará al instante la funcionalidad de poder editar los precios personalizados por rol de usuario con la API. Mi próximo paso es acondicionarlo y publicarlo en el directorio de plugins de Wordpress.org.

## Paso a Paso: Añadiendo Precios por Rol de Usuario en WooCommerce

A continuación, quiero guiarte por los pasos esenciales para configurar precios personalizados por rol de usuario en WooCommerce, utilizando tanto la interfaz del plugin como la API de WooCommerce.

  1. Configurar los roles de usuario
  • Identifica los roles que necesitas en tu tienda, como “Estudiante”, “Mayorista”, “Miembro VIP”, etc.
  • Utiliza un plugin para añadir estos roles si no existen aún en tu tienda. Yo uso y recomiendo utilizar el plugin de Members, es ligero y te permite crear los roles sin mucho conocimiento técnico.

La imagen muestra la interfaz de administración del plugin Members para combinar con este plugin Interfaz de administración del plugin Members

  1. Instalación del plugin para añadir precios personalizados por rol
  • En este ⬇️ enlace tendrás acceso al repositorio de GitHub oficial del plugin. Puedes descargarlo comprimido en .zip y subirlo manualmente al sitio de Wordpress. Seguidamente accede al área de ajustes del plugin y activa los precios personalizados por rol de usuario. Ya estaría listo y verás en la sección de configuración de precios de cada producto nuevos campos por cada rol de usuario que hay en tu tienda.
  • Configura precios diferenciados según el rol y asegúrate de que estos se actualicen automáticamente a través de la API cuando se modifiquen desde el CRM.

Descargar Plugin

La imagen describe cómo descargar el plugin desde el repositorio de github Descargar plugin comprimido desde respositorio oficial de GitHub

Muy pronto estará el plugin disponible en el repositorio de Wordpress para recibir actualizaciones automáticas.

  1. Lee y edita los precios con la API (para usuarios avanzados)
  • Implementa llamadas a la API de WooCommerce para leer o actualizar los precios de rol desde una aplicación externa. Crea unas nuevas claves de acceso pública y privada para conectar el ERP/CRM con la web. Si utilizas un software creado en .php puedes hacer la llamada con el método CURL. En el repositorio del plugin verás en la documentación un ejemplo de cómo hacer una llamada a la API para leer y escribir los precios nuevos con este método PHP.
  • Realiza varias pruebas en tiempo real para comprobar que el software está realizando correctamente la edición de precios.

→ ¿Aún no te queda claro cómo instalar esta solución? contactarme o agendar una llamada aquí para poder asesorarte

Ventajas para el ecommerce con plugins personalizados

El desarrollo de un plugin personalizado ofrece muchas oportunidades para añadir funcionalidades adicionales, tales como:

  • Descuentos basados en el volumen de compras por rol de usuario.

  • Precios dinámicos que cambian según la temporada o promociones específicas.

  • Optimización de seguridad, asegurando que solo usuarios autorizados puedan modificar los precios a través de la API.

Vista previa de la página de productos con los diferentes campos de precios por rol de usuario Campos de precio del producto para cada rol de usuario

Ten en cuenta la seguridad

Al trabajar con la API de WooCommerce, es importante tener presente la seguridad de tu web, especialmente si la tienda se conecta con otros sistemas externos.

Una API no es más que una puerta de entrada a tu base de datos, por lo que no compartas las credenciales públicamente. La implementación de tokens de acceso seguros, que incluye Woocommerce, y la validación de solicitudes es crucial para proteger los datos de la tienda. Esto último si debe ser verificado por el desarrollador del software.

Conclusión: Optimiza tu tienda WooCommerce con precios personalizados

La implementación de la funcionalidad para añadir precios customizados según el rol del usuario en WooCommerce no solo mejora la experiencia del cliente, sino que también permite maximizar el valor de cada transacción. Obtendrás una comunidad de clientes recurrentes que seguirán comprando porque reciben un beneficio exclusivo en tu tienda que otros no pueden ofrecer.

A través de una integración adecuada con la API de WooCommerce, es posible lograr una solución totalmente personalizada y escalable que se adapte a las necesidades de tu tienda online y los softwares adicionales que se utilizan para gestionar el inventario.

Con las herramientas adecuadas y un enfoque en la personalización, puedes asegurarte de que tu tienda WooCommerce no solo sea competitiva, sino también esté preparada para ofrecer experiencias únicas que fidelicen a tus clientes y optimizar tus ingresos.

¿Quiéres saber más?

🗓️ Agendar llamada ahora


Busco aportar valor

Newsletter Ux

Recibe información relevante, recursos, técnicas, tutoriales y noticias sobre el Diseño UX, Product Design y Desarrollo Web