Skip to main content

Integración con Commerce Cloud

El archivo embed_snippet_sandbox.html contiene el código JavaScript que hay que insertar en las plantillas de Commerce Cloud para mostrar el chat del agente.


Qué hace el snippet

  • Detecta automáticamente el locale del cliente del primer segmento de la URL (ej: /es-es/es_ES, /fr-fr/fr_FR).
  • Guarda el locale en window.HAWKERS_LOCALE y el idioma corto en window.HAWKERS_LANG.
  • Carga el SDK de Agentforce Messaging desde Salesforce.
  • Inicializa el agente con siteUrl, agentId y domainUrl del sandbox.
  • Pasa el idioma detectado como parámetro de UI al widget de chat.

Parámetros del snippet (sandbox)

ParámetroValor
siteUrlhttps://saldum--uat.sandbox.my.site.com/AFMHawkersProductAdviso1781091729027
agentId0XxRR0000009yJV0AY
domainUrlhttps://saldum--uat.sandbox.my.salesforce.com
Messaging SDKhttps://test-service.force.com/embeddedservice/agentforcemessaging/0.3/init.js

:::info Para producción Crear un snippet equivalente con los valores del org de producción. La URL del SDK no lleva el prefijo test-service. :::


Dónde insertar el snippet en SFCC

  • common/layout/page.isml — Template principal de layout (aplica a todas las páginas). Opción recomendada para activación global.
  • Page Designer component — Alternativa para activarlo solo en páginas concretas.
  • Activación gradual — Insertarlo solo en páginas de categoría y detalle de producto (PLP/PDP).

Inconsistencias de locale: snippet vs. Apex

El embed snippet mapea locales que no están en la clase Apex, lo que provoca fallback incorrecto a es_ES para esos mercados:

Locale en snippetEstado en ApexConsecuencia
en_FR · en_IT · en_PT · en_RO❌ No soportadosFallback a es_ES (incorrecto para esos países)
en_CZ · en_GR · en_BG · en_IN❌ No soportadosFallback a es_ES
el_GR✅ SoportadoOK — pero el snippet lo mapea como en_GR, que no coincide con el_GR del Apex

Acción recomendada: Alinear los mapeos del snippet con los de la clase Apex, o añadir los locales faltantes a LOCALE_URL_FIELD si esos mercados tienen campos de precio propios.