🔔
概念 #n8n #ユースケース #予約リマインダー #ノーショー対策 #Twilio #LINE #カレンダー 📚 n8nワークフロー自動化

予約リマインダーを自動送信してノーショーを削減する

Google CalendarまたはCalendlyの予約情報を毎日チェックし、24時間前・1時間前にSMS/メール/LINEでリマインダーを自動送信するノーショー対策ワークフロー。

ユースケース概要

クリニック・美容院・コンサルタント・コーチなど「予約ビジネス」において、当日のすっぽかし(ノーショー)と直前キャンセルを減らすためのリマインダー自動化ワークフロー。

解決する課題: 手動でリマインダーを送る手間(1件3分)を削減しつつ、ノーショー率を最大40%削減する

使用するn8nノード:

  • Schedule Trigger(毎日定時実行)
  • Google Calendar(翌日の予約取得)
  • Twilio(SMS送信)
  • Gmail(メール送信)
  • Code(LINE Messaging APIとの連携)
  • IF(連絡手段の分岐)

ワークフロー構成

[Schedule Trigger: 毎日17:00]

[Google Calendar: 翌日(09:00〜18:00)の予約を取得]

[Loop Over Items: 予約ごとに処理]

[IF: 顧客の希望連絡手段]
  ├── SMS    → [Twilio: SMS送信]
  ├── LINE   → [HTTP Request: LINE Messaging API]
  └── メール → [Gmail: リマインダーメール]

[Airtable: リマインダー送信ログを記録]

加えて、当日朝にも1時間前リマインダーを送る。

実装手順

Step 1: Google Calendarの予約イベント取得

Resource: Event
Operation: Get Many
Calendar: 予約管理カレンダー
Time Min: {{ $now.setZone('Asia/Tokyo').startOf('day').plus({days: 1}).toISO() }}
Time Max: {{ $now.setZone('Asia/Tokyo').endOf('day').plus({days: 1}).toISO() }}

Step 2: 予約データの整形(Codeノード)

GoogleカレンダーのイベントのDescriptionに顧客情報(名前・電話番号・メール・LINE ID)を記入しておき、パースする。

return $input.all().map(item => {
  const event = item.json;
  // Description形式: "名前:田中様\n電話:090-XXXX-XXXX\n連絡:SMS"
  const desc = event.description ?? '';
  const getName = desc.match(/名前:(.+)/)?.[1]?.trim() ?? '顧客';
  const getPhone = desc.match(/電話:(.+)/)?.[1]?.trim() ?? '';
  const getContact = desc.match(/連絡:(.+)/)?.[1]?.trim() ?? 'email';
  const startTime = new Date(event.start.dateTime)
    .toLocaleString('ja-JP', { timeZone: 'Asia/Tokyo', hour: '2-digit', minute: '2-digit' });

  return {
    json: {
      eventId: event.id,
      customerName: getName,
      phone: getPhone,
      email: event.attendees?.[0]?.email ?? '',
      contactMethod: getContact,
      appointmentTime: startTime,
      serviceType: event.summary
    }
  };
});

Step 3: SMSリマインダー(Twilio)

From: +81-XXXX-XXXX(TwilioのJapan番号)
To: {{ $json.phone }}
Body:
【リマインダー】
{{ $json.customerName }} 様

明日 {{ $json.appointmentTime }} のご予約のご確認です。

「{{ $json.serviceType }}」
場所: 〇〇院(東京都渋谷区...)

キャンセルの場合は前日18:00までにご連絡ください。
TEL: 03-XXXX-XXXX

Step 4: LINE リマインダー

// HTTP RequestノードのBodyに設定するJSONを生成
const lineUserId = $json.lineUserId; // LINE IDを別途管理
return [{
  json: {
    to: lineUserId,
    messages: [{
      type: 'text',
      text: `【予約リマインダー】\n${$json.customerName} 様\n\n明日 ${$json.appointmentTime} のご予約のご確認です。\n\nご変更はこちら: https://booking.yoursite.com/cancel/${$json.eventId}`
    }]
  }
}];

Step 5: キャンセルリンクの設定

メッセージにキャンセル専用Webhookへのリンクを含める。

キャンセルURL: https://your-n8n.com/webhook/cancel?event={{ $json.eventId }}&token={{ $json.cancelToken }}

キャンセルリンクをクリックすると別のn8nワークフローが起動し、カレンダーから予約を削除してスロットを空ける。

ポイント・注意事項

  • 日本でのSMS送信にはTwilioのJapan番号が必要。月額数ドル+送信料
  • 直前キャンセル防止のため「48時間前以降はキャンセル不可」ルールを設ける場合は、IFでキャンセルリンクの有効/無効を切り替える
  • LINEリマインダーは公式アカウントが必要。LINE Messaging APIの月間無料メッセージ数(200通)を超えると有料

関連機能

  1. 1. 🔄n8n概要 - ワークフロー自動化プラットフォーム
  2. 2. ⚙️n8nワークフローの基本(ノード・コネクション・実行)
  3. 3. n8nトリガーの種類(Webhook・スケジュール・イベント)
  4. 4. 🔀n8nロジック制御(フィルター・条件分岐・ループ・マージ)
  5. 5. 🌐n8n HTTP Request・API連携
  6. 6. 🔗n8n主要インテグレーション(Slack・Gmail・GitHub)
  7. 7. 🛡️n8nエラーハンドリング・デバッグ
  8. 8. 🤖n8n AI・LLMエージェント(Chain・Agent)
  9. 9. 💻n8n Codeノード・カスタム処理
  10. 10. 🏢n8nエンタープライズ機能(ソース管理・シークレット・チーム管理)
  11. 11. 🌤️毎朝SlackにAIで天気・ニュースを通知する
  12. 12. 📊GitHubのPRをGoogleシートに自動記録する
  13. 13. 📧新規ユーザー登録時にWelcomeメールを自動送信する
  14. 14. 💳StripeのWebhookで決済完了を検知して処理する
  15. 15. 📈スケジュールトリガーで週次レポートを自動生成する
  16. 16. 🎫Gmailトリガーでサポートメールを自動Notionチケット化する
  17. 17. 🎯条件分岐でリード属性に応じて担当者を振り分ける
  18. 18. 📨ループ処理でリストを走査し一括メール送信する
  19. 19. 📋複数APIのデータをマージして統合レポートを作成する
  20. 20. 🗄️外部REST APIからデータを取得してDBに保存する
  21. 21. 🔍GraphQL APIでGitHubのIssueを取得・加工する
  22. 22. 🔐Bearer認証付きAPIを呼び出してデータ同期する
  23. 23. SlackとNotionを連携したチームタスク管理フロー
  24. 24. 🤝GmailとHubSpotを連携したCRM自動化フロー
  25. 25. 🚀GitHubデプロイイベントをSlackに通知する
  26. 26. 🚨APIエラー発生時にSlackへアラートを送る
  27. 27. 🔁リトライ付きの堅牢なデータ同期フローを構築する
  28. 28. 📝エラーログをAirtableに自動記録する
  29. 29. 🤖LLMを使ったカスタマーサポート自動応答ボット
  30. 30. 🔎ドキュメントRAG検索システムを構築する
  31. 31. 📬AIでメール内容を自動分類・ルーティングする
  32. 32. 🔧JavaScriptで複雑なデータ変換処理を実装する
  33. 33. 📄npmライブラリを使ったPDF自動生成フロー
  34. 34. ✔️カスタムバリデーションロジックをCodeノードで実装する
  35. 35. 🗂️Gitでワークフローをバージョン管理する
  36. 36. 🌍環境変数で本番・ステージングを切り替える
  37. 37. 👥チームでのワークフロー共同管理フロー
  38. 38. 📋AIで履歴書を自動スクリーニング・スコアリングする
  39. 39. 🧾請求書PDFをOCRで自動データ入力・会計ソフト登録する
  40. 40. 📱ブログ記事→SNS自動投稿パイプラインを構築する
  41. 41. 📦Shopify注文処理を完全自動化する(在庫・配送・顧客通知)
  42. 42. 🔔予約リマインダーを自動送信してノーショーを削減する
  43. 43. 📊経営ダッシュボードを毎朝Slackに自動配信する
  44. 44. 🔭競合情報を自動収集してWeeklyレポートにまとめる
  45. 45. 🎉新入社員オンボーディングを完全自動化する

出典: https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.googlecalendar/