Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/lukehsuhao/coupon-commission-manager/archive/refs/heads/main.zipWooCommerce 折扣碼分潤管理外掛,專為透過折扣碼進行分潤的使用情境設計。
Author: Powerhouse | Version: 1.2.2 | License: GPL-2.0-or-later
你只需要建立夥伴、建立折扣碼並設定折扣規則、設定分潤金額,當顧客使用折扣碼下單並完成付款後,系統會自動產生分潤紀錄。付款時自動跳出通知信編輯視窗,一鍵寄出分潤通知給夥伴。
系統需求
- PHP 7.4+
- WordPress 5.8+
- WooCommerce 6.0+
- 支援 HPOS(High-Performance Order Storage)
- 可選整合 WooCommerce Subscriptions
安裝方式
方法一:上傳 ZIP
- 從 Releases 下載最新版 ZIP
- WordPress 後台 → 外掛 → 安裝外掛 → 上傳外掛 → 選擇 ZIP 檔 → 安裝
- 啟用外掛(自動建立資料表)
方法二:手動上傳
- 將
coupon-commission-manager/資料夾上傳到wp-content/plugins/ - 後台啟用外掛
啟用後,左側選單會出現「分潤管理」。
功能總覽
總覽 Dashboard
四張摘要卡片一頁掌握全局:未結算總額、已結算總額、活躍夥伴數、分潤規則數。下方依夥伴分組顯示未結算與已結算統計,支援日期區間篩選,可一鍵匯出未結算 CSV 或前往批次結算。
夥伴管理
新增 / 編輯分潤夥伴,記錄以下資訊:
| 欄位 | 說明 |
|---|---|
| 姓名 | 夥伴名稱(必填) |
| 用於通知信寄送 | |
| 電話 | 聯絡電話 |
| 公司名稱 | 夥伴公司全名 |
| 統一編號 | 公司統編 |
| 銀行名稱 | 匯款銀行 |
| 銀行帳號 | 匯款帳號 |
| 銀行戶名 | 匯款戶名 |
| 備註 | 內部備註 |
列表直接顯示公司/統編、銀行資訊、折扣碼數、未結算與已支付金額。支援啟用 / 停用。
夥伴申請(前台)
透過 Shortcode [ccm_partner_apply] 在任意頁面建立申請表單。潛在夥伴可自行填寫基本資料、公司資訊、銀行帳戶、想要的折扣碼等資訊送出申請。
安全防護:Nonce 驗證 + Honeypot 防垃圾 + IP 頻率限制 + 重複申請檢查。
夥伴申請審核(後台)
所有申請集中在「夥伴申請」頁面管理,待審核數量以 badge 顯示在選單上。列表顯示申請人完整資訊:姓名、Email、電話、公司/統編、銀行資訊、申請折扣碼、備註。
- 通過:自動建立夥伴 + WooCommerce 折扣碼,寄送審核通過通知信
- 駁回:寄送審核不通過通知信
折扣碼管理(自訂折扣系統)
v1.2.0 新增全自訂的折扣碼編輯介面,取代 WooCommerce 預設的折扣碼設定。
基本設定
- 折扣碼、說明、到期日
- 使用限制:總次數、每人次數
- 消費限制:最低消費、最高消費
- 限定 Email(支援萬用字元
*@gmail.com) - 個人使用(不可與其他折扣碼併用)
折扣金額設定(核心功能)
支援針對不同商品或變化類型設定不同的折扣金額:
| 適用對象 | 折扣類型 | 範例 |
|---|---|---|
| 所有商品(預設) | 固定金額 / 百分比 | 預設折 NT$100 |
| 指定商品 | 固定金額 / 百分比 | A 商品折 NT$500 |
| 指定變化類型 | 固定金額 / 百分比 | B 商品藍色款折 10% |
| 指定商品分類 | 固定金額 / 百分比 | 「主機方案」分類折 NT$200 |
折扣優先順序: 變化 > 商品 > 分類 > 預設
WooCommerce Subscriptions 折扣
當安裝 WooCommerce Subscriptions 時,自動顯示訂閱折扣設定區塊:
- 開通費折扣(Sign-up Fee):針對首次開通費設定折扣
- 續訂費折扣(Recurring Fee):針對每期續訂費設定折扣
兩者皆支援指定商品/變化/分類差異化設定。
分潤規則
以「夥伴 + 折扣碼」為一組,設定每個商品的固定分潤金額(非折扣金額)。支援:
- 其他商品(預設):未特別指定的商品套用此金額
- 指定商品/變化:搜尋商品或變化類型,設定不同分潤金額
- 指定分類:搜尋商品分類,整個分類套用同一分潤金額
- 規則複製:將既有規則一鍵複製到新夥伴 / 折扣碼
分潤計算優先順序:精確變化 > 母商品 > 商品分類 > 預設
分潤紀錄
- 篩選條件:日期區間、夥伴、狀態
- 顯示欄位:日期、訂單、購買人、夥伴、折扣碼、商品、數量、分潤、狀態、付款日
- 支援單筆付款、批次付款、作廢
分潤通知信(v1.2.0 新功能)
點擊「付款」或批次「標記已付」時,自動跳出通知信編輯視窗:
- 收件人:自動帶入夥伴 Email,可手動修改
- 主旨:自動帶入設定中的模板,可修改
- 信件預覽:HTML 格式,含分潤明細表格
- 每位夥伴一封信:批次付款時,同一夥伴的多筆分潤合併為一封信
明細表格包含:
| 日期 | 購買人 | 商品 | 數量 | 單筆分潤 | 小計 |
|---|---|---|---|---|---|
| 2026-03-22 | 陳○翰 | 雲端主機 Pro | 1 | NT$ 600 | NT$ 600 |
購買人姓名自動匿名化:陳小明 → 陳○明、小明 → 小○
可用變數:
| 變數 | 說明 |
|---|---|
{partner_name} |
夥伴名稱 |
{commission_details} |
分潤明細 HTML 表格 |
{commission_total} |
分潤總金額 |
{company_name} |
公司名稱 |
{tax_id} |
統一編號 |
{bank_name} |
銀行名稱 |
{bank_account} |
銀行帳號 |
{bank_account_name} |
銀行戶名 |
{site_name} |
網站名稱 |
{site_url} |
網站網址 |
設定
分潤觸發:
- 訂單完成(completed)時觸發(預設)
- 可選在訂單處理中(processing)時也觸發
- 可選訂閱商品只分潤首筆訂單,續約不分潤
夥伴申請表單:
- 申請後跳轉網址(留空跳首頁,URL 自動帶
?ccm_applied=1參數) - 送出按鈕顏色(color picker)
- 申請通知信箱
通知信模板:
- 審核通過信 / 不通過信
- 分潤通知信(主旨 + 內容)
- 支援所有變數,「還原為預設模板」一鍵還原
使用教學
Step 1:建立夥伴
方式一:手動建立 前往「分潤管理 → 夥伴管理 → 新增夥伴」,填寫姓名、Email、公司名稱、統一編號、銀行帳號等資訊。
方式二:開放申請
建立一個頁面,內容放 [ccm_partner_apply],將連結提供給潛在夥伴。審核通過後自動建立夥伴。
Step 2:建立折扣碼
前往「分潤管理 → 折扣碼 → 新增折扣碼」:
- 填寫折扣碼名稱(如
PARTNER2026) - 設定基本限制(到期日、使用次數等)
- 設定折扣金額:
- 預設:所有商品統一折扣
- 指定商品/變化:針對特定商品設定不同折扣
- 指定分類:針對商品分類設定折扣
- 如有訂閱商品,可分別設定開通費和續訂費折扣
如果折扣碼純粹用於分潤追蹤(不打折),折扣金額填 0 即可。
Step 3:設定分潤規則
前往「分潤管理 → 分潤規則 → 新增規則」:
- 選擇夥伴
- 搜尋折扣碼
- 設定商品分潤金額
範例:
| 商品 | 分潤金額 |
|---|---|
| 其他商品(預設) | NT$150 |
| 雲端主機 Pro | NT$600 |
| SEO 關鍵字排名方案 | NT$1,000 |
| 企業信箱 100G — 年繳 | NT$200 |
Step 4:等待訂單完成
顧客使用折扣碼下單 → 訂單完成 → 系統自動產生分潤紀錄。不需要任何手動操作。
Step 5:管理付款與寄送通知
前往「分潤管理 → 分潤紀錄」:
- 篩選要結算的紀錄
- 勾選多筆 → 批次操作「標記已付」
- 彈出通知信編輯視窗 → 確認內容 → 點「確認寄出並標記已付」
- 系統自動寄出通知信給每位夥伴,並標記分潤為已付
- 點「匯出 CSV」給會計作為付款憑證
自動分潤計算
觸發條件
| 訂單狀態變更 | 分潤行為 |
|---|---|
| → 已完成(completed) | 自動產生分潤紀錄(未付) |
| → 處理中(processing) | 若設定中有啟用,也會觸發 |
| 已完成 → 取消 | 未付紀錄自動作廢 |
| 已完成 → 退款 | 未付紀錄自動作廢 |
| 已完成 → 保留 → 已完成 | 不會重複產生紀錄(冪等性) |
注意: 已標記為「已付」的分潤紀錄不會被自動作廢,需要手動處理。
折扣計算引擎
自訂折扣碼(標記為 _ccm_custom_coupon)會透過 woocommerce_coupon_get_discount_amount hook 攔截 WC 的折扣計算,按優先順序匹配規則並回傳對應金額。普通 WooCommerce 折扣碼不受影響。
WooCommerce Subscriptions
- 折扣碼支援開通費 / 續訂費分開設定
- 分潤可設定「只分潤首筆訂單,續約不分潤」
- 支援 subscription、variable-subscription、subscription_variation 產品類型
CSV 匯出
- UTF-8 with BOM 編碼,Excel 開啟中文不亂碼
- 欄位:紀錄編號、日期、訂單編號、夥伴名稱、折扣碼、商品名稱、數量、單位分潤、分潤合計、狀態、付款日期、付款備註
- 支援依日期 / 夥伴 / 狀態篩選匯出
資料庫
外掛啟用時自動建立 5 張資料表:
| 資料表 | 用途 |
|---|---|
wp_ccm_partners |
夥伴資料(含公司名稱、統編、銀行帳戶) |
wp_ccm_commission_rules |
分潤規則(夥伴 × 折扣碼 × 商品 → 分潤金額) |
wp_ccm_commission_logs |
分潤紀錄(自動產生,含快照資料) |
wp_ccm_applications |
夥伴申請紀錄 |
wp_ccm_coupon_rules |
折扣碼折扣規則(商品/分類/訂閱 → 折扣金額) |
分潤紀錄會快照折扣碼名稱、商品名稱、分潤金額,即使日後修改或刪除產品 / 折扣碼 / 規則,歷史紀錄不受影響。
移除外掛
- 預設停用外掛不會刪除資料
- 如需完全移除:前往「分潤管理 → 設定」勾選「移除外掛時刪除所有分潤資料」,然後再刪除外掛
授權
GPL-2.0-or-later