Como funciona la Shopify Customer Privacy API

La Shopify Customer Privacy API ayuda a los comerciantes a cumplir con las regulaciones de privacidad como GDPR y CCPA al permitir que las aplicaciones y servicios de terceros (como Meta Pixel, Google Ads y otros scripts de seguimiento) respeten el consentimiento del usuario.

Con esta API, tu codigo JavaScript puede verificar el estado de consentimiento de un visitante antes de cargar etiquetas de seguimiento o marketing.

Como establecer el estado de consentimiento con la Shopify Customer Privacy API

Si estas integrando una Plataforma de Gestion de Consentimiento (CMP) o creando una experiencia de consentimiento personalizada, puedes usar el metodo setTrackingConsent() para actualizar programaticamente las preferencias de consentimiento de un cliente.

Este metodo solo debe ser utilizado por CMP autorizados o despues de recibir el consentimiento explicito del usuario. No esta disenado para anular las decisiones del usuario tomadas a traves del banner nativo de Shopify o CMP externos.

Ejemplo: Establecer el estado de consentimiento

Shopify.loadFeatures(
  [
    {
      name: 'consent-tracking-api',
      version: '0.1',
    },
  ],
  (error) => {
    if (error) {
      console.error('Failed to load consent-tracking-api:', error);
      return;
    }

    // Set consent status after the user agrees (e.g., via custom CMP UI)
    Shopify.customerPrivacy.setTrackingConsent({
      marketing: true,
      analytics: true,
      preferences: true,
    });
  }
);

Como verificar el estado de consentimiento con la Shopify Customer Privacy API

Usa el siguiente codigo para cargar la API y acceder a las preferencias de consentimiento del visitante:

window.Shopify.loadFeatures(
  [
    {
      name: 'consent-tracking-api',
      version: '0.1',
    },
  ],
  (error) => {
    if (error) {
      // Handle loading error
      return;
    }

    // API is ready—check visitor consent
    const consent = window.Shopify.customerPrivacy.currentVisitorConsent();
    console.log(consent);
  }
);

Asegurate de colocar tu logica dentro del callback, ya que la API solo esta disponible una vez que se ha cargado completamente.

Ejemplo de salida

{
  "marketing": "yes",
  "analytics": "yes",
  "preferences": "yes",
  "sale_of_data": "no"
}

Categorias de consentimiento

La API devuelve el estado de consentimiento para las siguientes categorias:

  • analytics
  • marketing
  • preferences
  • sale_of_data

Cada categoria devolvera 'yes' o 'no', lo que te permite cargar o bloquear condicionalmente scripts de terceros segun las preferencias del usuario.

essential siempre esta habilitado por Shopify y no se puede desactivar.