Shopify Customer Privacy API 如何运作

Shopify Customer Privacy API 帮助商家遵守 GDPR 和 CCPA 等隐私法规,允许应用和第三方服务(如 Meta Pixel、Google Ads 以及其他跟踪脚本)尊重用户同意。

通过此 API,您的 JavaScript 代码可以在加载跟踪或营销标签之前检查访客的同意状态。

如何使用 Shopify Customer Privacy API 设置同意状态

如果您正在集成同意管理平台(CMP)或创建自定义同意体验,可以使用 setTrackingConsent() 方法以编程方式更新客户的同意偏好。

此方法仅应由授权的 CMP 使用,或在获得用户明确同意后使用。它不用于覆盖用户通过 Shopify 原生横幅或外部 CMP 做出的决定。

示例:设置同意状态

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,
    });
  }
);

如何使用 Shopify Customer Privacy API 检查同意状态

使用以下代码加载 API 并访问访客的同意偏好:

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);
  }
);

请确保将您的逻辑放在回调函数内部,因为 API 只有在完全加载后才可用。

输出示例

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

同意类别

API 返回以下类别的同意状态:

  • analytics
  • marketing
  • preferences
  • sale_of_data

每个类别会返回 'yes''no',允许您根据用户偏好有条件地加载或阻止第三方脚本。

essential 始终由 Shopify 启用,无法切换。