Saltearse al contenido

PrestaShop Customer

El componente PrestaShop Customer de Nappai actúa como un puente seguro y eficiente entre tu sistema de automatización y tu tienda PrestaShop. Su propósito principal es permitirte gestionar (crear, buscar, actualizar o eliminar) la información de los clientes y sus direcciones directamente desde tus flujos de trabajo.

Este componente no requiere que escribas código complejo; en su lugar, utiliza la API oficial de PrestaShop para comunicarse con tu tienda, asegurando que los datos se sincronicen correctamente en tiempo real.

Conexión y Credenciales

Este componente requiere configurar previamente una credencial en el panel de Nappai para poder interactuar con el servicio externo:

  1. Dirígete a la sección de Credenciales en tu panel de Nappai.
  2. Crea una nueva credencial del tipo PrestaShop y guarda los campos requeridos (Shop URL y PrestaShop Api Key). Puedes generar tu clave de API en el panel de administración de PrestaShop yendo a Parámetros Avanzados > WebService.
  3. En tu flujo de trabajo, selecciona la credencial guardada en el campo de entrada Credential de este nodo.

Entradas

Modo de Mapeo (Mapping Mode)

Este componente cuenta con un modo especial llamado “Mapping Mode” (Modo de Mapeo). Cuando activas este modo mediante el interruptor, se habilita una entrada adicional llamada “Mapping Data” y cada campo de entrada te ofrece tres formas diferentes de proporcionar datos:

  • Fixed (Fijo): Escribes el valor directamente en el campo.
  • Mapped (Mapeado): Conectas la salida de otro componente para usar su resultado como valor.
  • Javascript: Escribes código Javascript para calcular el valor dinámicamente.

Esta flexibilidad te permite crear flujos de trabajo más dinámicos y conectados.

Campos de Entrada

Los siguientes campos están disponibles para configurar este componente. Cada campo puede estar visible en diferentes operaciones:

  • Operation: Elige el tipo de operación que deseas realizar en la tienda PrestaShop.

    • Visible en: Ninguna (Campo de control interno)
  • Query Type: Define el método de búsqueda que deseas utilizar para localizar clientes (lista completa, por ID o por email).

    • Visible en: Ninguna (Campo de control interno)
  • Customer ID: El identificador único del cliente que deseas recuperar, actualizar o eliminar.

    • Visible en: Ninguna (Campo de control interno)
  • Search Email: La dirección de correo electrónico utilizada para realizar búsquedas específicas.

    • Visible en: Ninguna (Campo de control interno)
  • Max Results: El número máximo de clientes que deseas que se devuelvan en una búsqueda.

    • Visible en: Ninguna (Campo de control interno)
  • First Name: El nombre del cliente.

    • Visible en: Ninguna (Campo de control interno)
  • Last Name: El apellido del cliente.

    • Visible en: Ninguna (Campo de control interno)
  • Email: La dirección de correo electrónico del cliente.

    • Visible en: Ninguna (Campo de control interno)
  • Password: La contraseña para la cuenta del cliente (requerido para crear nuevas cuentas).

    • Visible en: Ninguna (Campo de control interno)
  • Newsletter Subscription: Indica si el cliente está suscrito a la lista de correos de noticias.

    • Visible en: Ninguna (Campo de control interno)
  • Active: Indica si la cuenta del cliente está activa.

    • Visible en: Ninguna (Campo de control interno)
  • Address ID: El identificador de la dirección específica que deseas gestionar.

    • Visible en: Ninguna (Campo de control interno)
  • Customer ID: El identificador del cliente necesario para operaciones relacionadas con direcciones.

    • Visible en: Ninguna (Campo de control interno)
  • Alias: Un alias para la dirección (por ejemplo, ‘Casa’ o ‘Oficina’).

    • Visible en: Ninguna (Campo de control interno)
  • Address Line 1: La línea principal de la dirección.

    • Visible en: Ninguna (Campo de control interno)
  • Address Line 2: Una línea adicional de dirección (opcional).

    • Visible en: Ninguna (Campo de control interno)
  • Postal Code: El código postal o ZIP de la dirección.

    • Visible en: Ninguna (Campo de control interno)
  • City: El nombre de la ciudad.

    • Visible en: Ninguna (Campo de control interno)
  • Country ID: El identificador del país en PrestaShop (ej. 6 para España, 21 para Francia).

    • Visible en: Ninguna (Campo de control interno)
  • State/Province ID: El identificador del estado o provincia (opcional).

    • Visible en: Ninguna (Campo de control interno)
  • Phone: El número de teléfono del cliente.

    • Visible en: Ninguna (Campo de control interno)

Salidas

Ejemplo de Respuesta JSON

El componente devuelve un objeto Data que contiene toda la información del cliente o la operación realizada. A continuación, se muestra un ejemplo de cómo se estructura esta información para que puedas mapear los valores en los siguientes componentes de tu flujo: json { “id”: 12345, “email”: “cliente@ejemplo.com”, “firstname”: “Juan”, “lastname”: “Pérez”, “active”: true, “newsletter_subscription”: true, “addresses”: { “1”: { “alias”: “Casa”, “address1”: “Calle Principal 1”, “city”: “Madrid”, “postcode”: “28001”, “country_id”: 6 } } }

Conectividad

Este componente suele utilizarse como un nodo central en la gestión de datos de clientes. Su salida Data es comúnmente conectada a los siguientes tipos de componentes:

  1. Gestión de Emails: La información del cliente (como el email) se mapea a componentes de envío de correos (ej. SendGrid, Mailgun) para enviar facturas, bienvenida o marketing.
  2. Carga de Datos (Upsert): Los resultados se envían a sistemas de CRM o bases de datos para mantener sincronizados los registros de clientes en todas las plataformas de la empresa.
  3. Validación de Flujos: El estado devuelto se utiliza para verificar si la operación fue exitosa antes de proceder a pasos críticos como el envío de un pedido.

Ejemplo de Uso

Escenario: Registro automático de un nuevo cliente

Imagina que recibes un formulario de suscripción en tu web y deseas crear automáticamente al cliente en tu tienda PrestaShop y en tu base de datos interna.

  1. Obtención de Datos: Un componente anterior captura el First Name, Last Name y Email del formulario.
  2. Gestión de PrestaShop: Conectas estos datos al componente PrestaShop Customer.
  3. Operación: Asegúrate de que el campo Password tenga un valor inicial para la cuenta (o generarlo automáticamente).
  4. Resultado: El componente devuelve los datos del cliente creado en Data.
  5. Acción Posterior: Mapeas el ID del cliente devuelto a un componente de “Envío de Email de Bienvenida” para confirmar el registro.

Consejos y Mejores Prácticas

  • Uso de IDs: Siempre utiliza el campo Customer ID cuando necesites actualizar o eliminar un cliente existente para evitar crear duplicados.
  • Búsquedas Eficientes: Para encontrar un cliente rápidamente, utiliza Search Email si conoces el correo, ya que suele ser más rápido que buscar por lista completa.
  • Mapeo Dinámico: Aprovecha el Mapping Mode para extraer datos de otros flujos (como webhooks de e-commerce) y enviarlos directamente a PrestaShop sin intervención manual.
  • Manejo de Errores: Si la operación falla, revisa la estructura del JSON de salida para identificar códigos de error específicos de la API de PrestaShop.

Consideraciones de Seguridad

  • Protección de Credenciales: Nunca compartas la PrestaShop Api Key generada en tu panel de Nappai. Esta clave otorga acceso a tu tienda.
  • Gestión de Contraseñas: El campo Password es sensible. Asegúrate de que las contraseñas se generen de forma segura o se manejen a través de variables de entorno en tus flujos.
  • Permisos de API: Al configurar tu credencial en PrestaShop, concede solo los permisos necesarios (lectura/escritura) para mantener la seguridad de tu tienda.