Skip to content

LINE API串接怎麼規劃?會員綁定與通知的設定步驟

Posted in :

jc-seo

LINE API串接是讓 LINE 官方帳號和企業自己的官網、會員或訂單系統交換資料,常用的有三項:Messaging API 用來收發訊息,LINE Login 讓使用者以 LINE 帳號登入或註冊,LIFF 則是在 LINE 裡開啟的網頁應用程式。規劃時先決定要做會員綁定、訂單通知或預約提醒,再依序處理官方帳號建立、選擇提供者並建立頻道、Webhook 伺服器、使用者同意與個資告知。透過 Messaging API 發送的推播訊息依官方帳號方案計費,實際費用以官方公告為準。

LINE 串接常用的三種 API 與分工

名稱 用途 使用的頻道
Messaging API 讓自家伺服器透過 LINE 平台收發訊息,可回覆、主動推播、取得使用者個人檔案、設定圖文選單與帳號連結 Messaging API 頻道,須先有 LINE 官方帳號
LINE Login 讓使用者以 LINE 帳號註冊與登入網站或 App,登入後可取得使用者 ID、顯示名稱與大頭貼 LINE Login 頻道
LIFF 在 LINE 內開啟的網頁應用程式,可取得 LINE 使用者 ID,適合做表單、預約或會員頁 LINE Login 或 LINE MINI App 頻道,不能加在 Messaging API 頻道

官方說明 LIFF 預計併入 LINE MINI App,建議新的 LIFF 應用程式以 LINE MINI App 建立。如果需求只是群發、自動回應或圖文選單,後台就能設定,不一定要串接,可先參考LINE官方帳號的功能與開通設定。

會員綁定、訂單通知與預約提醒怎麼串

會員綁定有兩種常見做法。其一是在官網註冊或會員中心加上 LINE Login,登入後把使用者 ID 寫進會員資料;登入時可透過 bot_prompt 參數,在同意畫面顯示加入官方帳號好友的選項,或在同意畫面之後另開畫面詢問。前提是官方帳號的 Messaging API 頻道與 LINE Login 頻道屬於同一個提供者,而且一個 LINE Login 頻道只能連結一個官方帳號。

其二是 Messaging API 的帳號連結:已是好友的使用者從聊天室開啟連結網址、登入自家服務後完成綁定。官方說明連結權杖只能使用一次、效期十分鐘,nonce 不要用會員編號這類可預測的值;企業也必須讓使用者隨時能解除連結,並在連結時告知可以解除。

訂單通知是在訂單狀態改變時,由系統依使用者 ID 對已綁定的好友發送推播訊息。預約提醒可讓顧客在 LIFF 頁面預約,再由系統排程發送提醒。LIFF 頁面應把 ID 權杖或存取權杖送到伺服器驗證,不要直接傳送前端取得的個人檔案。

先選定提供者:使用者 ID 會跟著它走

LINE Developers Console 裡,頻道歸在「提供者」底下,這個選擇會直接影響會員資料能不能對起來:

  • 使用者 ID 是平台核發的識別碼,和顯示名稱、使用者為了讓朋友搜尋而設定的 LINE ID 都不同。
  • 同一位使用者在不同提供者下會拿到不同的使用者 ID;同一個提供者下,不論是 LINE Login 或 Messaging API 頻道,使用者 ID 相同。
  • 官方帳號指定提供者後,就無法變更或取消;選擇既有的提供者,需要具備該提供者的管理員權限。

因此,提供者應由公司帳號建立,廠商以成員身分加入;若頻道建在廠商的提供者底下,日後換廠商時頻道無法搬移,使用者 ID 也可能對不上。官方也提醒,由第三方頻道管理服務管理的提供者要先評估風險。

Messaging API 的設定步驟

  1. 建立 LINE 官方帳號,已有則略過。
  2. 在 LINE 官方帳號管理後台啟用 Messaging API 並選擇提供者,系統會建立 Messaging API 頻道;官方已不再開放直接從 LINE Developers Console 建立這類頻道。
  3. 以同一個帳號登入 LINE Developers Console,確認頻道出現在選定的提供者下,並備妥頻道存取權杖,官方建議用可自訂效期的版本。
  4. 準備 Webhook 伺服器:網址必須使用 HTTPS,並使用一般瀏覽器廣泛信任的憑證機構簽發的憑證,不接受自簽憑證。
  5. 在頻道的 Messaging API 分頁編輯 Webhook URL 並按「Update」儲存,再按「Verify」確認顯示成功,接著開啟「Use webhook」。
  6. 若改由系統回覆,官方建議把管理後台的加入好友歡迎訊息與自動回應訊息設為停用,這兩項在頻道建立時預設為啟用。
  7. 需要 LINE Login 時,在同一個提供者下建立 LINE Login 頻道,並在基本設定中連結官方帳號,操作者須是兩邊的管理員;新的 LIFF 則依官方建議以 LINE MINI App 建立。

Webhook 與頻道存取權杖的注意事項

  • 驗證簽章:處理事件前,先以頻道密鑰驗證請求標頭 x-line-signature 中的簽章,確認請求來自 LINE 平台、傳送途中未遭竄改。頻道密鑰需要管理員權限才能查看或重新發行。
  • 非同步處理:官方建議以非同步方式處理 Webhook 事件。
  • 防止重複處理:同一個事件可能送達不只一次,可用事件中的 webhookEventId 判斷是否已處理過。
  • 重新傳送:此功能預設停用;開啟後,伺服器未回應成功狀態碼的事件會在一段時間內重送,次數與間隔未公開,也不代表一定送達。
  • 頻道存取權杖:分成可自訂效期、上限三十天的版本,十五分鐘有效的無狀態權杖,三十天有效的短期權杖,以及不會過期、僅限 Messaging API 頻道的長期權杖。官方建議在到期前自動發行新權杖;權杖外洩時,第三方可能用它對所有好友群發訊息,懷疑外洩就應撤銷。

用戶同意、個資告知與訊息費用

會員綁定會把 LINE 的使用者 ID 與官網會員資料連在一起。個資法第八條第一項規定,向當事人蒐集個人資料時,應明確告知蒐集者名稱、蒐集目的、個人資料類別、利用的期間地區對象及方式、當事人可行使的權利及方式,以及不提供對其權益的影響;同條第二項另列有免告知的情形。綁定頁說明與網站隱私權政策要一併更新,適用細節請以主管機關公告或專業意見為準。

費用方面,Messaging API 的推播(push)、多人推播(multicast)、廣播(broadcast)與分眾(narrowcast)訊息計入方案的訊息則數,回覆訊息不計入。可免費發送的則數依方案而定,方案也因國家或地區不同,估算可參考LINE官方帳號費用怎麼算,實際以官方公告為準。

常見問題

LINE 官方帳號一定要串 API 嗎?

不一定。群發、自動回應、圖文選單與優惠券在後台就能設定;需要依會員身分發送個人化訊息,或把訂單、預約狀態自動通知顧客時,才需要透過 API 和自家系統串接。

LINE Login 要付費嗎?

LINE 官方文件說明 LINE Login 免費提供,成本主要來自自家網站或系統的開發與維護;若同時透過 Messaging API 主動推播訊息,推播會計入方案的訊息則數。

已經有官網會員,怎麼讓舊會員綁定 LINE?

可以在會員中心提供以 LINE 綁定的按鈕,會員登入官網後再透過 LINE Login 授權,系統把取得的使用者 ID 寫入會員資料。綁定前說明用途,並提供解除綁定的方式。

Webhook 伺服器可以放在一般虛擬主機嗎?

只要能以 HTTPS 接收請求、使用受信任的憑證,並能及時處理事件即可。另要考量促銷期間的流量、事件重複與重新傳送,正式上線前建議先用測試用的官方帳號完整驗證。

LIFF 和一般網頁有什麼不同?

LIFF 應用程式也是網頁,在 LINE 內以 LIFF 瀏覽器開啟時,可以取得 LINE 使用者 ID 等平台資料,從聊天室開啟且使用者同意相關權限時,也能代使用者傳送訊息;一般網頁要另外整合 LINE Login 才知道使用者是誰。

本文由京采數位科技整理。我們自 2005 年起提供官網設計、系統開發與 Google SEO 服務,實際案例可見成果與案例。

想直接討論你自己的網站狀況,或需要一份初步的搜尋機會評估?

相關主題

下一步

建議先寫下要串接的情境、會用到的會員或訂單資料,並確認 LINE 官方帳號與提供者都由公司帳號管理。京采的網頁設計服務可以協助需求釐清、規劃會員綁定流程,並開發 Webhook 伺服器、LIFF 頁面與官網後台的 API 串接;歡迎與我們聯繫討論。