LINEとスプレッドシートをつなぐ3つの向き|記録する・シートから送る・配信リストを管理する、シートで足りなくなる境目

LINEとスプレッドシートのつなぎ方を、向きで3つに分けて整理しました。LINEに来たものをシートに記録する、シートの行をきっかけにLINEで知らせる、シートの配信リストで配信する。LINE Notify終了後の通知はMessaging API。GASの受け口の制約、通数、二重送信を防ぐリトライキー、個人データとしての扱いまで。

この記事をシェア:
目次 クリックで開く

LINE とスプレッドシートをつなぐ、という相談は、向きで3つに分かれます。LINE に来たメッセージや友だち追加を、シートに1行ずつ残す(LINE→シート)。シートの行が増えたり変わったりしたのをきっかけに、LINE で知らせる(シート→LINE)。シートに「誰に送るか」を持ち、そこから LINE で配信する。どれを作るかで、必要なものも、気をつける点も違います。

シートから LINE へ通知する方法として長く使われた LINE Notify は、2025年3月31日にサービスを終了しました(LINE Notify 提供終了のお知らせ、LINE Developers ニュース)。公式は、通知の代わりに、LINE 公式アカウントから送る Messaging API を案内しています。今から作る「シートから LINE へ」は、LINE 公式アカウントがあることが前提です。

この記事の要点

  1. 向きは3つ。①LINE→シート(来たメッセージ・友だち追加を1行ずつ残す)は、LINE の Webhook を受ける口が要る。②シート→LINE(行の更新で知らせる)と③配信リストの管理は、Messaging API で送る。送ると通数に数え、応答メッセージだけは数えない。LINE Notify は2025年3月31日に終了していて、代わりは Messaging API。
  2. 受け口を Google Apps Script(GAS)の Web アプリにすると、公式の説明が挙げる受け取れる項目にリクエストヘッダーが無く、署名(x-line-signature)を読めない。署名を検証したいときは、ヘッダーを読める場所に受け口を置く。署名を検証できない受け口が書いた行は、送信のきっかけにしない。送る側(通知・配信)は GAS で組める。1回の実行は6分まで。
  3. シートの上限は2,000万セルまたは100MB。これとは別に、個人データとしての扱い(保存の明示、開示・削除への対応、見られる人の範囲)と、会員データとの照合が、シートで足りなくなる境目になる。そこから先は CRM・DB に移す。

LINE とスプレッドシートのあいだで、何が・どの向きに流れるか

各組の上の行(①)が LINE→シートの向き、下の行(②③)がシート→LINEの向きです。

LINE 公式アカウントお客様とのトーク
→↓①Webhook:友だち追加・メッセージ。先に200を返す
←↑②③送信:プッシュ・マルチキャスト(通数に数える)。応答メッセージは通数外
受け口・送り口GAS・連携ツール・自社の関数
→↓①1行ずつ追記:日時・ユーザーID・種別・本文
←↑②③行の追加・更新、配信リストを読んで送る
スプレッドシート小さな台帳

結ぶキー:LINE のユーザーID(プロバイダーごとに別の値)

通数に数えるのは、プッシュ・マルチキャストなどの送信。LINE から受け取る Webhook と、応答メッセージ(Reply API)は数えない

出典:LINE Developers「メッセージ(Webhook)を受信する」・「Messaging APIの料金」。2026年10月6日確認

最初に決めること:記録したいのか、知らせたいのか、配信先を管理したいのか

作るものは、次の3つのどれかに分かれます。いちばん近いものを選ぶと、読む節が決まります。

どれを作りたいか

① LINE → シート

来た問い合わせ・友だちを、シートに残したい

作るもの:Webhook を受ける口。1行ずつ追記

通数:受けるだけなので、数える対象に入らない

詰まる所:署名の検証、重複、取りこぼし

② シート → LINE

予約・在庫・納期など、シートの内容を LINE で知らせたい

作るもの:シートの行を読んで、Messaging API で送る処理

通数:数える(プッシュメッセージ)

詰まる所:二重送信、届かない人、通数

③ 配信リスト

「誰に送るか」をシートで持ち、LINE で配信したい

作るもの:ユーザーIDの列と、絞り込み。送るのは管理画面か API

通数:数える(人数×回数)

詰まる所:ブロックの反映、分割、個人データの扱い

出典:LINE Developers「Messaging APIの料金」。2026年10月6日確認

①と②は、同じ「友だち台帳」のシートで結ぶと一続きになります。①で受けたユーザーIDを台帳に残し、②と③は、その台帳で状態が「ブロック」になっていない人を宛先にします。

つなぎ方は3通り:自作(GAS)、連携ツール、拡張ツールのCSV

向きが決まったら、つなぎ方を選びます。選ぶ軸は、誰が保守するか、同じ人を結ぶユーザーIDをどう扱うか、止まったときにどう直すか、です。

3通りのつなぎ方を、同じ軸で比べる

自作(Google Apps Script)

保守:自社または開発会社

  • シートに紐づけたスクリプトで、受け口(Web アプリ)も、送る処理も、トリガーも組める
  • 受け口にすると、リクエストヘッダーを読めない(署名が検証できない)
  • 1回の実行は6分まで。トリガーの合計は1日90分(個人)/6時間(Workspace)

IDの結び方:Webhook で受けたユーザーIDを、自分で列に書く

止まったとき:トリガーが失敗するとメールが届く。直して再実行するのは自社

連携ツール(iPaaS・ノーコード)

保守:ツールの提供会社と自社

  • LINE 公式アカウントのイベントを受けてシートに書く、シートの更新で LINE に送る、というテンプレートを用意しているツールがある
  • 署名の検証や、同じイベントを2回受けたときの扱いは、ツールごとの仕様で決まる

IDの結び方:ツールの部品がユーザーIDを渡す

確かめること:署名の検証、重複の扱い、実行回数による料金

拡張ツールのCSV

保守:ツールの提供会社

  • ツールによっては、友だち情報をCSVで書き出せる(Lステップは公式ブログに手順がある)
  • 書き出して、シートで整えて、取り込み直す。リアルタイムではない
  • Lステップは、取り込めるCSVを同じアカウントから書き出したものに限っている

向く用途:週に1回など、手で見る台帳

確かめること:書き出せる項目、ツールの料金

出典:Google Apps Script「Web Apps」・「Quotas」・「Installable Triggers」、Lステップ公式ブログ。2026年10月6日確認

連携ツールのテンプレートが LINE 公式アカウントのイベントを受けてシートに書き込むものは、ツール各社の紹介ページで確かめられます。ただし、署名を検証するのか、webhookEventId が同じイベントを2回受けたら2行になるのかは、ツールの画面の説明だけでは分からないことが多いので、ツールの仕様で確かめます。受け口の順番(署名の検証、保存、200を返す、重複を除く)と再送の詳しい説明は「LINE × Slack連携|問い合わせの転送と、Slackから返信するときの設計」にあります。

① LINE に来たものを、シートに残す

ユーザーが友だち追加したり、メッセージを送ったり、ブロックしたりすると、LINE のプラットフォームは Webhook URL に HTTP POST を送ります。1回の POST に複数のイベントが入ることもあるので、シートの1行は、POST ごとではなく、イベントごとに作ります(Webhook の受信)。

どのシートの、どの列に、何を書くか

この記事で使うシートは3枚

受信ログ

①:受け口が追記するだけ。人は触らない。署名を検証できない受け口は、ここにだけ書く

  • A イベントの日時(Webhook の timestamp。UNIX時間のミリ秒)
  • B webhookEventId(重複の判定に使う)
  • C ユーザーID
  • D 種別(message/follow/unfollow)
  • E 本文(テキストのとき)

向き:LINE → シート

友だち台帳

①②③の中心。ユーザーIDが1人1行

  • A ユーザーID(重複させない)
  • B 友だち追加日
  • C 状態(友だち/ブロック)
  • D 区分・タグ(人が入れる)
  • E 配信OK(TRUE/FALSE)

向き:A〜C は、署名を検証する受け口か人が更新。D・E は人が入れる

通知キュー

②:行を足すと送る

  • A ユーザーID
  • B 本文
  • C 状態(送信待ち/送信済み/要確認)
  • D 結果
  • E リトライキー
  • F キーを書いた時刻

向き:シート → LINE

列の割り振りは当社の案。Webhook の timestamp と webhookEventId は、LINE DevelopersMessaging APIリファレンス(Webhookイベントオブジェクト)。2026年10月6日確認

友だち台帳は、follow イベント(友だち追加またはブロック解除)で行を足し、unfollow イベント(ブロックされた)で状態を「ブロック」にします。この更新ができるのは、署名を検証する受け口か人だけです。署名を検証できない GAS の受け口が受けたイベントは、受信ログに残し、台帳は書き換えません。偽の unfollow で「ブロック」にされると、その人への通知が止まるからです。ブロック中のユーザーにプッシュメッセージを送っても、API は200を返します。実際には届きません(Messaging APIリファレンス)。「ブロック」の状態を台帳に持っておくと、②と③で送る前に除けます。

取りこぼすと、取り直せない

ユーザーが送ったテキストは、Webhook のテキストメッセージオブジェクトでしか受け取れません。受信したあとで、あらためてテキストを取得する API はありません(Webhook の受信)。再送が無効のままなら、受け口が止まっていた間のメッセージは、シートに残りません。

Webhook の再送は、既定では無効です。有効にしても、再送されるのは、受け口が200番台を返さなかったときだけで、再送の回数と間隔は公開されておらず、確実な再送は保証されません。再送に頼る設計にはできないので、受け口は、受けたイベントをまず保存して200を返す形にします。

画像・動画・音声・ファイルは、Webhook で受け取るのはメッセージIDで、中身は別の API で取得します。取得できるのは一定期間だけで、期間が過ぎると自動で削除されます(同)。シートにメッセージIDだけを書いても、あとから中身は取れなくなります。

受け口を GAS にするときの制約

LINE は、Webhook を処理する前に、リクエストヘッダーの署名(x-line-signature)を検証するよう求めています(署名を検証する)。一方、Google の公式ドキュメントが、Web アプリの doPost(e) に渡されるイベントオブジェクトの項目として挙げているのは、クエリ文字列(queryString)、パラメータ(parameter・parameters)、パス(pathInfo)、本文の長さと中身(postData)です。リクエストヘッダーの項目はありません(Web Apps)。公式の項目表に従うかぎり、GAS の Web アプリは x-line-signature を読めず、署名の検証ができません。

署名を検証したいときの選び方は2つです。ヘッダーを読める場所(自社のサーバーや関数、署名を検証する連携ツール)に受け口を置き、シートへの書き込みだけを Google 側の API で行う。または、GAS の受け口で受けると決めて、届いた内容を信用しない設計にする。後者は、届いたものを記録するだけにとどめます。偽のリクエストでも行は入るので、その行を、②のプッシュ(通数がかかる送信)や他のシステムを動かすきっかけにしません。台帳の状態を書き換えるのも、署名を検証する受け口か人だけです。台帳の「配信OK」は人が入れる列なので、偽の行が入っても、③の配信先にはなりません。

グループ・複数人トークで、ユーザーIDが入らない人

Webhook の送信元がグループトークや複数人トークのとき、userId が入るのは、iOS 版・Android 版の LINE を使っているユーザーだけです(Messaging APIリファレンス(Webhookイベントオブジェクト))。プロフィール情報の取得に同意できない、PC 版の LINE だけを使い続けているユーザーが、これに当たります。公式は、2020年4月から PC 版では新しいアカウントを作れなくなったと注記しています(ユーザーのプロフィール情報取得の同意)。ユーザーIDが無いイベントは、台帳に入れず、受信ログにだけ残します。

ユーザーIDは、同じ人でも、プロバイダーが違えば別の値になります(ユーザーIDを取得する)。複数のアカウントのシートを1つに寄せる前に、プロバイダーが同じかを確かめます。会員IDとの結び付けを含めた詳しい説明は「Salesforce と LINE をつなぐ:何を・どの向きで・誰のIDで流すか」に譲ります。

② シートの内容を、LINE で知らせる

LINE Notify の代わりに使う Messaging API は、LINE 公式アカウントから、友だちになっているユーザーに送る仕組みです。通知を受ける人(お客様でも、社内の担当者でも)が、そのアカウントを友だち追加している必要があります。1対1のトークでは、7日以内にそのアカウントへメッセージを送った人にも送れます(プッシュメッセージを送る)。社内の担当者に送る通知の設計は「LINE社内通知・ワークフロー自動化ガイド」にもあります。

シートの行が、LINE に届くまで(通知キュー)

GAS で組む場合の流れです。毎分のトリガーなら、送るのは最大で1分遅れます。

1 行を足す人が入力するか、署名を検証する受け口が追記
2 時間トリガーで読む状態が「送信待ち」の行
3 プッシュで送るリトライキーを付ける
4 結果を書く送信済み/要確認

出典:LINE Developersプッシュメッセージを送る、Google Installable Triggers。2026年10月6日確認

きっかけは、編集トリガーより時間トリガー

「シートが編集されたら送る」は、そのままでは作れません。onEdit(e) のような単純トリガーは、認可が要るサービスにアクセスできません。インストール型の編集トリガーなら、認可が要るサービスも呼べます(Simple Triggers・Installable Triggers)。もう1つの落とし穴は、スクリプトや API がセルを書き換えたときは、トリガーが動かないことです。公式の例は、Range.setValue() で編集しても、そのシートの onEdit が動かない、というものです。受け口がスクリプトで追記した行は、編集トリガーでは拾えません。

そのため、人が入力する行は、「送信待ち」の列に集めて、時間トリガーで読む形にします。署名を検証できない GAS の受け口が書いた行は、送信のきっかけにしません。偽のリクエストがシートに行を足しても、そこからお客様へのプッシュが動かないようにするためです。署名を検証する受け口が追記する行は、送信待ちにしてかまいません。時間トリガーは、最短で毎分動かせます。毎分だと1日に1,440回動くので、1回に3秒かかれば合計72分です。個人のアカウントの「トリガーの合計実行時間は1日90分」に近づきます(Workspace は6時間。出典:Quotas)。送るものが無い回は、すぐ終わるようにします。

二重送信を防ぐ:リトライキーを、送る前に書く

メッセージの送信は、500番台のエラーやタイムアウトで失敗したときも、実際には送られていることがあります。同じ内容をそのまま送り直すと、お客様に2回届きます。これを防ぐのが、リクエストヘッダーのリトライキー(X-Line-Retry-Key)です。キーは、自分で作った16進表記の UUID で、一度受理されると、同じキーの再送は409で断られます。キーが有効なのは、最初のリクエストから24時間です(失敗したAPIリクエストを再試行する)。

シートで使うときのコツは、キーを送る前に、行の列に書いておくことです。次の回で同じ行を読んだら、同じキーで送り直せます。送信済みの判定は、200と409のどちらも「済み」として扱います。ただし、LINE がリトライキーを管理するのは24時間で、同じキーを24時間を超えて使うと、すでに成功していても新しいリクエストとして成功し、重複して届きます(Messaging APIリファレンス)。キーを書いた時刻も列に残し、24時間の手前で止めて「要確認」にします。台帳で状態が「ブロック」の人も、送る前に除きます。コードの形は、次のとおりです。

GAS のコード例(通知キューを読んで、プッシュで送る)

チャネルアクセストークンは、シートのセルではなく、スクリプトのプロパティ(LINE_TOKEN)に置きます。最初は、自分だけが友だちのテスト用のアカウントと、1行だけの通知キューで動かします。

// 「通知キュー」シート  A:ユーザーID  B:本文  C:状態  D:結果  E:リトライキー  F:キーを書いた時刻
// 「友だち台帳」シート  A:ユーザーID  C:状態(友だち/ブロック)
// 行を足すのは人(または署名を検証する受け口)。状態が「送信待ち」の行だけを送る。時間トリガー(毎分など)で動かす。
const KEY_LIMIT_MS = 23 * 60 * 60 * 1000;   // リトライキーの管理期間は24時間。手前で止める
function sendQueued() {
  const lock = LockService.getScriptLock();
  if (!lock.tryLock(10000)) return;
  try {
    const ss = SpreadsheetApp.getActive();
    const sh = ss.getSheetByName('通知キュー');
    const token = PropertiesService.getScriptProperties().getProperty('LINE_TOKEN');
    const blocked = new Set(ss.getSheetByName('友だち台帳').getDataRange().getValues()
      .filter(r => r[2] === 'ブロック').map(r => r[0]));
    const rows = sh.getDataRange().getValues();
    for (let i = 1; i < rows.length; i++) {
      const row = i + 1;
      const uid = rows[i][0], text = rows[i][1], status = rows[i][2];
      let key = rows[i][4];
      if (status !== '送信待ち' || !uid || !text) continue;
      if (blocked.has(uid)) {
        sh.getRange(row, 3, 1, 2).setValues([['要確認', 'ブロック中']]);
        continue;
      }
      if (key && Date.now() - new Date(rows[i][5]).getTime() > KEY_LIMIT_MS) {
        sh.getRange(row, 3, 1, 2).setValues([['要確認', 'キーが24時間に近い:届いたか確認してから、新しい行で送り直す']]);
        continue;
      }
      if (!key) {
        key = Utilities.getUuid();            // 送る前に列へ書いておく。再試行は同じキーで
        sh.getRange(row, 5, 1, 2).setValues([[key, new Date()]]);
        SpreadsheetApp.flush();
      }
      let code;
      try {
        code = UrlFetchApp.fetch('https://api.line.me/v2/bot/message/push', {
          method: 'post',
          contentType: 'application/json',
          headers: { Authorization: 'Bearer ' + token, 'X-Line-Retry-Key': key },
          payload: JSON.stringify({ to: uid, messages: [{ type: 'text', text: text }] }),
          muteHttpExceptions: true,
        }).getResponseCode();
      } catch (e) {
        sh.getRange(row, 4).setValue('通信エラー:次の回で再試行');
        continue;
      }
      if (code === 200 || code === 409) {
        sh.getRange(row, 3, 1, 2).setValues([['送信済み', code]]);   // 200 は受理。届いたとは限らない
      } else if (code >= 500) {
        sh.getRange(row, 4).setValue(code + ':次の回で再試行');
      } else {
        sh.getRange(row, 3, 1, 2).setValues([['要確認', code]]);
      }
    }
  } finally {
    lock.releaseLock();
  }
}
// 一度だけ実行して、毎分のトリガーを作る
function installTrigger() {
  ScriptApp.newTrigger('sendQueued').timeBased().everyMinutes(1).create();
}

200が返っても、届いたとは限らない

プッシュメッセージを、アカウントをブロックしているユーザーや、友だちでないユーザーに送ると、API は200を返しますが、実際には送られません(プッシュメッセージを送る)。シートの「送信済み」は、LINE が受理したという意味で、お客様に届いたという意味ではありません。大事な通知は、シートの別の手段(メールや電話)も残しておきます。

通数:送ると数える。応答メッセージは数えない

LINE 公式アカウントの通数は、「メッセージを送った回数」×「送った友だちの数」で数えます。1回のリクエストに入れるメッセージの件数は、通数に影響しません。プッシュ・マルチキャスト・ブロードキャスト・ナローキャストは数え、応答メッセージ(Reply API)は数えません(Messaging APIの料金・料金プラン)。届いたイベントへの返事は応答メッセージで、通数はかかりません。②のようにシートの変化をきっかけに送るものは、プッシュです。

通数の数え方の例(人数・回数は当社の仮の数字)
送る相手と回数通数プランの目安(税別)
社内の担当者5人に、平日20日、1日1回の通知5人×20回=100通コミュニケーションプラン(月0円・無料200通)に収まる
友だち1,000人に、月4回の配信1,000人×4回=4,000通ライトプラン(月5,000円・無料5,000通)に収まる
友だち1,500人に、月4回の配信1,500人×4回=6,000通ライトの無料5,000通を超える。ライトは追加メッセージを送れず、超えると送信がエラーになる。スタンダード(月15,000円・無料30,000通)が要る
友だち10,000人に、月4回の配信10,000人×4回=40,000通スタンダードの無料30,000通を超えた10,000通が追加メッセージ。1通3円で30,000円(20万通/月まで)

追加メッセージの単価は、2026年10月1日の改定で、20万通/月までが1通3円、20万通を超えた分が1通2.5円になりました。追加メッセージを送れるのはスタンダードプランだけです(追加メッセージ料金改定のお知らせ・料金プラン)。ブロック中の人など、実際には届かない宛先は通数に数えません。そのため、上の表は上限の目安です。改定の全体は「LINE公式アカウントの料金改定(2026年10月)」に書いています。予約の確認やリマインドを、応答とプッシュのどちらで送るかの違いは、当社のデモ(架空の店舗・データ)「LINEで予約と、前日のリマインド」で見比べられます。

③ シートで配信リストを管理して、LINE で配信する

配信リストは、友だち台帳の「配信OK」の列で絞った、ユーザーIDの一覧です。ここに、配信の予定(日時・対象・本文・状態)を持つ「配信予定」のシートを足すと、手作業の配信の台帳になります。タグは、台帳の「区分・タグ」の列に、1人1行で持ちます。列を増やすたびに、誰が入力して、誰が見直すかを決めておきます。

台帳の人に送る方法は、2つです。

台帳のユーザーIDから、配信する2つの方法

管理画面で送る

LINE Official Account Manager のオーディエンス

  • ユーザーIDだけを入れた TXT か CSV を、[データ管理]>[オーディエンス]の「ユーザーIDアップロード」で取り込む
  • 取り込めないのは、IDの書式が違う・ファイル内にIDの重複がある・1ファイル150万を超える・有効なIDが無い、とき
  • 一度に選べるファイルは5つまで

向く場面:月に数回、手で絞って送る

注意:オーディエンスを使えるのは、日本・タイ・台湾のアカウント

API で送る

マルチキャストメッセージ

  • 1回のリクエストに入れられるユーザーIDは500まで。レート制限は200リクエスト/秒
  • 1,000人なら2回、10,000人なら20回のリクエスト
  • ブロック中・存在しないユーザーが入っていても、200が返って届かない(通数にも数えない)

向く場面:配信の予定をシートに書くと、自動で送る

注意:分割ごとに、リトライキーを保存しておく

出典:LINE Developersマルチキャストメッセージを送る・レート制限・オーディエンスを使う、LINEヤフー for Business「オーディエンス」。2026年10月6日確認

API で送る側を GAS で組むときの制限は、配信の人数より前に、実行の仕組みで決まります。1回の実行は6分まで、トリガーの合計は1日90分(個人)または6時間(Workspace)、外部への HTTP リクエスト(URL Fetch)は1日2万回(個人)または10万回(Workspace)です(Quotas)。10,000人への配信は20リクエストなので、回数の上限には届きません。1回の実行時間の6分に収まるかは、配信を何件に分けるかと、1リクエストの待ち時間で決まります。収まらない見込みのときは、未送信の行から再開するように、状態の列を持たせて複数回に分けます。

友だち全員のユーザーIDを一括で取れる API は、認証済アカウントまたはプレミアムアカウントでしか使えません(ユーザーIDを取得する)。それ以外のアカウントで、Webhook の受け口を作ったあとに台帳を作り始めると、台帳に載るのは、その後に友だち追加やメッセージの送信があった人だけです。それまでの友だちは、送ってきたときに初めてIDが分かります。台帳の人数と、LINE の管理画面の友だち数は、一致しないことを前提にします。

シートで足りなくなる境目:個人データの扱いと、会員データとの照合

Google スプレッドシートの上限は、1つのスプレッドシートで2,000万セルまたは100MBです(Google スプレッドシートの上限)。受信ログは本文を書くので、セルの数だけでなく、容量も見ておきます。上限のほかに、次の3つを見ます。

シートに置くものと、CRM・DB に移すもの

シートに置く台帳の小さな写し
受信ログ追記だけ。保存する期間を決めて消す
小さな配信リストユーザーID・状態・区分。人が目で見て直せる範囲
通知キュー送信待ちと結果。履歴は期間を決めて消す
CRM・DB に移す本体の台帳
会員データとの照合会員ID・購入履歴とLINEのユーザーIDを結ぶ
個人データの本体氏名・連絡先。見られる人を権限で分ける
複数人で同時に直す履歴対応の状況・担当者・次の予定

出典:LINEユーザーデータポリシー、個人情報保護委員会のQ&A。2026年10月6日確認

1 個人データとして扱う

ユーザーIDは、それだけで特定の個人を識別できるとは限りません。ただし、自社が持つ他の情報と、通常の業務における一般的な方法で容易に照合できるなら、個人情報に当たります。照合できるかどうかは、シートの単位ではなく、事業者の実態に即して判断されます。別のシートに分けても、自社の会員台帳と照合できるなら同じです(個人情報保護委員会「ガイドライン(通則編)」 2-1)。通則編には、ユーザーIDで整理したサービスのログを、ユーザーIDと個人情報を容易に照合できる場合は個人情報データベース等に当たるとする事例があります(2-4)。委員会は、オンラインゲームのニックネーム・IDについても、自ら保有する他の情報と容易に照合できれば個人情報に当たり得ると答えています(ガイドラインに関するQ&A Q1-9)。LINE のユーザーIDも同じ考え方で見ます。個人情報データベース等を構成する個人情報は、個人データです(通則編 2-6)。

LINE のユーザーデータポリシーでは、LINE 公式アカウントが受け取ったメッセージ、表示名、アイコン画像は「LINEユーザ情報」に入ります(1.1・1.2)。ユーザー識別のための内部識別子(ユーザーID)以外を24時間以上保存するなら、保存することをユーザーに明示する必要があります(3.2.3)。メッセージ本文を受信ログに残す設計は、ここに当たります。本人から開示・訂正・削除・利用停止を求められたら、対応しなければなりません(3.5.3)。受信ログから、そのお客様の行を探して消せる形にしておきます(LINEユーザーデータポリシー)。

2 見られる人の範囲を決める

シートを共有している人は、ユーザーIDと本文を見られる人です。受け口が書き込むシートは、書き込む人(アカウント)と、見る必要のある担当者に絞ります。ファイルを渡す委託先がいるときは、ポリシーの3.4.2(業務委託に必要な範囲で委託先に開示できる。委託先にも義務を守らせる)の範囲かを確かめます。

3 会員データと結ぶ

お客様の「会員」のデータと、LINE のユーザーIDを結ぶ段階になったら、シートの列で持つより、会員の台帳(CRM や業務データベース)の項目として持つほうが、直す人も権限も決めやすくなります。結ぶ費用の考え方は「LINEと今の顧客管理をつなぐ3つの作り方と、費用が決まる所」に、kintone を台帳にする場合は「BtoB kintone×LINE連携ガイド」にまとめています。

向きの見分けと、会員IDとLINEのユーザーIDを結ぶ設計、今の LINE の設定の見直しは、当社のLINE運用・伴走支援のページで、30分のオンライン相談として受け付けています。

LINE運用・伴走支援

LINE公式アカウントの友だち獲得の設計、セグメント配信・ステップ配信・リッチメニューの構築、自動応答、CRM/MAや基幹データとの連携までを支援します。

AT
aurant technologies 編集

上場企業からスタートアップまで、数多くのデータ分析基盤構築・AI導入プロジェクトを主導。単なる技術提供にとどまらず、MA/CRM(Salesforce, Hubspot, kintone, LINE)導入によるマーケティング最適化やバックオフィス業務の自動化など、常に「事業数値(売上・利益)」に直結する改善実績多数。

この記事が役に立ったらシェア:

LINE公式アカウントの資料

「LINE公式アカウント 運用改善ガイド」

LINE運用・伴走支援の内容を見る