ホテル・旅館滞在中の顧客体験を向上させるLINE公式アカウントとLINEミニアプリの活用方法
こんにちは。リテールアプリ共創部@大阪のmorimorikochanです。
宿泊業界でのLINEの活用方法として、宿泊前の予約のリマインドや宿泊後のクーポン配信などをよく聞きますが、実はチェックインからチェックアウトするまでの滞在中に目を向けると、お客様との接点がいまも内線電話、フロントでの対面、紙の館内案内になっています。
この記事では、この滞在中の接点をLINE公式アカウント(Messaging API)とLINEミニアプリでどう作り替えられるかを検証してみたので整理して紹介したいと思います。
また、後半では技術的な仕組みと費用の目安も説明します。
検証した顧客体験
館内の案内
アプリでよくある館内モード・店内モードと同様のことがLINE公式アカウントでもできるんじゃないかと考えて、チェックインが完了した瞬間にリッチメニュー(LINE公式アカウントのトーク画面下部によく出てくるメニュー)が「館内モード」に切り替わる体験を作ってみました。
館内モードのリッチメニューには、館内マップ、本日開催のイベント、リクエストの送信といった滞在中に必要な項目だけを並べました。
これによってお客様は毎回紙の館内案内を部屋で探す必要はなくいつものLINEを開けば済みます。

チェックインすると自動でリッチメニューが切り替わりwelcomeメッセージが届く
また、チェックアウト後に、リッチメニューを通常のもの(次回の予約、今後のイベント案内など)に戻すことも可能です。

仕組み
Messaging APIには、ユーザー単位でリッチメニューを紐づけるAPI(ユーザーとリッチメニューをリンク)があります。
チェックイン時にこのAPIをそのお客様のLINEユーザーIDに対して呼び出すと、お客様がトーク画面を開き直さなくても即座にメニューが切り替わります。
ただし、開発する上ではリッチメニューを元に戻す際に注意が必要です。
ユーザー単位のリッチメニューは自動では解除されないため、チェックアウト時にリンク解除のAPIを呼び出して、デフォルトのリッチメニューに戻す処理を自前で用意する必要があります。
この処理が失敗すると、チェックアウトしたお客様のLINEに館内モードのメニューが残り続け、次回の予約導線が表示されず、滞在後のリテンションにつながらなくなってしまいます。
そのため、解除処理には失敗時のリトライを入れ、加えてチェックアウト済みなのに館内モードのままのユーザーを日次で突き合わせて解除する仕組みを設けておくと安心です。
セグメントを絞ったアクティビティなどのオプションの販促
リッチなリゾートホテルなどでは滞在中はいろんなアクティビティが提供されていることが多いですが、数が多くて絞れない、探すのが疲れる、みたいなことを以前に経験したことがあります。
自分に最適なアクティビティがLINEで提案されて、そのまま予約まで完了できると面白そうだなと思い、一連の流れを作ってみました。
検証では、次のような配信を想定しました。
- 朝ヨガのプログラムが響きやすい30代女性のお客様に、チェックイン当日の20時、ディナーが終わった頃に翌朝の朝ヨガを案内する
- 連泊のファミリーのお客様に、2日目の朝、お子様向けの体験プログラムの空き枠を案内する
案内はFlexメッセージ(画像やボタンを組み合わせたカード型のメッセージ)で届きます。
| 朝ヨガの例 | 体験プログラムの例 |
|---|---|
![]() |
![]() |
タップするとサービス紹介ページが開き、そこから予約ボタンを押すとすぐにその場で予約が完了します。
お客様はフロントに足を運ぶ必要も、電話をかける必要もなくなります。

メッセージから2タップで予約完了
仕組み
配信対象を選ぶには、お客様の属性情報が必要です。
属性情報は、PMS(宿泊管理システム)やCRMにすでにある予約情報や宿泊履歴を連携サーバーで受け取る方法と、LINEミニアプリの初回起動時にお客様ご自身に興味のある分野を登録していただく方法があります。
どちらの場合も、その日に滞在中のお客様のLINEユーザーIDのリストを自前で作り、Messaging APIのマルチキャスト(複数ユーザーへの一斉配信)で送る構成にしました。
配信は通数に応じて費用がかかるため、細かくセグメントを特定して、響く可能性の高いお客様だけに送ることが費用面でも体験面でも大切です。
また、最初に紹介したような館内案内やリマインドも用意されていると、滞在中にお客様に多くメッセージが届きブロックにつながりやすいという事情もあります。
なお、Messaging APIには性別や年齢といった属性で友だち全体から配信対象を絞る機能(ナローキャスト)もありますが、この属性はLINEが推定した値であることと、対象人数が一定数未満だと送信できない制限(人数は非公開)があることから、その日の滞在者のような少人数への配信にはあまり向いていないと考えています。
友だち全体に向けたキャンペーン配信とうまく使い分ける必要があります。
ビーコンを使った仕掛けとアトラクション
また、館内や敷地内の回遊を促す仕掛けとして、LINEビーコンを使ったスタンプラリーも考えてみました。
(ビーコンは手元にないので設計だけですが...)
ホテル敷地内の庭園、展望台、売店などにビーコン端末を設置し、お客様がそれぞれの場所を訪れると自動的にサーバーに訪問が記録されて、お客様はQRコードを探して読み取る操作をせずに散策するだけでスタンプが集まる、といった体験です。
すべての場所を回るとフロントで景品をお渡しする、といった運用にすると、滞在中の回遊と対面で接点する機会が増えて良いのではないかと感じています。
仕組み
(未検証なのであくまで想定です)
第一に、LINEビーコンを利用します。LINEビーコンは、Bluetooth Low Energyの電波を発する端末で、スマートフォンが受信圏内に入るとLINE Messaging APIのWebhookにビーコンイベントが届きます。
連携サーバーはこのイベントを受け取り、そのお客様が現在滞在中かをフィルタしたうえで、訪問記録を保存する構成にすることで実現できます。
ただし注意点として、ビーコンイベントが発生するには、スマートフォン側で次の3つが満たされている必要があります。
- スマートフォンのBluetoothがオンになっている
- LINEアプリの設定でLINE Beaconの利用が有効になっている(初期状態では無効です)
- ビーコンに紐づいたLINE公式アカウントを友だち追加している
なので、スタンプラリーの案内に設定手順を添えるか、チェックイン時にご案内するような運用をあらかじめ決めておく必要があります。
アクティビティやディナーなどの事前リマインド通知
ミニアプリで予約したアクティビティやディナーの時間が近づいたら、リマインドが届く動きも作ってみました。
参加のし忘れや時間の間違いを防ぐための通知で、メッセージの中にキャンセルや問い合わせの導線もついでに用意してます。

仕組み
このリマインドには、LINEミニアプリのサービスメッセージを使いました。
サービスメッセージは、ミニアプリ上でのお客様の操作(ここでは予約)に対する確認や応答として送れるメッセージで、送信費用がかかりません。
送信のトリガー(予約時刻の何分前に送るか)は、連携サーバー側でスケジューラを用意して実装する必要があります。
今回はローカルで動作させているので構築していませんが、AWSであればAmazon CloudWatch Eventsを採用することができます。
サービスメッセージには、通常の配信と異なる制約がいくつかあります。
- あらかじめ用意された定型テンプレートしか使えず、自由文は送れません。テンプレートはLINEヤフー社の審査を通す必要があります
- 広告や販促の内容は送れません。リマインドは可能です
- お客様に届くのは自社のLINE公式アカウントからではなく、「LINEミニアプリ お知らせ」という共通のアカウントからです
- お客様の操作を起点に発行されるトークンで送るため、送れる回数には上限があります
キャンセルや問い合わせの導線は、テンプレートに含まれるリンクの枠で用意しました。
このほかにも制約があるため、採用前に公式ドキュメントで確認してください。
制約に合わない場合(フロントや電話で受けた予約のリマインドなど)は、通常のプッシュメッセージで送ります。
生成AIを使ったチャットボットによる問い合わせとリクエストの一次対応
「朝食は何時からですか」「Wi-Fiのパスワードは」といった問い合わせや、「タオルを追加してほしい」のようなアメニティの依頼を、LINEのトークで受け付ける仕組みも検証してみました。
お客様は内線番号を調べて電話をかける手間がなくなりますが、同時にフロントも電話の応対がなくなり作業を中断されなくなるため、フロントの業務負荷の低減にもつながると感じています。

部屋の清掃をリクエストしている
チャットボットの設計の考え方は、前回の記事顧客体験にこだわったLINEチャットボットをClaudeで作るで詳しく書いています。
仕組み
一次対応は生成AIが行う構成にしました。
よくあるFAQボットとの違いは、そのお客様の予約情報と滞在情報を生成AIに渡せることです。
「朝食は何時からですか」という質問に、施設共通の営業時間ではなく「ご予約のプランでは朝食は7時からです」と、そのお客様の予約に応じた返答ができました。
デモ実装では、生成AIに答えさせるのは定型の問い合わせと受け付けるだけで済むリクエストまでに留め、到着の遅れ・体調不良・設備の不具合のような判断が必要なものは、スタッフにエスカレーションするような設計にしています。
実際に開発する際には、エスカレーションの条件やエスカレーションされた依頼を誰がいつどのように確認するかを決めておかないと、お客様の満足度が大きく下がってしまいます。
そのため、導入には大きなハードルがあるんじゃないかなと感じています。
どうやって「滞在中」と判定するか
ここまでの5つの検証は、いずれも「チェックインをシステムが知ること」と「お客様のアカウントIDとLINEユーザーIDが紐づいていること」の2つを前提にしています。
例として、今回の検証でチェックイン時にリッチメニューを館内モードに切り替えるまでの流れを構成図にしてみました。

- チェックインの完了時に、基幹システムやPMSから連携サーバーへAPIを呼び出します。渡すのは予約データと、お客様のアカウントIDです
- 連携サーバーはデータベースに問い合わせ、アカウントIDに対応するLINEユーザーIDを取得します。このデータベースには、アカウントIDとLINEユーザーIDの対応が保管されています
- 連携サーバーは取得したLINEユーザーIDを指定して、Messaging APIのリッチメニュー切り替えAPIを呼び出します
- お客様のLINEのリッチメニューが館内モードに切り替わります
3番目で呼び出すAPIを差し替えれば、リッチメニューを切り替える以外の機能も動作すると思います。
ざっくりしたランニングコストと開発費用
ランニングコストは、大きく分けてLINE側とAWS側の2つに分かれます。
あくまで目安です。
| 項目 | 費用の目安 | 備考 |
|---|---|---|
| LINE公式アカウント | 月額15,000円(スタンダードプラン) | 無料メッセージ30,000通まで。超過分は1通3円程度。滞在者のみへの配信であれば無料枠に収まる施設も多いはず |
| LINEミニアプリ | 無料 | 開発と審査申請は必要 |
| サービスメッセージ | 無料 | 審査が必要 |
| LINEビーコン端末 | 端末の実費 | 設置箇所数に応じて |
| AWS(連携サーバー、DB) | 月額数千円〜 | サーバーレス構成の場合。従量課金制なので施設数とアクセス数で変動 |
| AWS(生成AI) | 要見積 | 会話の量やモデルで変動。Amazon Bedrockの従量課金 |
また、開発費用は、実装する範囲とPMSとの連携方法(API連携かCSV連携か)によって大きく変わることになりと思います。
まとめ
- お客様にアプリをインストールしていただくことなく、LINE公式アカウントとLINEミニアプリを利用し滞在中の接点(館内案内、販促、回遊、リマインド、問い合わせ)を提供できることを確認できました
- ただし機能ごとに制約があります。例えばユーザー単位のリッチメニューは自前で戻す必要があり、少人数への配信は自前のリストで行い、ビーコンはお客様側の設定が必要です。また、サービスメッセージは定型テンプレートと審査が前提です。
- これらの施策はすべて、アカウントIDとLINEユーザーIDの紐付きをDBに保持し、チェックインのイベントをシステムが受け取る仕組みが土台となっています。この仕組みを最初に作れば、施策は後から足していけます
クラスメソッドでは、LINEミニアプリの企画から開発、生成AIの活用までを支援しています。
どの施策から始めるべきか、PMSとどう連携するか、費用の目安を知りたい方は、お気軽にご相談ください。
※本記事の内容は2026年8月時点の情報にもとづいています。記事中で紹介したサービスの機能、料金、制約の内容は変更される可能性があるため、最新の情報は各公式サイトでご確認ください。








