Facebook, WebTool, Wordpress

在 Opencart 用 Facebook Pixel 追蹤綠界金流交易結果

本篇文章主要為解決消費者使用綠界金流時,金流不會自動返回商店,導致訂單金額無法被 Facebook Pixel 抓到,影響到 Purchase 購買、Currency 貨幣代號事件的紀錄,進而影響廣告預估成效。

下載並安裝 Opencart 外掛

購買下載 OpenCart – [Multistore] Facebook Pixel Analytics ($20 USD)

該作者有提供另外一版 Pro,可以在後台直接編輯像素追蹤參數,大家可以視需求要不要購買,本文章不需購買 Pro ,Light 版本即可使用。

安裝與設定此外掛的方法請參考原作者的文件,這邊不贅述。

下載並安裝綠界金流

下載綠界金流的 Opencart,設定方式一樣請參照綠界說明。

編輯綠界金流檔案

打開 /upload/catalog/model/extension/payment/ECPay.Payment.Integration.php 找到 OrderResultURL,改成你的商店的交易完成頁網址。

編輯 Pixel 外掛

打開 catalog/controller/extension/analytics/fb_marketing.php

找到 case ‘purchase’
下面的

if(!empty($this->session->data['last_order_id'])) {
  $order_id = $this->session->data['last_order_id'];
}

在下面加入:

else {  //接收綠界回傳訂單編號
  $order_id = $_POST['MerchantTradeNo'];
}
整段看起來像這樣

以上,就這樣完成了。

如果要進行測試,可使用信用卡付款,
填入綠界的測試卡號:4311 9522 2222 2222
檢查碼:222
到期日:大於消費日當日即可
持卡人、電話:隨便寫

但根據綠界的串接手冊說明,這不是最佳解,我目前也想不出來有比較好的方式,如果有人知道的話歡迎跟我說。

  1. 如果消費者使用銀聯卡及非即時交易(ATM、CVS 便利商店、BARCODE 便利商店條碼),因為不支援回傳商店的參數 OrderResultURL,所以無法追蹤訂單金額。
  2. 部分銀行 WebATM 在交易成功後,會停留在銀行的頁面,並不會導回給綠界,因此綠界也不會將頁面導回到 OrderResultURL 的頁面,所以也無法追蹤。

發表迴響