如何將 Mollie 連接到 Shopify Flow
透過經 HMAC 驗證的 Webhook,將 Mollie 與 Shopify Flow 連接起來。本文包含逐步設定指南、觸發條件檢查及疑難排解技巧。
Mollie 是一家歐洲支付服務供應商。其新一代 Webhook 經過簽名驗證;而傳統的支付 Webhook 則未經簽名驗證。Workflow Webhooks 會將該呼叫轉為 Shopify Flow 觸發器,讓您的商店能據此做出反應:為顧客標記、新增訂單備註、發送內部電子郵件、更新元資料欄位 - - 凡 Shopify Flow 能做到的,皆可實現。
本指南闡述了整個流程 - - Mollie 發送請求、Workflow Webhooks 接收並驗證、Shopify Flow 執行操作 - - 且每項請求都會驗證 Mollie 的 HMAC 簽名,因此唯有 Mollie 才能啟動您的工作流程。
您可以打造什麼
- 標記一位透過 Mollie 付款連結付款的 Shopify 客戶。
- 當 Mollie 的退款完成時,請在訂單備註中註明。
- 當高價值訂單的付款失敗時,請透過電子郵件通知您的財務團隊。
常見的觸發事件包括:payment-link.paid、payment.failed,以及建立退款。
開始之前
- Workflow Webhooks 已安裝在您的 Shopify 商店中。
- Shopify Flow 已安裝,此應用程式可從 Shopify App Store 免費下載。
- 一個在 Mollie 上具有建立 Webhook 權限的帳戶。
步驟 1 - 在 Workflow Webhooks 建立 Webhook
- 開啟 Workflow Webhooks → Webhooks → 建立 Webhook,並為其取一個在 Shopify Flow 中您能認出的名稱,例如
Mollie events。 - 在「驗證」下,選擇 HMAC。
- 在「簽名提供者」下,選擇 Mollie。應用程式會自動為您填入標頭、演算法、已簽名有效載荷及重播視窗 - - 無需進行其他設定。
- 目前請將「密鑰」欄位留空,然後按下「儲存」。複製頁面顯示的 Webhook URL。
有關其他驗證模式,請參閱 驗證;至於如何選擇哪些欄位會傳送至 Shopify Flow,請參閱 有效載荷映射與 Shopify Flow 變數。
步驟 2 - 在 Mollie 中新增終端點
在 Mollie 儀表板中,使用您複製的 URL 建立一個新一代 Webhook 訂閱,並複製其簽署密鑰。
如何找出你的 Mollie 簽名密碼
新一代 Webhook 的簽名密鑰。傳統的 Mollie Webhook 完全沒有經過簽名。
Mollie 官方關於 Webhook 簽名的文件 提供了您帳戶的確切文字說明與螢幕截圖。
請將該密鑰貼到 Workflow Webhooks 中的 webhook**「密鑰」**欄位,並儲存。從此之後,每筆 Mollie 交易在送達 Shopify Flow 之前都會經過驗證。
此處檢查的內容
| 什麼 | 價值 |
|---|---|
| 簽名標題 | X-Mollie-Signature |
| 簽名的位置 | 前綴 sha256= 之後的標頭值 |
| 簽署的內容為何 | {body} |
| 簽名 | HMAC-SHA256,十六進位編碼 |
| 時間戳記 | 此寄件人未使用此功能 |
| 重播保護 | 無 - 此寄件者不會對時間戳記進行簽名,因此每個有效的簽名均保持有效 |
| 這個秘密 | 作為純文字使用。請完全按照發件人顯示的內容貼上 |
在已簽署的載荷中,{body} 即是原始請求正文,字節對字節。
若請求未能通過上述任何一項檢查,將被以「401」為由拒絕,並記錄於 歷史與故障排除,且絕不會啟動工作流程。
步驟 3 - 建立「Shopify Flow」工作流程
- 在 Shopify Flow 中,建立一個工作流程,並選擇「Workflow Webhooks」觸發器。
- 按下「記錄事件」,然後從 Mollie 發送一個測試事件(或於 Workflow Webhooks 中使用**「發送測試**」功能),以便 Shopify Flow 學習您的資料模式。
- 您擁有的每個 Webhook 都會觸發相同的「Shopify Flow」觸發器,因此請針對 Webhook ID 新增第一個條件,以確保此工作流程僅限於 Mollie。該 ID 會顯示在 Webhook 頁面中。
- 新增您的操作 - - 標記客戶、新增備註、發送內部電子郵件、更新元資料欄位。



步驟 4 - 進行端到端測試
在 Mollie 中觸發一個真實事件。在**「Workflow Webhooks」→「History」**中,您應會看到狀態為「Success」的呼叫記錄。若簽名不正確,您將看到狀態為「Failed」的記錄並附有原因說明;而 驗證已簽名的 Webhook 則說明了簽名測試工具,該工具會精確顯示哪個步驟失敗。

簽名不符
依此順序:密鑰(最常見的原因 - - 多餘的空格,或來自錯誤環境的金鑰)、發送者是否使用了不同端點的密鑰,以及在 Mollie 與應用程式之間是否有任何環節重寫了請求內容。簽名涵蓋原始位元組,因此會重新格式化 JSON 的代理伺服器會破壞簽名。 Webhook 頁面上的簽名測試工具會顯示實際經過簽名的精確文字內容。
每次發送請求時都會收到 401 錯誤
請確認 webhook 的驗證方式已設定為 HMAC 且已選取 Mollie 供應商,密鑰欄位已填寫,並且 Mollie 傳送至該 URL 的內容完全與應用程式顯示的內容一致,包括末尾的代碼在內。
「歷史」中未顯示任何內容
該請求從未送達。請在 Mollie 中重新檢查 URL,並查看 Mollie 自身的傳送日誌,以確認其收到的回應。若出現 404,表示 webhook 錯誤或已被刪除;若出現 429,則表示您已超過方案的呼叫次數限制 - - 請參閱 方案與使用方式。
工作流程針對錯誤的事件執行
您商店中的每個 Webhook 都會觸發相同的「Shopify Flow」觸發器。請在工作流程的第一步中,針對 Webhook ID 新增一個條件,或縮小您從 Mollie 傳送的事件範圍。
相關
- 驗證已簽名的 Webhook - 我們所核實的每家服務提供者,以及如何描述未經核實的服務提供者。
- 有效載荷映射與 Shopify Flow 變數 - 從載荷中擷取正確的欄位,並將其存入
Shopify Flow中。 - 重複送達防護 - 當莫莉重新嘗試送貨時,會發生什麼事?
- 歷史與故障排除 - 每項請求的日誌,並附有重播功能。
