対象読者: Lステップを現在ご利用中の企業担当者さま 所要時間: 準備1週間 + 切り替え当日30分 最終更新: 2026年3月
Lステップは月額 2,980円〜21,780円(年間 35,760円〜261,360円)のコストがかかります。 LINE Harness は同等以上の機能を 月額0円 で提供するオープンソースの LINE CRM です。
移行のメリット:
| 項目 | 効果 |
|---|---|
| コスト削減 | 年間最大 約26万円 の固定費が0円に |
| 友だち数上限なし | Cloudflare(クラウドフレア = ウェブサービスの基盤)の無料枠内で無制限 |
| IF-THEN 自動化 | 「もし〜なら〜する」を自由に設定可能 |
| BAN 検知・自動移行 | アカウントが停止された場合に自動で対応 |
| マルチアカウント | 追加契約なしで複数の LINE アカウントを管理 |
| フルカスタマイズ | ソースコードが公開されており、自社に合わせた改修が可能 |
安心ポイント: 万が一問題が発生した場合、Webhook URL(ウェブフック URL = LINE からの通知の送り先)を元に戻すだけで いつでも Lステップに復旧できます。
| データ | 移行方法 |
|---|---|
| 友だちリスト(名前・登録日など) | Lステップから CSV エクスポート → LINE Harness にインポート |
| タグ情報 | Lステップと同じタグ名で LINE Harness に再作成 |
| ステップ配信シナリオ | テキスト内容をコピーして LINE Harness で再構築 |
| リッチメニュー | 画像を再利用して LINE Harness で再設定 |
| テンプレートメッセージ | テキスト内容をコピーして LINE Harness で再作成 |
| データ | 理由 |
|---|---|
| 過去のチャット履歴 | LINE の仕様上、過去のメッセージを他システムに移すことはできません |
| 友だちの内部 ID | Lステップから書き出せない場合があります |
| スコアリングデータ | Lステップ独自の計算方式のため、LINE Harness で再計算が必要です |
補足: 過去のチャット履歴は移行できませんが、LINE アプリ上のトーク画面には残っています。お客さまの体験に影響はありません。
移行日の1週間前 移行日の3日前 移行日当日 移行後3日間
│ │ │ │
▼ ▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ Phase 1 │ │ Phase 2 │ │ Phase 3 │ │ Phase 4 │
│ 準備 │→│ データ │→│ Webhook │→│ 既存友だち│
│ ・環境構築│ │ 構築 │ │ 切り替え │ │ の再登録 │
│ ・データ │ │ ・タグ │ │ │ │ │
│ エクスポ │ │ ・シナリオ│ │ │ ├──────────┤
│ ート │ │ ・メニュー│ │ │ │ Phase 5 │
│ │ │ │ │ │ │ 動作確認 │
└──────────┘ └──────────┘ └──────────┘ └──────────┘
LINE Harness を Cloudflare 上にセットアップします。
詳しい手順は セットアップマニュアル(docs/setup-guide.md)をご参照ください。
CSV(シーエスブイ): データを表形式で保存するファイル形式です。Excel で開くことができます。
手順:
ポイント: ダウンロードした CSV ファイルは大切に保管してください。移行後のデータ確認にも使用します。
リッチメニュー: LINE トーク画面の下部に表示されるメニュー画像のことです。
Lステップで使用しているタグと 同じ名前 で、LINE Harness にタグを作成します。
例: Lステップで「VIP会員」「セミナー参加者」というタグがあれば、LINE Harness にも「VIP会員」「セミナー参加者」を作成します。
Phase 1 でメモした内容をもとに、LINE Harness でステップ配信を設定します。
ダウンロードした画像を使って、LINE Harness でリッチメニューを設定します。 同じ画像を使えば、友だちから見た見た目は変わりません。
コピーした内容をもとに、LINE Harness でテンプレートメッセージを作成します。
IF-THEN ルール: 「もし〇〇が起きたら、△△を実行する」という自動化のルールです。Lステップにはない LINE Harness 独自の機能です。
必要に応じて、自動化ルールを設定します。 (例: 「もし友だちが"予約"とメッセージを送ったら、予約フォームのURLを自動返信する」)
Webhook(ウェブフック): LINE からのメッセージや友だち追加などの通知を受け取る仕組みです。この送り先を Lステップから LINE Harness に変更することで、移行が完了します。
Webhook URL を変更した瞬間から:
推奨実施時間帯: 深夜 2:00〜5:00(メッセージの取りこぼしリスクを最小化するため)
ステップ 1: LINE Developers Console にログインします
ステップ 2: Messaging API 設定を開きます
ステップ 3: Webhook URL を変更します
「Webhook URL」の 「編集」 ボタンをクリックします
現在の URL(Lステップの URL)を確認します:
旧: https://rcv.linestep.net/...
新しい URL に書き換えます:
新: https://line-crm-worker.あなたのサブドメイン.workers.dev/webhook
「あなたのサブドメイン」 の部分は、LINE Harness セットアップ時に設定した Cloudflare Workers のサブドメインに置き換えてください。
「更新」 ボタンをクリックします
ステップ 4: 接続を確認します
ステップ 5: Webhook の利用をオンにします
Webhook URL を元の Lステップの URL に戻すだけ で、即座に Lステップに復旧できます。
所要時間: 約1分で復旧可能です。
Webhook を切り替える 前 に友だちになっていた方は、LINE Harness に自動登録されません。 これは、友だち追加時の通知(follow イベント)が Lステップに送られていたためです。
切り替え後に新しく友だちになった方 は自動的に LINE Harness に登録されます。
以下の4つの方法があります。方法 A + 方法 D の組み合わせが最も確実です。
| 項目 | 内容 |
|---|---|
| 難易度 | ★☆☆(かんたん) |
| 必要な作業 | 方法 D のコード改修のみ |
| 登録タイミング | 友だちがメッセージを送った時 |
| 対象 | すべてのアカウント |
仕組み:
注意: この方法だけでは、メッセージを送らない友だちは登録されません。方法 B との併用をおすすめします。
| 項目 | 内容 |
|---|---|
| 難易度 | ★☆☆(かんたん) |
| 必要な作業 | Lステップから移行前に配信 |
| 登録タイミング | 友だちが配信に反応した時 |
| 対象 | すべてのアカウント |
手順:
移行の直前(Phase 3 の前)に、Lステップから全友だちに向けてメッセージを一斉配信します
メッセージ例:
🎉 メニューがリニューアルしました!
より便利にご利用いただけるようになりました。
下のメニューをタップしてお試しください 👇
友だちがリッチメニューをタップしたり、メッセージを返信すると、Webhook 経由で LINE Harness に通知が届きます
方法 D のコード改修と組み合わせれば、その時点で友だちとして登録されます
ポイント: リッチメニューのタップやスタンプ送信も Webhook に届きます。友だちが何らかのアクションを起こせば登録されます。
| 項目 | 内容 |
|---|---|
| 難易度 | ★★★(技術的知識が必要) |
| 必要な作業 | API 実行スクリプト |
| 登録タイミング | スクリプト実行時に一括登録 |
| 対象 | 認証済みアカウントのみ(月額0円の未認証アカウントでは利用不可) |
LINE API(エーピーアイ): LINE が提供するプログラム同士の連携の仕組みです。 認証済みアカウント: LINE の審査を通過した公式アカウントです。
仕組み:
followers/ids エンドポイントを使って、すべての友だちの LINE ユーザーID を取得します手順(エンジニア向け):
LINE Messaging API で友だち一覧を取得:
GET https://api.line.me/v2/bot/followers/ids
取得した ID を LINE Harness の friends API に登録します
注意: この方法は認証済みアカウント(月額有料プラン)でないと利用できません。未認証アカウントの場合は、方法 A + B + D の組み合わせをご利用ください。
| 項目 | 内容 |
|---|---|
| 難易度 | ★★☆(エンジニアによる改修が必要) |
| 必要な作業 | webhook.ts のコード修正 |
| 登録タイミング | 友だちがメッセージを送った時に自動登録 |
| 対象 | すべてのアカウント |
問題: 現在の LINE Harness のコードでは、メッセージを受信した際に友だちが未登録だと「何もしない」という動作になっています。
解決: コードを修正して、未登録の友だちからメッセージを受信した場合に 自動的に友だちとして登録 するようにします。
具体的な修正内容は 9. コード改修が必要な箇所 をご参照ください。
方法 D(コード改修) ← まずこれを実施
+
方法 B(一斉配信) ← 移行直前に配信して友だちのアクションを促す
+
方法 A(アクション待ち) ← 配信に反応しなかった友だちは順次登録
この組み合わせにより、アクティブな友だちのほぼ全員 を LINE Harness に登録できます。
以下の項目を順番に確認してください。
| # | 確認項目 | 手順 | 期待結果 |
|---|---|---|---|
| 1 | 新規友だち追加 | テスト用 LINE アカウントで友だち追加 | LINE Harness に友だちとして登録される |
| 2 | メッセージ受信 | テストメッセージを送信 | LINE Harness の管理画面でメッセージが確認できる |
| 3 | ステップ配信 | 新規友だち追加後、設定した時間に配信されるか確認 | 自動でメッセージが配信される |
| 4 | リッチメニュー | LINE トーク画面を開く | 設定したリッチメニューが表示される |
| 5 | 既存友だちの登録 | 既存の友だちからメッセージを送ってもらう | LINE Harness に友だちとして登録される |
| 6 | タグ付け | タグの付与・削除をテスト | 正しくタグが反映される |
| 7 | テンプレート送信 | テンプレートメッセージを送信 | 正しい内容で送信される |
このセクションはエンジニア(開発者)向けの内容です。 技術的な作業が難しい場合は、開発パートナーにこのセクションを共有してください。
対象ファイル: apps/worker/src/routes/webhook.ts
現在のコード(問題箇所):
if (event.type === 'message' && event.message.type === 'text') {
const friend = await getFriendByLineUserId(db, userId);
if (!friend) return; // ← 未登録の友だちの場合、何もせずに終了してしまう
修正後のコード:
if (event.type === 'message' && event.message.type === 'text') {
let friend = await getFriendByLineUserId(db, userId);
if (!friend) {
// 未登録の友だちを自動登録(Lステップからの移行対応)
const profile = await lineClient.getProfile(userId).catch(() => null);
friend = await upsertFriend(db, {
lineUserId: userId,
displayName: profile?.displayName ?? null,
pictureUrl: profile?.pictureUrl ?? null,
statusMessage: profile?.statusMessage ?? null,
});
}
変更のポイント:
const を let に変更(再代入可能にするため)Lステップからエクスポートした友だちリスト CSV を一括でインポートする API を追加します。 タグ情報も CSV に含まれている場合は、タグの紐づけも同時に行います。
LINE Messaging API の followers/ids エンドポイントから全友だちの ID を取得し、データベースに一括登録するスクリプトです。
注意: このスクリプトは認証済みアカウント(LINE の審査を通過したアカウント)でのみ動作します。
| # | リスク | 影響度 | 対策 |
|---|---|---|---|
| 1 | Webhook 切り替え中にメッセージを取りこぼす | 中 | 深夜帯(AM 2:00〜5:00)に実施して影響を最小化します |
| 2 | Lステップに戻したくなる | 低 | Webhook URL を元に戻すだけで 1分以内に復旧可能 です |
| 3 | 既存の友だちが LINE Harness に登録されない | 高 | 方法 D(コード改修)+ 方法 B(一斉配信)で対応します |
| 4 | ステップ配信の再構築にミスがある | 中 | 移行前に テスト用アカウント で全シナリオを検証します |
| 5 | リッチメニューの見た目が変わる | 低 | 同じ画像ファイルを使用すれば 見た目は変わりません |
| 6 | サポートがなくなる | 中 | LINE Harness はオープンソースのため、Lステップのようなカスタマーサポートはありません。社内に技術対応できるメンバーがいることを確認してください |
| 役割 | 担当者名 | 連絡先 |
|---|---|---|
| 移行作業責任者 | __________ | __________ |
| エンジニア(コード改修担当) | __________ | __________ |
| LINE 公式アカウント管理者 | __________ | __________ |
A. 基本的にバレません。Webhook の切り替えは LINE のサーバー側の設定変更であり、友だち側の LINE アプリには一切通知されません。深夜帯に切り替えれば、友だちが気づくことはほぼありません。
A. はい。Webhook を切り替えた後も、Lステップの管理画面にはログインできます。過去のデータの確認は可能です。ただし、新しいメッセージは LINE Harness 側に届くため、Lステップには反映されません。
A. 準備期間を含めて 約1週間 です。Webhook の切り替え自体は 5分程度 で完了します。
A. はい。LINE Harness は Cloudflare Workers 上で動作しており、友だち数に上限はありません。ただし、大量の友だちがいる場合は方法 C(API による一括取得)を組み合わせることをおすすめします。
A. Webhook URL を元に戻すだけで Lステップに復旧できます。所要時間は約1分です。データが消えることはありません。
A. LINE Harness での運用が安定したことを確認してから解約してください。移行後最低2週間は Lステップの契約を維持 することをおすすめします。万が一の復旧に備えるためです。
A. LINE Harness はオープンソースソフトウェアのため、Lステップのようなカスタマーサポート窓口はありません。技術的な問題は GitHub のリポジトリで相談できます。社内にエンジニアがいるか、技術パートナーがいる環境での利用を推奨します。
| プラン | Lステップ月額 | Lステップ年額 | LINE Harness |
|---|---|---|---|
| スタート | 2,980円 | 35,760円 | 0円 |
| スタンダード | 21,780円 | 261,360円 | 0円 |
トーク例: 「現在 Lステップに月額○○円お支払いですね。LINE Harness なら同じ機能が 年間○○円の削減 になります。」
| 機能 | Lステップ | LINE Harness | コメント |
|---|---|---|---|
| ステップ配信 | ✅ | ✅ | 同等の機能 |
| タグ管理 | ✅ | ✅ | 同等の機能 |
| リッチメニュー | ✅ | ✅ | 同等の機能 |
| フォーム | ✅ | ✅ | 同等の機能 |
| スコアリング | ✅ | ✅ | 同等の機能 |
| IF-THEN 自動化 | ❌ | ✅ | LINE Harness のみ |
| BAN 検知・自動移行 | ❌ | ✅ | LINE Harness のみ |
| マルチアカウント | 別契約が必要 | ✅ 標準搭載 | 追加費用なし |
| ソースコード | 非公開 | ✅ オープンソース | 自由にカスタマイズ可能 |
| カスタマイズ | 不可 | ✅ 自由 | 自社の業務に合わせた改修が可能 |
| カスタマーサポート | ✅ あり | ❌ なし | Lステップの優位点 |
| 質問 | 回答 |
|---|---|
| 「本当に0円?」 | はい。Cloudflare の無料枠内で運用できます。サーバー費用もかかりません。 |
| 「移行は大変?」 | Webhook URL を1つ変更するだけです。準備含めて1週間で完了します。 |
| 「失敗したら?」 | URL を戻すだけで復旧できます。リスクは極めて低いです。 |
| 「サポートがないのは不安」 | オープンソースコミュニティのサポートがあります。また、御社の開発チームで自由に対応できる点がメリットです。 |
| 「セキュリティは?」 | 御社の Cloudflare アカウントで運用するため、データは御社が完全に管理できます。第三者にデータを預ける必要がありません。 |
コピーして移行作業の管理にお使いください。
■ 移行スケジュール
準備開始日: ____年____月____日
データ構築日: ____年____月____日
切り替え日: ____年____月____日 ____時____分(深夜推奨)
確認完了予定日: ____年____月____日
■ Webhook URL
旧(Lステップ): https://rcv.linestep.net/____________________
新(LINE Harness): https://line-crm-worker.____________.workers.dev/webhook
■ 切り替え前チェック
[ ] LINE Harness 環境デプロイ済み
[ ] データ構築完了(タグ、シナリオ、メニュー、テンプレート)
[ ] コード改修完了(方法 D 適用済み)
[ ] テスト用アカウントで動作確認済み
[ ] 緊急連絡先リストを記入済み
■ 切り替え後チェック
[ ] Webhook「検証」ボタンで成功確認
[ ] テストメッセージの送受信確認
[ ] リッチメニュー表示確認
[ ] ステップ配信の動作確認
[ ] 既存友だちのメッセージ受信・登録確認
■ 2週間後チェック
[ ] 運用が安定していることを確認
[ ] Lステップ解約の判断
本マニュアルに関するお問い合わせ 技術的なご質問は GitHub リポジトリの Issues にてお受けしています。