Moclick Bridge
集成

转化对象

如何在确认页上报交易金额和标识符,以及每种情况下会发生什么。

声明方式#

在订单确认页上定义 window.MoclickConversion

HTML确认页
<script>
  window.MoclickConversion = {
    value: 150.00,
    transaction_id: "ORDER-12345"
  };
</script>

它在文档中的位置无关紧要:放在全局代码之前或之后都可以。参见 转化是如何被侦测到的

参数#

参数类型必填说明
valuenumber | 数字字符串 建议 转化的金额。发送时保留两位小数。
transaction_idstring 建议 订单、线索或事件的唯一标识符。这是去重的键。
技术上可选,实际运营中必填

代码接受 window.MoclickConversion = {} 并仍会尝试记录。省略它们的代价是:

  • 没有 value转化被记录为无金额。收入和 CPA 报表将残缺不全。
  • 没有 transaction_id去重只能退回到仅按点击标识符判断。 该访客因此每次点击只会记录一笔转化——同一用户的第二次购买会被当作重复项静默丢弃。

金额格式#

  • 接受数字(150.5)或数字字符串("150.50"
  • 小数分隔符必须用点号。逗号不会被解析
  • 不要包含货币符号或千位分隔符
  • 发送时始终保留两位小数;存储时也是两位小数
JavaScript示例
// 正确
{ value: 1499.9,     transaction_id: "A-1001" }   // → 1499.90
{ value: "1499.90",  transaction_id: "A-1001" }
{ value: 0,          transaction_id: "LEAD-77" }  // 无收入的线索

// 错误
{ value: "1.499,90", transaction_id: "A-1001" }   // 逗号小数点 → 被忽略
{ value: "R$ 1499,90", transaction_id: "A-1001" } // 货币符号 → 被忽略

如何选择 transaction_id#

它必须每笔转化唯一稳定——同一笔订单无论页面刷新多少次, 都必须产生同一个标识符。

取值来源是否合适
电商订单号合适——这是默认选择
支付渠道的交易 ID合适
CRM 中的线索 ID合适,适用于线索获取类广告系列
时间戳或随机数不合适——刷新页面就会产生重复转化
客户 ID 或邮箱地址不合适——同一客户的第二次购买会被丢弃
始终是同一个固定值不合适——只有第一笔转化会被记录

不要把个人数据用作 transaction_id。把邮箱、身份证件号或电话号码放进该字段, 它们就会作为交易标识符被存储,从而毫无必要地扩大了所处理的个人数据范围。请使用订单号。

去重#

去重发生在两个彼此独立的层面。刷新确认页、通过浏览器历史回到该页,或收到重复的回传, 都不会产生重复转化。

浏览器端#

代码会在本地标记该转化已经发送过,从而避免页面刷新时重复发送。如果本地存储被阻止, 服务端去重会接管这一职责。

服务端#

以事件类型、点击标识符和 transaction_id 组成唯一键:

  • 每个点击标识符只记录一条点击
  • 每一对「点击标识符 + transaction_id」只记录一笔转化
  • 没有 transaction_id 的转化只按点击标识符去重

重复请求按成功处理:响应正常,且不会写入两次。这让重发变得安全——参见 重发与幂等性

同一页面上的多笔转化#

若要在不刷新页面的情况下记录多笔转化——比如购物车中拆分成多个订单、分步骤的订阅流程—— 只需重新给该对象赋值。每一次赋值都会被侦测并处理,而不同的 transaction_id 可确保它不会被当成重复项:

JavaScript
window.MoclickConversion = { value: 150, transaction_id: "A-1" };
// 稍后,在同一次页面加载中
window.MoclickConversion = { value: 89.9, transaction_id: "A-2" };
Atualizado em agosto 5, 2026