HCL Commerce Enterprise

Estudio de caso: HCL Commerce modelo de contrato

HCL Commerce : sus contratos son la base para determinar qué clientes pueden comprar en una tienda en línea y a qué precio. Las funciones de los contratos son flexibles en el sentido de que pueden admitir muchos tipos de modelos de negocio de e-commerce y sus complejos requisitos empresariales. Esta flexibilidad es potente y un diseño de contrato óptimo puede minimizar la cantidad de esfuerzo que se necesita para gestionar cuentas de negocio y contratos. Además, un diseño óptimo puede minimizar la cantidad de recursos del sistema que son necesarios y mejorar así el rendimiento del sistema.

Conceptos fundamentales

Después de comprender estos conceptos, puede combinarlos para formar un diseño óptimo para un sitio de e-commerce.

Contratos
Un contrato define los términos y condiciones bajos los que compra un cliente mientras está en un sitio de e-commerce. Estos términos modifican la experiencia de compra del cliente, incluidos los productos que el cliente puede comprar, los precios a los que tiene derecho y las opciones de envío y pago que puede utilizar. Para habilitar un contrato de modo que puedan acceder al mismo los clientes de una tienda, el contrato se despliega en la tienda.
Términos y condiciones
El término y condición utilizado más frecuentemente es el término filtro de catálogo. Este término es la base para establecer los productos y precios autorizados. El término Filtro de catálogo tiene los valores siguientes:
Todo el catálogo está seleccionado
El cliente puede adquirir todo lo que desee en el catálogo maestro, excepto las categorías o los productos excluidos.
Todo el catálogo no está seleccionado
El cliente puede comprar las categorías y productos que están incluidos, excepto las categorías o los productos excluidos.
El cliente tiene derecho a emplear varios términos de Filtro de catálogo, y cualquier término excluye una categoría o un producto
El cliente no puede comprar dicha categoría o producto bajo el contrato aplicable.
Ajuste por porcentaje para todo el catálogo, categorías específicas y productos específicos
Dentro de un término, el valor de nivel más bajo de la jerarquía de catálogo tiene prioridad para fijar precios.
Se pueden establecer precios fijos en productos específicos
Crea una lista de precios personalizada, que tiene una prioridad de precios mayor que la lista de precios maestra de la tienda. Por lo tanto, el precio fijo prevalece sobre cualquier precio de la lista de precios maestra.

Si un cliente tiene derecho a utilizar varios términos de Filtro de catálogo, también tiene derecho a utilizar el precio más bajo del conjunto de términos. La prioridad de la lista de precios también ayuda a determinar qué término de precio tiene prioridad.

En algunos escenarios de negocio, los términos de precios y productos de un cliente se mantienen en un sistema externo. Estos términos deben importarse a HCL Commerce para proporcionar la autorización correcta en la tienda en línea. En esta situación, es preferible que el contrato haga referencia a una lista de precios y a un conjunto de productos a través de una política de negocio de Precios correspondiente y una política de negocio de Conjunto de productos. El contrato utiliza los términos y condiciones de Precio y Conjunto de productos adecuados para hacer referencia a la política de negocio respectiva.

El Centro de gestión da soporte a un filtro de catálogo que funciona de forma diferente del filtro de catálogo de HCL Commerce Accelerator que se describe aquí. Por ejemplo, el filtro de catálogo de Centro de gestión se utiliza solamente para establecer los términos de titularidad del producto; para los términos de fijación de precios, puede crear una regla de precio en el Centro de gestión y asignarla a un contrato. Para obtener más información sobre las características de precios de filtrado de catálogo y fijación de precios del Centro de gestión que puede utilizar en los contratos, consulte Herramienta Filtro de catálogo y fijación de precios.

Participantes
El sistema e-commerce determina quién tiene permiso para utilizar un contrato de los participantes 'Compradores' que están asociados a un contrato. Los participantes Compradores pueden ser una Organización o un Grupo de miembros y un contrato puede tener varios participantes Compradores. Un contrato también puede tener un participante Comprador vacío, lo que significa que todos los clientes pueden utilizar dicho contrato.

Cuando un cliente inicia la sesión en el sitio, tiene derecho sobre:

  • Todos los contratos en los que su organización padre inmediata, o cualquier organización padre, sea un participante Comprador. La organización padre inmediata puede ser la que organización a la que se asigna directamente el miembro o una organización en la que tenga el rol OrganizationParticipant.
  • Todos los contratos en los que hay un grupo de miembros al que pertenecen es un participante Comprador.
  • Todos los contratos en los que hay un participante Comprador vacío (a menos que esté limitada por su cuenta de negocio).

Si un cliente es un comprador invitado o no ha iniciado la sesión, solamente tiene autorización sobre los contratos con participantes Compradores vacíos.

Contratos de cliente
Un contrato de cliente es aquel que tiene un participante Comprador. Esto se distingue de un contrato base, que no tiene ningún participante Comprador. (Tener un participante Comprador vacío es distinto de no tener ningún participante Comprador.) Cuando el sistema HCL Commerce determina los contratos autorizados de un cliente, forman parte de un conjunto de contratos de cliente que se han desplegado en la tienda.
Contratos base
Un contrato base es un contrato sin participantes Compradores. Los contratos base se utilizan para que contengan un conjunto de términos y condiciones que se pueden compartir entre diversos contratos. Ningún cliente tiene autorización directa sobre un contrato base. Un cliente puede utilizar los términos y condiciones de un contrato base solo si uno de sus contratos base hace referencia al contrato base.

Un contrato puede hacer referencia directa a un contrato base únicamente, pero puede haber una jerarquía de contratos, lo que permite que un contrato comparta los términos de varios contratos base. Incluir todos los términos posibles en los contratos base minimiza la gestión de contratos necesaria y disminuye la cantidad de recursos del sistema necesarios.

Los contratos base se pueden crear en una tienda de cara al cliente para que los comparta cualquier contrato en la tienda. Asimismo, se pueden crear contratos base en una tienda con elementos que permite que los contratos base se compartan entre contratos de muchas tiendas diferentes.

Los términos y condiciones que son aplicables a diversos clientes o a diversos contratos de un único cliente deben formalizarse en un contrato base. Todos los contratos que hacen referencia al contrato base comparten los términos del contrato base. Los cambios que se realizan en un contrato base se incluyen automáticamente en cualquier contrato de cliente que haga referencia al contrato base.

Para un sitio ampliado, puede crear una base de la tienda con elementos de escaparate para contrato predeterminado. En la tienda de sitio ampliado, los tipos de contratos siguientes se pueden referir a la tienda con elementos de escaparate base para contrato predeterminado y compartir sus términos y condiciones:
  • Contratos predeterminados
  • B2B directBase para contratos predeterminados
Para ver ejemplos de modelos de contratos utilizando la base para contratos predeterminados, consulte Asignación de filtros de catálogo y contratos y Asignación de reglas de precios y contratos.
Contrato predeterminado
Una tienda tiene un contrato predeterminado, que permite que los compradores invitados y no registrados compren en la tienda. El contrato tiene un participante Comprador vacío. El contrato predeterminado generalmente tiene los términos y condiciones que especifican que el catálogo maestro completo está en venta a precios estándar.

Los contratos predeterminados pueden heredar términos de la base para contratos predeterminados.

Cuentas de negocio
Los contratos base son el modo más común de compartir términos y condiciones. Sin embargo, los términos que solo son aplicables a un cliente determinado deben formularse en la cuenta de negocio del cliente. Todos los contratos bajo la cuenta de negocio comparten los términos de la cuenta. Estos términos incluyen las órdenes de compra y las líneas de crédito.
ContractSetInSession
Tal como se describe, un cliente puede tener derecho sobre un conjunto de contratos de cliente. Basándose en el diseño, puede haber situaciones en las que permita que el cliente utilice un subconjunto de los contratos autorizados en su sesión de compra actual solamente. Por ejemplo, un cliente puede tener derecho sobre tres contratos, cada uno de ellos para un departamento de su empresa. Sin embargo, la empresa requiere que cada departamento tenga un pedido por separado. Cuando el cliente inicia la sesión, elige para qué departamento van a comprar y el contrato correspondiente para dicho departamento se establece en la sesión del cliente. Por lo tanto, el cliente ve los productos para el departamento adecuado. Este proceso garantiza que el pedido se aplique a un departamento.
OrganizationSetInSession
Un cliente solo puede tener una organización padre inmediata en la jerarquía de organización de HCL Commerce y por lo tanto solo está autorizado a utilizar los contratos autorizados para esa organización. Esto puede resultar restrictivo en muchas situaciones. Un cliente puede estar autorizado a comprar en nombre de varias organizaciones. Para hacerlo, el cliente puede tener el rol OrganizationParticipant en muchas organizaciones. Cuando el cliente inicia la sesión, puede elegir para qué organización desea comprar. Esta organización se establece en la sesión del cliente y se convierte en la organización activa. A continuación, el cliente está autorizado a utilizar todos los contratos autorizados para la organización activa seleccionada. De forma predeterminada, la organización activa de la sesión es la organización padre inmediata del cliente.

Estudio de caso de modelo de contrato

El ejemplo siguiente ilustra cómo se utilizan estos conceptos para crear un modelo de contrato óptimo para una tienda en línea. Una empresa tiene un sitio B2B commerce para sus clientes. Deben cumplirse los siguientes requisitos para sus clientes:
  • Los clientes tienen una o más direcciones de facturación
  • Cada dirección de facturación tiene una o más direcciones de envío asociadas
  • Cuando un cliente está comprando, compra para una combinación de facturación/envío a la vez
  • Los clientes tienen derecho a comprar un subconjunto del catálogo maestro
  • Los clientes obtienen el precio de catálogo menos que tengan un precio personalizado definido que prevalezca sobre el precio de catálogo

En primer lugar, piense en un diseño sencillo sin compartir. Cada cliente tiene un conjunto de contratos y cada uno representa una combinación exclusiva de facturación/envío. El diagrama 1 ilustra un ejemplo en el que cliente X tiene dos direcciones de envío y cada dirección de facturación tiene dos direcciones de envío. El cliente X tiene autorización para cuatro contratos de cliente. Cuando un empleado del cliente X inicia la sesión, está autorizado a comprar con los cuatro contratos autorizados. (La cuenta de negocio X del cliente especifica que no están autorizados a comprar utilizando el contrato predeterminado de la tienda. Si la cuenta no tenía esto establecido, entonces el cliente también tendrá derecho a un quinto contrato, el contrato predeterminado de la tienda. Sin embargo, existe un requisito que establece que el comprador puede comprar para una combinación de facturación/envío a la vez. Para cumplir con este requisito, la tienda puede presentar una lista de contratos autorizados al comprador y permitir que el comprador elija uno de los contratos. El comprador puede utilizar un contrato seleccionado durante esta sesión de compra.

Imagen que muestra un diseño simple tal y como se describe en el párrafo anterior.

No obstante, esta solución presenta un problema de uso. Cada cliente puede tener 10 direcciones de envío y cada facturación podría tener al menos cinco direcciones de envío asociadas. Cuando un cliente inicia la sesión, se le presenta una lista de 50 combinaciones de facturación/envío. No es deseable que el cliente deba desplazarse por una lista muy larga. Cuando los clientes inician la sesión, saben para qué dirección de facturación están comprando y, por lo tanto, se les debe presentar primero una lista de direcciones de facturación. Cuando seleccionen una dirección de facturación, solo tendrán que seleccionar la dirección de envío adecuada. Se podría formular alguna lógica de cliente para presentar los cincuenta contratos de modo que tengan sentido, pero preferiblemente la función de contratos se puede mejorar para que nos ayude a presentar las selecciones de contratos. Las direcciones de facturación se pueden diseñar como contratos base y las direcciones de envío asociadas son contratos de cliente que hacen referencia a un contrato de facturación.

El diagrama 2 ilustra estas relaciones de contratos. Este diseño modificado ayuda a que podamos presentar primero el conjunto de contratos base y luego a solo visualizar los contratos base de envío de referencia cuando el contrato de facturación se haya seleccionado. Esta solución continúa requiriendo que se escriba código personalizado que busque todos los contratos base de los contratos de cliente autorizados.

Imagen que muestra un diseño simple tal y como se describe en el párrafo anterior.

La agrupación de contratos de facturación y de envío en organizaciones diferentes ayuda a resolver este problema. Utilizamos la característica de organización activa de HCL Commerce. En lugar de visualizar una lista de contratos base, visualizamos una lista de organizaciones para las cuales el cliente puede comprar. Un cliente puede comprar para su propia organización, además de cualquier organización bajo la cual se otorgue un rol de compra especial. Este rol se denomina el rol OrganizationParticipant.

El cliente X ya no tendrá derecho directo a los contratos de cliente. En su lugar, debemos crear organizaciones que representen cada una de las direcciones de facturación. Estas organizaciones de facturación serán a continuación los participantes Compradores en los contratos de cliente de envío bajo el contrato base de facturación. El cliente X obtiene autorización para utilizar los contratos para cada una de las organizaciones de facturación si tiene el rol OrganizationParticipant en la organización de facturación. Cuando un miembro del cliente X inicia la sesión, se le puede presentar una lista de todas las organizaciones en las que tiene el rol de OrganizationParticipant. Esto esencialmente significa que tiene una lista de las organizaciones de facturación. Cuando se selecciona una de estas organizaciones, se invoca el mandato OrganizationSetInSession y cambia el usuario para que sea miembro de la organización seleccionada para esta sesión. El resultado es que el cliente tiene derecho a los contratos autorizados para la organización de facturación seleccionada. Por lo tanto, se puede presentar al cliente la lista de contratos de facturación autorizados para la organización de facturación. Cuando el cliente selecciona uno de los contratos de envío, dicho contrato se puede establecer en la sesión con el mandato ContractSetInSession y ahora el cliente comprará bajo el contrato de facturación/envío seleccionado.

Imagen que muestra el modelo de contrato

Hay algunas ventajas adicionales si se utiliza la solución Participante de la organización. Para cada organización activa que el cliente utiliza, tienen un carro de la compra separado. Esto se ajusta perfectamente con el modelo de negocio ya que cada organización activa se correlaciona con una dirección de facturación. Por lo tanto, cada dirección de facturación exclusiva tendrá su propio carro de la compra y pedido, de modo que cada dirección de facturación se facturará por separado. Sin embargo, diferentes direcciones de envío (contratos diferentes) bajo la misma facturación compartirán el pedido.

La dirección de facturación para cada facturación se puede colocar en la libreta de direcciones de la organización de facturación. De este modo, todas las direcciones de facturación estarán separadas y se podrán identificar fácilmente durante el proceso de pasar por caja. En el diseño original, el usuario debe identificar la dirección de facturación correcta en la libreta de direcciones del cliente. Ahora, las direcciones de facturación están separadas en cada de libreta de direcciones de la organización de facturación y la dirección de facturación se puede completar en las páginas de pasar por caja seleccionando la dirección de facturación de la libreta de direcciones de la organización activa.

Todos los contratos de un cliente deben compartir los mismos términos y condiciones de productos y precios. Se crea un contrato base que contiene el término y la condición del filtro de catálogo y todos los contratos base de facturación del cliente hacen referencia al contrato base del filtro de catálogo del cliente. Por lo tanto, todos los contratos de cliente comparten los mismos términos y condiciones, y los términos y condiciones deben mantenerse bajo un contrato. Si hay algún término adicional específico a una dirección de facturación o envío, entonces se pueden añadir al contrato aplicable. Cada contrato del cliente de envío consta únicamente de la unión de los términos y condiciones del contrato de envío, el contrato base de facturación de referencia y el contrato base de autorización del cliente.

El cliente tiene autorización para la lista de precios de la tienda, con algunas excepciones en las que el cliente tiene su propio precio específico. El filtro de catálogo puede especificar toda la información de productos y precios. El filtro utiliza dos listas de precios: la lista de precios maestra de la tienda para obtener la lista de precios y la lista de excepciones de precios del cliente. El precio de catálogo de excepciones de precios del cliente tiene una prioridad superior respecto al precio de catálogo maestro de la tienda para asegurarse de que las excepciones prevalecen sobre el precio de catálogo.

El cliente solo tiene autorización para adquirir un subconjunto del catálogo maestro. Cualquier exclusión de las categorías o productos se puede establecer en el filtro de catálogo.

Imagen que muestra el modelo de contrato.

Revisión del diseño

Para revisar el diseño:

  • Se ha utilizado ContractSetInSession como ámbito de la sesión de compras del cliente en un contrato. El contrato se corresponde con una combinación de facturación/envío. Utilice ContractSetInSession para restringir los contratos en uso durante la sesión de todos los contratos autorizados a los que un comprador puede estar autorizado.
  • Se utilizan contratos base para compartir los términos y condiciones de los clientes individuales. Utilizar contratos base permite hacer un uso más eficaz de los datos dentro del sistema HCL Commerce y requiere menos esfuerzo de gestión.
  • Se ha utilizado OrganizationSetInSession para permitir que el cliente compre bajo varias cuentas. Esto ha permitido presentar al cliente de forma más eficaz las opciones de facturación/envío y ha ayudado a crear un pedido diferente para cada facturación.
  • Varias listas de precios permiten que cada cliente tenga una lista de precios individual que puede prevalecer sobre los precios estándar disponibles para productos del catálogo maestro. La prioridad de una lista de precios ayuda a determinar en un contrato qué términos y condiciones de fijación de precios deben tener prioridad.

Conclusión

Existen varias formas de diseñar un contrato de precios y productos de un cliente en una tienda de HCL Commerce. Sin embargo, si se utilizan eficazmente los conceptos fundamentales que se describen en el tema, se puede crear un diseño óptimo de contrato. A menudo, este diseño puede reducir la gestión de contratos necesarios y reducir la carga en los recursos del sistema. Comprender todas las funciones y posibilidades del contrato puede tardar algún tiempo y requerir experiencia. Sin embargo, cuando estos conceptos llegan a dominarse, cómo crear un modelo de requisitos de contrato de una tienda específica se convierte en una tarea mucho más clara.