LINEプラットフォームでユーザーIDを連携する方法
LINEプラットフォームを使った開発では、ユーザーIDを連携することで実現できることが大きく広がります。
例えば、自社サービスのユーザー情報とLINEのユーザー情報を紐づけることで、ログインを簡単にしたり、LINE公式アカウントからユーザーごとに最適な情報を配信したりできます。このように、LINEとサービスの間でユーザーを一貫して扱えるようになります。
一方で、LINEプラットフォームにはユーザーを識別する仕組みが複数あり、どの方法を選ぶべきか判断に迷うこともあります。この記事では、ユーザーIDを連携する主な方法とその違いを整理します。
ID連携はどこまでがLINEプラットフォームの機能か
LINEプラットフォームは、「LINEのユーザー」を識別するための認証やユーザー情報の取得といった仕組みを提供しています。
一方で、「LINEのユーザー」と「自社サービスのユーザー」のユーザーIDを紐づけて管理する仕組みそのものは提供していません。そのため、ユーザーID同士の紐づけや、紐付け情報の管理は自社サービス側で実装する必要があります。
ユーザーIDを連携する方法
ユーザーIDを連携する方法としては、主に以下の3つがあります。
それぞれ、ユーザーIDを取得できるタイミングや連携の流れが異なるため、基本的な流れを整理します。
LINEログインを利用する方法
LINEログインを利用する方法では、ユーザーがログインしたタイミングでユーザーIDを取得し、自社サービスのユーザーと紐づけます。
基本的な流れは次のとおりです。
- ユーザーがLINEログインを実行する
- 認証と認可後、IDトークンやアクセストークンを取得する
- IDトークンやアクセストークンからユーザーIDを取得する
- 取得したユーザーIDを自社サービスのユーザーIDと連携する
この方法では、既存ユーザーのID連携に加えて、新規ユーザーの会員登録と同時にID連携することも可能です。
詳しくは、『LINEログインドキュメント』の「ウェブアプリにLINEログインを組み込む」および『法人ユーザー向けオプションドキュメント』の「LINEログインで取得した情報と自社で管理する情報との紐づけ(ID連携)」を参照してください。
Messaging APIを利用する方法
Messaging APIでは、ユーザーアカウントの連携の仕組みを利用して、LINE公式アカウントを起点にユーザーIDを紐づけます。
基本的な流れは次のとおりです。
- WebhookイベントからユーザーIDを取得する
- ユーザーIDを指定して連携トークンを発行する
- 連携トークンを含む連携用URLをユーザーに送信する
- ユーザーが連携用URLから自社サービスにログインする
- nonceを生成し、ユーザーをアカウント連携するためのエンドポイントにリダイレクトする
- 連携完了後、アカウント連携イベントのWebhookからユーザーIDを取得する
- 取得したユーザーIDを自社サービスのユーザーIDと連携する
この方法では、LINEログインチャネルがなくてもセキュアにID連携ができます。
詳しくは、『Messaging APIドキュメント』の「ユーザーアカウントの連携」を参照してください。
LIFFを利用する方法
LIFFを利用する方法では、LIFFアプリからユーザー情報を取得し、その情報をもとにID連携ができます。
基本的な流れは次のとおりです。
- ユーザーがLIFFアプリを起動する
- 認証と認可後、IDトークンやアクセストークンを取得する
- IDトークンやアクセストークンからユーザーIDを取得する
- 取得したユーザーIDを自社サービスのユーザーIDと連携する
LIFFは単体で利用するというよりも、LINEログインのAPIと組み合わせてユーザー情報を取得するケースが一般的です。
詳しくは、『LIFFドキュメント』の「ユーザーのプロフィールを取得する」を参照してください。
使い分けのポイント
LINEログイン、Messaging API、LIFFはいずれもユーザーIDを取得できるため、どの方法でもID連携に利用できます。ただし、ユーザーの操作の流れ、前提条件が異なるため、用途に応じて適した方法を選択する必要があります。これらの違いを整理すると次のとおりです。
| 観点 | LINEログイン | Messaging API | LIFF |
|---|---|---|---|
| 連携の起点 | 自社サイト、LINE公式アカウントのトーク画面(メッセージ、リッチメニュー) | LINE公式アカウントのトーク画面(メッセージ、リッチメニュー) | LIFFアプリ |
| 連携後の遷移先 | 任意に設定可能 | LINEプラットフォームが提供する連携結果画面 | 任意に設定可能 |
| 利用前提条件 | 自社サービスへのログインをどのタイミングで組み込むかの設計が必要 |
| 自社サービスへのログインをどのタイミングで組み込むかの設計が必要 |
どの方法を選ぶかは一概には決められませんが、ユーザーとの接点やサービスの導線を基準に考えると整理しやすくなります。
自社サービスのログインを起点にする場合はLINEログイン、LINE公式アカウントのトークルームを起点にする場合はMessaging APIを選択する考え方があります。また、すでにLIFFアプリを利用している場合は、そのアプリにID連携の機能を追加するという選択もあります。
終わりに
ID連携は、LINEとサービスをつなぐための仕組みですが、その先にはユーザーごとに最適な体験を届けるための可能性があります。
例えば、お気に入りに登録していた商品がセールになったタイミングや保有しているポイントの失効前に、LINEで知らせてくれるような体験も、ID連携を前提にした設計によって実現しやすくなります。
こうした小さな体験の積み重ねが、サービスの価値を高め、ユーザーの信頼や愛着につながっていくはずです。本記事の内容が、ID連携を考えるきっかけになれば幸いです。