Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Painel
borderColor#E4E3E3
titleColor#ffffff
borderWidth1
titleBGColor#704581
titleCONTENIDO


Expandir
titleExpandir contenido
Índice
maxLevel3



Introducción

Visión general

El presente documento tiene como objetivo proporcionar a nuestros clientes una guía inicial de integración de Promo.

Podrán encontrar aqui aquí los diferentes tipos de integraciones que pueden existir entre los distintos puntos de ventas o sistemas externos con Promo.

...

Para esto Promo posee un proceso que evalúa las promociones y los productos asociados a la publicación en el Eel E-Commerce.  Dicha información es generada como mensajes en una cola RabbitMQ de la cual los sitios pueden tomarlos. (Para mas información ver  PROMO ver: PROMO 7.2 - Manual de Integración 7.0 - Colas de Mensajes)



En base a este esquema, el E-Commerce podrá descargarse de la cola RabbitMQ los datos posteados por el motor de Promociones para así obtener para todos los ítems las promociones que aplican y mostrarlas al momento de la navegación.

...

Para mas información ver:    PROMO 7.2 - Manual de Usuario Final 7 y PROMO PROMO 7.2 - Manual de Instalación 7.0

...


Evaluación de reglas de negocio en el Motor de Promociones

El motor de PROMO encargado de resolver e informar las promociones participantes en un Ticket según las definiciones (promociones) que se hayan generado a través de la consola. También es el nexo entre los puntos de ventas y la consola de administración central para todo lo referente a la gestión de elementos de Loyalty, listas de precios y transacciones realizadas en los puntos de venta.

Para mas información ver: PROMO 7.2 - Manual de Integración 7.0 - Motor

Comunicación con Sistemas Externos vía Servicios y Colas de mensajes

...

Para mas información ver: PROMO 7.2 - Manual de Integración 7.0 - Servicios y PROMO 7.2 - Manual de Integración 7.0 - Colas de Mensajes


Integrarse con Promo

En esta sección detallaremos los distintos tipos de integraciones que podemos implementar entre Promo y las aplicaciones de venta o cualquier otro sistema que quiera comunicarse con Promo para consultar información o enviar datos.

...

El motor de promociones es el componente de PROMO encargado de recibir requerimientos desde el punto de venta y luego responderlos. Esta interacción se realizará a través de una serie de mensajes con formato XML que siguen un Protocolo de Comunicación definido. En este sentido el motor de promociones puede funcionar tanto como servidor TCP/IP o bien como servidor REST, dependiendo de las necesidades, preferencias y requerimientos tecnológicos que posea el punto de venta.


Comunicación vía TCP (pustos Físicos - E-Commerce)

Expandir
titleDocumentación relacionada a la comunicación TCP

Servidor TCP/IP: el motor actúa como un servidor que espera conexiones entrantes en un puerto TCP/IP determinado. El punto de venta debe enviar y recibir paquetes TCP/IP con formato HEADER | MESSAGE.

...

Comunicación vía REST (puestos Físicos - E-Commerce)

Expandir
titleDocumentación relacionada a la comunicación REST

Servidor REST: Se basa en protocolos cliente-servidor, sin estado, y se implementa utilizando protocolo HTTP. Como servidor REST, el motor posee dos formas de trabajo: Mediante solicitudes modo GET o modo POST (>v 7.EP2.1)

Circuito para uso de Función de Convivencia Opciones

Expandir
titleCircuito para uso de Función de Convivencia Opciones

Opciones

Primeramente se deben crear las promociones que van a estar incluidas en las opciones del mapa:

Luego distribuirlas en el mapa:

y luego en las transacciones:

1° caso, no se agrega la opción choseOption. 


Bloco de código
languagexml
themeEmacs
<message companyId="napse" store="tienda 1" terminal="1" date-time="2022-12-05 18:00:00" init-tck="true" messageId="1" void-trx="false" response="true" status="sale" evaluate="true" map-version="139" suggest="false">
<item-add seq="1" unitprice="1400" xprice="1400" qty="1"  code="Coca-Cola" discountable="true"/>
</message>

En este caso la aplicación aplicará el descuento en la primer promoción que encuentra:

Bloco de código
languagexml
themeEmacs
---- message ------
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<message ack="0" companyId="napse" engine="7.2.2#236" mapversion="139" messageId="1" store="tienda 1" terminal="1">
  <optional>
    <promo id="PromoO1" nro="638e15f77e8f8e2654b40864">
      <benefit TLOGMessage="PromoO1" account="" applicationMethod="resume" baseAmount="1400.00" benefitType="PercentageDiscount" discountPercentage="50.00" displayMessage="PromoO1" name="638e15f77e8f8e2654b40864" nro="638e16157e8f8e2654b4086b" order="1" printerMessage="PromoO1" prorationMethod="PROPORTIONAL" unit="qty">
        <apply>
          <item magnitude="0.000" qty="1.000" seq="1" value="700.00" valueWithTaxes="700.00" xprice="1400.00"/>
        </apply>
      </benefit>
    </promo>
  </optional>
  <optional>
    <promo id="PromoO2" nro="638e16317e8f8e2654b4086e">
      <benefit TLOGMessage="PromoO2" account="" applicationMethod="resume" baseAmount="1400.00" benefitType="FixedDiscount" discountAmount="1000.00" displayMessage="PromoO2" name="638e16317e8f8e2654b4086e" nro="638e16427e8f8e2654b40872" order="1" printerMessage="PromoO2" prorationMethod="PROPORTIONAL" unit="qty">
        <apply>
          <item magnitude="0.000" qty="1.000" seq="1" value="1000.00" valueWithTaxes="1000.00" xprice="1400.00"/>
        </apply>
      </benefit>
    </promo>
  </optional>
  <optional>
    <promo id="PromoO3" nro="638e16757e8f8e2654b40878">
      <benefit TLOGMessage="PromoO3" account="" amount="" applicationMethod="resume" baseAmount="1400.00" benefitType="CouponBenefit" couponId="601" displayMessage="PromoO3" infoPos="0" name="638e16757e8f8e2654b40878" nro="638e16997e8f8e2654b4087f" order="1" printerMessage="PromoO3" qty="1.000">
        <apply>
          <item magnitude="0.000" qty="1.000" seq="1" value="0.00" valueWithTaxes="0.00" xprice="1400.00"/>
        </apply>
      </benefit>
    </promo>
  </optional>
</message>


2° caso, se agrega la opción choseOption="1"; o sea se seleccionó la segunda promoción:

Bloco de código
languagexml
themeEmacs
<message companyId="napse" store="tienda 1" terminal="1" date-time="2022-12-05 18:00:00" init-tck="true" messageId="1" void-trx="false" response="true" status="finish" evaluate="true" map-version="139" suggest="false" choseOption="1">
<item-add seq="1" unitprice="1400" xprice="1400" qty="1"  code="Coca-Cola" discountable="true"/>
</message>

La aplicación dará el beneficio de la segunda promoción

Bloco de código
languagexml
themeEmacs
----- message ------
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<message ack="0" companyId="napse" engine="7.2.2#236" mapversion="139" messageId="1" store="tienda 1" terminal="1">
  <optional>
    <promo id="PromoO1" nro="638e15f77e8f8e2654b40864">
      <benefit TLOGMessage="PromoO1" account="" applicationMethod="resume" baseAmount="1400.00" benefitType="PercentageDiscount" discountPercentage="50.00" displayMessage="PromoO1" name="638e15f77e8f8e2654b40864" nro="638e16157e8f8e2654b4086b" order="1" printerMessage="PromoO1" prorationMethod="PROPORTIONAL" unit="qty">
        <apply>
          <item magnitude="0.000" qty="1.000" seq="1" value="700.00" valueWithTaxes="700.00" xprice="1400.00"/>
        </apply>
      </benefit>
    </promo>
  </optional>
  <optional>
    <promo id="PromoO2" nro="638e16317e8f8e2654b4086e">
      <benefit TLOGMessage="PromoO2" account="" applicationMethod="resume" baseAmount="1400.00" benefitType="FixedDiscount" discountAmount="1000.00" displayMessage="PromoO2" name="638e16317e8f8e2654b4086e" nro="638e16427e8f8e2654b40872" order="1" printerMessage="PromoO2" prorationMethod="PROPORTIONAL" unit="qty">
        <apply>
          <item magnitude="0.000" qty="1.000" seq="1" value="1000.00" valueWithTaxes="1000.00" xprice="1400.00"/>
        </apply>
      </benefit>
    </promo>
  </optional>
  <optional>
    <promo id="PromoO3" nro="638e16757e8f8e2654b40878">
      <benefit TLOGMessage="PromoO3" account="" amount="" applicationMethod="resume" baseAmount="1400.00" benefitType="CouponBenefit" couponId="601" displayMessage="PromoO3" infoPos="0" name="638e16757e8f8e2654b40878" nro="638e16997e8f8e2654b4087f" order="1" printerMessage="PromoO3" qty="1.000">
        <apply>
          <item magnitude="0.000" qty="1.000" seq="1" value="0.00" valueWithTaxes="0.00" xprice="1400.00"/>
        </apply>
      </benefit>
    </promo>
  </optional>
</message>

----- message ------
<?xml version="1.0" encoding="UTF-8"?><message ack="0" companyId="napse" engine="7.2.2#236" mapversion="139" messageId="1" store="tienda 1" terminal="1" transaction="napse_tienda 1_1_20221205180000">
  <loyalty>
    <loyaltycards/>
    <coupons/>
    <errors/>
    <customers/>
    <redeemTable/>
  </loyalty>
</message>

En la consola:

Image Modified





Integración con la Mensajería PDV - Motor de Promo

...

Esta comunicación cuenta con mensajes de "request" que son los enviados desde el punto de venta al motor para evaluar promociones o consultar elementos de Fidelidad y con un "response" que son las respuestas del motor de Promociones al punto de venta con el resultado de la evaluacion evaluación o consulta solicitada.

El Motor de Promociones es capaz de manejar múltiples sesiones, lo cual le permite atender diversas transacciones paralelamente, para asi poder gestionar de forma simultanea múltiples consultas de distintos puntos de venta.

En el  : PROMO 7.2 - Manual de Integración 7.0 - Motor podremos consultar las secciones para el correcto manejo de la mensajería con el motor así como también las estructuras de los "request" y "response".

...

Podrán administrarse cupones de manera centralizada, registrando las transacciones que los emiten o redimen y llevando estadísticas (KPI) de las transacciones registradas y estad estado de los cupones. Pudiendo tener estos saldos asociados o estar asignados a un cliente.

...

Para mas información sobre la integración con el modulo de fidelidad ver el Manual de  PROMO en: PROMO 7.2 - Manual de Integración 7.0 - Motor


Promo provee servicios por los cuales podrán sistemas externos podrán solicitar información de elementos de los fidelidad, así como también gestionarlos, generando nuevas tarjetas de fidelidad consumiendo y cargando saldos, gestionar clientes y sus elementos de fidelidad. Esto podrá realizarse por medio de los Servicios Rets y las Colas de Mensajes. 

Para mas información sobre la integración de sistemas externos y automatización de interfaces consultar manual de : PROMO 7.2 - Manual de Integración 7.0 - Servicios  y manual de Promo PROMO 7.2 - Manual de integración 7.0 Integración - Colas de mensajesMensajes


Integración con el modulo de Precios

...

En el documento de integración con el motor de Promociones podremos consultar las siguientes secciones para la correcta implementación de las listas de precios. ver en sección Modulo de Precios en el manual de PROMO PROMO 7.2 - Manual de Usuario Final 7.


Promo provee servicios por medio del cual podrán integrarse sistemas externos y solicitar o enviar información referente a la gestión de Listas de Precios, para mas información sobre ello, ver Precios: Servicio de Carga De Lista Cero en el manual de PROMO en: PROMO 7.2 - Manual de Integración 7.0 - Servicios 



 Comunicación con Comunicación con Sistemas Externos


Servicios Rest

...

Para mas información sobre la integración de sistemas externos vía colas de mensajes para la gestión de datos en Promo ver Promo ver: PROMO 7.2 - Manual de integración 7.0 Integración - Colas de mensajes.Mensajes




Circuito para uso de Balances