<aside> 💡 當特定事件發生時,以 HTTP/POST 的方式傳送 Request 到指定的 HTTPS 網址

</aside>

在處理 Webhook 之前,需驗證 X-CYBERBIZ-HMAC-SHA256 與 X-CYBERBIZ-DOMAIN-HMAC-SHA256 的值,確保 webhook 是由 CYBERBIZ 送出的,沒有被竄改

所有 webhook 都會發送以下 headers。

key example 說明
USER-AGENT CyberbizAppWebhook/1.0
X-CYBERBIZ-EVENT domains/create 事件名稱
X-CYBERBIZ-DOMAIN example.cyberbiz.co cyberbiz domain
X-CYBERBIZ-SHOP-DOMAIN example.com.tw primary domain
X-CYBERBIZ-HMAC-SHA256 99bbe023f9cf3da9b9927097a4e63cac67adf7d85c98c97e2e161622f574782c (hex) 資料驗證用 hmac,pseudo code 為下

sha256hmac(app_secret, data sent in the request) (hex encode) | | X-CYBERBIZ-DOMAIN-HMAC-SHA256 | | 用來驗證 header 中 X-CYBERBIZ-DOMAIN 的資料 ,pseudo code 如下

sha256hmac(app_secret, base64encode(X-CYBERBIZ-DOMAIN)) |

Events

<aside> 📌

Event 會包含哪些 model 同 API ,可以至 API 文件查看細節

</aside>

類型 事件
會員 customers/create (會員註冊)
customers/update (會員修改)
uid_providers/create (會員 UID 資料新增)
uid_providers/update (會員 UID 資料更新)
customer_tags/update (會員標籤資料更新)
紅利點數 bonus_points/create (獲得紅利)
bonus_points/update (使用紅利)
bonus_points/destroy (刪除紅利)
訂單 orders/create (訂單成立)
orders/paid (訂單付款)
orders/preparing (準備出貨)
orders/fulfilled (訂單出貨)
orders/received (訂單收貨)
orders/arrived (訂單到店)
orders/expired (逾期未取)
orders/cancelled (訂單取消)
orders/returned (訂單退貨)
orders/partial_return (訂單部分退貨)
orders/refunded (訂單退款)
orders/partial_refunded (訂單部分退款)
orders/closed (訂單結案)
orders/request_return (退貨申請)
商品 products/create (商品新增)
products/update (商品修改)
products/delete (商品刪除)
商品款式 variants/create (款式新增)
variants/update (款式修改)
variants/delete (款式刪除)
優惠券 coupons/create (新增優惠券)
coupons/update (使用優惠券)
coupons/destroy (刪除優惠券)
會員VIP階層 customer_vip_level/update (會員VIP等級更新)
其他 apps/uninstall (app 解除安裝)
選單 menus/create (新增 menu)
menu/update (更新 menu)
menu/destroy (移除 menu)
其他 pos_wallet_transactions/topup (POS儲值金儲值, 僅開啟POS儲值金可設定)
pos_wallet_transactions/refund (POS儲值金退款, 僅開啟POS儲值金可設定)
庫存管理 stock_requisitions/created (調倉單建立)
stock_requisitions/approved (來源端核准)
stock_requisitions/cancelled (來源端拒絕)
stock_invoices/created (出倉單建立)
stock_invoices/done (出倉單出庫完成)
stock_invoices/cancelled (出倉單取消)
stock_receipts/created (進倉單建立)
stock_receipts/done (進倉單點收完成)
stock_receipts/cancelled (進倉單取消)

Webhook request body

1. 會員

屬性 類型 描述
name String 姓名
status String 狀態(ex. pending: 尚未註冊帳號; validate: 帳號未驗證; enabled: 帳號已啟用; disabled: 帳號已禁用; invited: 已邀請顧客註冊; declined: 註冊邀請被拒絕; warning: 已列為警示帳號)
email String Email
mobile String 手機號碼
enable_cvs_pickup Boolean 是否可以使用超商取貨
accepts_marketing Boolean 是否接受行銷
tags [Object, ...] 多個會員標籤
address Object 會員地址
gender String 性別
birthday String 生日
other_accumulated_consumption Integer 其他通路累積金額
other_accumulated_consumption_expired_at String 其他通路累積金額起算日
note String 備註
custom_fields [Object, ...] 多個自定欄位
created_at String 建立時間
updated_at String 更新時間
confirmed_at String Email驗證時間
mobile_sms_confirmed_at String 手機驗證時間
bonus_remain Float 有效紅利點數
uid_providers [Object, ...] 多個 UID Providers
id Integer ID

2. 紅利點數

| --- | --- | --- |

3. 訂單

| --- | --- | --- |

4. 商品

| --- | --- | --- |

5. 商品款式

| --- | --- | --- |