Recuperación de Carrito Abandonado

Configurar Wix Automation

  1. Ve a Automations en el Wix Dashboard y luego haz clic en Create Automation.

  2. Selecciona la automatización que deseas activar (por ejemplo, Cart Abandonment).

  3. Agrega una Velo Code Action y añade un archivo .js con el siguiente código:

WhatsApp
import { secrets } from 'wix-secrets-backend.v2';
import { elevate } from 'wix-auth';
import { fetch } from 'wix-fetch';

// Crear versiones elevadas de las funciones de secrets
const elevatedGetSecretValue = elevate(secrets.getSecretValue);

/**
 * Declaración de función autocomplete, no eliminar
 * @param {import('./__schema__.js').Payload} options
 */
export const invoke = async ({ payload }) => {
  try {
    // Obtener bearer token de manera segura
    const bearerToken = await elevatedGetSecretValue('MERCURI_MESSAGING_API_KEY');
    console.log("Bearer Token",bearerToken)
    // Extraer datos de contacto
    const firstName = payload.contact?.name?.first || '';
    const lastName = payload.contact?.name?.last || '';
    const recipient = payload.contact?.phone || '';

    if (!recipient) {
      console.error('Recipient phone number missing.');
      return {};
    }

    const apiPayload = {
      phoneNumberId: "xxxxxxxxxxxxxxxxxxx",
      channel: "whatsapp",
      recipient: recipient,
      message: {
        type: "template",
        template: {
          templateId: "xxxxxxxxxxxxxxxxxxx",
          parameters: [
            {
              firstName: firstName,
              lastName: lastName
            }
          ]
        }
      },
      saveToInbox: true
    };

    // Llamar a Mercuri API
    const response = await fetch('https://api.mercuri.cx/v1/send_message', {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
        'Authorization': `Bearer ${bearerToken}`
      },
      body: JSON.stringify(apiPayload)
    });

    if (!response.ok) {
      const errorMsg = await response.text();
      console.error(`Mercuri API error: ${response.status} - ${errorMsg}`);
    } else {
      const respData = await response.json();
      console.log('Message sent successfully:', respData);
    }
  } catch (error) {
    console.error('Error in invoke:', error);
  }

  return {};  // Objeto de retorno vacío requerido
};

Nota:🔧 Cambios a realizar después de copiar el código

  1. Actualizar el Secret Name

En esta línea:

const bearerToken = await elevatedGetSecretValue('MERCURI_MESSAGING_API_KEY');

reemplaza 'MERCURI_MESSAGING_API_KEY' con el Secret Name que creaste en Wix Secret Manager.\

  1. Agregar tu Phone Number ID

  • Reemplaza "xxxxxxxxxxxxxxxxxxx" correspondiente a phoneNumberId en el código con el Phone Number ID que copiaste desde el Mercuri Dashboard.

  1. Agregar tu Template ID

  • Reemplaza "xxxxxxxxxxxxxxxxxxx" correspondiente a templateId con el Template ID que copiaste desde el Mercuri Dashboard.

Haz clic en este enlace para ver las instrucciones sobre cómo localizar el Phone Number ID y Template ID.

El arreglo de parameters mapeará automáticamente los valores del payload de Wix Automation a los campos de tu plantilla, como firstName, lastName y recipient.

Pasos Finales

  1. Después de subir el código Velo, guarda los cambios.

  2. Activa la automatización en Wix.

  3. Opcionalmente, prueba con un contacto de ejemplo para asegurar que los mensajes se envíen correctamente.

Una vez completados estos pasos, habrás configurado exitosamente Wix Automation para enviar mensajes de WhatsApp usando la Mercuri API.

Last updated