Cómo desactivar pasarelas de pago según el perfil de usuario

Una posible personalización muy interesante que no viene por defecto con la instalación de WooCommerce es la posibilidad de poder mostrar u ocultar pasarelas de pago según el perfil de usuario.

Esto puede ser muy útil en diversas situaciones, como tiendas profesionales privadas, suscripciones, membresías, etc.

Imagina, por ejemplo, que por defecto quieres inactivar el pago mediante Paypal para los nuevos clientes (perfil por defecto customer) pero quieres que esté activa para los clientes habituales ( nuevo perfil personalizado buencliente) ¿A que se te ocurren otras posibles situaciones?

Vamos a ver cómo hacerlo.

Localiza el slug del perfil de usuario

Puedes usar este truco con los perfiles por defecto pero cuando realmente tiene sentido es cuando creas perfiles de cliente personalizados.

Para ello puedes usar un plugin como Members. Te será, de paso, muy útil para identificar fácilmente el slug del perfil de usuario WordPress para el que quieres hacer la modificación.

El plugin es muy fácil de usar. Añade un nuevo enlace bajo el menú Usuarios > Perfiles, e incluye una utilidad para clonar un perfil existente.

En nuestro caso es perfecto simplemente clonar el perfil de cliente que WooCommerce crea por defecto (customer).

Luego, en la lista de perfiles, podrás ver los slugs de los distintos perfiles de usuario de WordPress y que otros plugins hayan ido añadiendo.

Localiza el ID de la pasarela de pago

Lo siguiente es conocer el ID de la pasarela de pago que quieres inactivar, y nada más fácil. Simplemente pásate por WooCommerce > Ajustes > Finalizar compra. Abajo tendrás la lista de pasarelas de pago instaladas, con una columna en la que se muestra el ID de cada una.

Crea la función para desactivar pasarelas de pago según el perfil de usuario

Una vez que ya sabemos dónde encontrar los slugs de los perfiles de usuario y los IDs de las pasarelas de pago ya podemos crear nuestra función, que sería algo así:

Como verás en el código, estamos desactivando la pasarela con el ID paypal para el slug de perfil customer, el perfil por defecto de WooCommerce.

Este código deberás añadirlo al archivo functions.php del tema activo (preferentemente un tema hijo) o a tu plugin de personalizaciones.

Nota: Añade este tipo de funciones siempre al final del archivo functions.php

Guarda los cambios y ya lo tienes. Los nuevos clientes (customer) no podrán pagar por Paypal. Una vez hayan hecho su primera compra podrás cambiarles de perfil a buencliente y entonces ya verán todas las pasarelas de pago, Paypal incluido.

¿Se puede hacer con plugins?

Por supuesto. Si no te animas con el código, o quieres acceder a más personalizaciones de todo tipo, hay varios plugins que te permitirán hacer esto mismo, a golpe de clic, porque alguien ya ha programado todo antes por nosotros.

Role-Based Payment / Shipping Methods (49$)

Con este plugin de los creadores de WooCommerce puedes definir qué pasarelas de pago, y también qué métodos de envío, estarán disponibles para los distintos perfiles de usuario existentes.

Booster for WooCommerce (39,99$)

Con la versión de pago de este plugin puedes especificar también qué pasarelas de pago tendrá disponible cada perfil de usuario.

Yith Payment Method Restrictions for WooCommerce (56$)

Restringir pasarela por país

El más completo de estos plugins no solo te permite restringir pasarelas de pago por perfil de usuario, sino que también puedes crear reglas sencillas y complejas (mixtas).

  • Crear reglas de restricción para todas las pasarelas instaladas.
  • Establecer una o más condiciones por cada regla (que el usuario tenga tal perfil, además sea de este país, etc)
  • Desactivar pasarelas de pago si…
    • el usuario tiene un perfil determinado
    • el carrito incluye uno o más productos de los especificados en la regla
    • el carrito incluye uno o más productos de unas categorías o etiquetas específicas
    • si el importe del carrito es menos, igual o más de una cantidad especificada en la regla
    • el usuario es de uno de los países especificados en la regla
  • Puede cambiar también de cuenta bancaria según una regla específica

Como habrás visto la posibilidad está ahí, y puedes crear reglas personalizadas para limitar pasarelas de pago según el perfil de usuario de manera gratuita con tu propio código o pagando un poco por un plugin que te ofrezca esta solución, y alguna más de paso, que estoy seguro que alguna idea ya te he dado.

Valora este artículo para mejorar la calidad del blog ...

Al hacer una valoración se recoge una cookie con la IP de tu dispositivo

FlojitoNo está malEstá bienMe ha servidoFantástico (4 votos, promedio: 5,00 de 5)
Cargando…

Autor: Fernando Tellado

Fernando Tellado, apasionado de WordPress, profesor, consultor y ponente. Maquero cansino, padre de tres hijos y de una perrita Beagle, Bilbaíno de nacimiento, Español de corazón y ciudadano de donde me quieran. Autor del libro WordPress - La tela de la araña. Mi blog personal es Navegando con red, donde he crecido como escritor en la red y ofrezco mis visiones acerca de la Web 2.0 y la blogosfera.

Comparte esta entrada en
468 ad

Pin It on Pinterest