ホテル予約サイトの作り方:部屋、料金、空室管理、決済
ホテル予約サイトでは、ゲストが日付を選び、滞在中の各夜に空いている部屋を確認し、合計金額を見て、支払うかデポジットを入れられます。誰かがメールで行き来する必要はありません。作るには、部屋の数を含む部屋のタイプ、夜ごとの空室モデル、日付によって変わる料金、保存時に空室を確認し直す予約フロー、そしてフロントの管理画面が必要です。難しいのは見た目ではありません。部屋を二重に売らないことです。特に予約サイトでも販売している場合はそうです。
サイトに必要なもの
ページ
- 公開ページ: ホーム、部屋(写真、ベッド、広さ、設備、最大人数)、日付と人数の検索、部屋のタイプごとの合計金額を表示する検索結果、予約フォーム、支払い、予約管理リンク付きの確認ページ。
- 補助ページ: 所在地と道順、ポリシー(チェックイン時間、キャンセル、子ども、ペット)、よくある質問、お問い合わせ。
- 非公開(スタッフ): 今日のチェックインとチェックアウト、部屋ごとの夜のカレンダー、予約一覧、日付の停止(ブロック)、料金と部屋の設定。
データ
| テーブル | 主なフィールド |
|---|---|
| 部屋のタイプ | 名前、説明、最大の大人と子どもの人数、基本料金、写真 |
| 部屋 | 部屋のタイプ、部屋番号または名前、有効かどうか |
| 料金 | 部屋のタイプ、日付または期間、一泊の料金、最低宿泊数 |
| 予約 | ゲスト、部屋のタイプ、割り当てられた部屋、チェックイン、チェックアウト、人数、合計、支払ったデポジット、状態、経路(直接、オンライン旅行会社) |
| ゲスト | 名前、メール、電話番号、国、メモ |
| ブロック | 部屋、日付の期間、理由(メンテナンス、オーナーの利用) |
チェックインとチェックアウトは時刻ではなく日付として保存し、チェックアウトは含まない(排他的)ものとして扱ってください。 10日から12日までの滞在は、10日と11日の夜を使います。これを間違えると、空室にまつわるバグが最も多く起きます。
権限
ゲストは料金と、部屋のタイプが空いているかどうかを見られますが、他に誰が泊まっているかは決して見られません。フロントのスタッフは予約とゲストの詳細を見られます。料金と方針を変えられるのはオーナーだけです。そのため、スタッフのログインには少なくとも二つの役割が必要です。
決めること・トレードオフ
リクエスト予約か、即時予約か
リクエスト予約(ゲストが日付と詳細を送り、こちらがメールで確定する)は、ずっとシンプルで、小さなゲストハウスなら十分です。即時予約 は、空室と決済の処理に隙がないことが前提ですが、成約率は高まります。多くの施設は、まずリクエストで始め、後から切り替えます。
部屋のタイプを売るか、個別の部屋を売るか
ゲストは通常、部屋の「タイプ」(「海側のダブル」など)を予約し、実際の部屋はスタッフが後で割り当てます。個別の部屋を売るほうが作るのは簡単ですが、カレンダーを埋めるのが難しくなります。
料金
部屋のタイプごと、一泊ごとの一つの価格から始め、期間(繁忙期、祝日)での上書きと最低宿泊数を任意で加えます。ダイナミックプライシング、プロモーションコード、パッケージは後回しにしましょう。
支払い
選択肢は、複雑さが増す順に、現地払い、Stripe Checkout などのホスト型チェックアウトによるデポジット、キャンセル不可の料金での全額前払い、後で請求するためのカード保存です。支払いのルール、税金、宿泊税は国によって異なるため、現地のルールを確認するか、専門家に相談してください。仕組みは決済の追加方法で扱っています。
他のチャネル
部屋をオンライン旅行会社や休暇レンタルのプラットフォームにも掲載しているなら、カレンダーを同期させ続ける必要があります。これらのプラットフォームの多くは、カレンダーを iCal のリンクで書き出し・読み込みできます。この方法での同期は小規模な施設でよく使われますが、遅延があり、即時ではありません。プロ向けの答えはチャネルマネージャーです。
うまくいく最初のプロンプト
スコットランドのトバモリーにある9室のゲストハウス、Harbour House の直接予約サイトを作ってください。部屋のタイプは、ダブル(4室、2名、1泊 £120)、ツイン(3室、2名、£115)、ファミリー(2室、大人2名+子ども2名、£165)です。ゲストはチェックイン日、チェックアウト日、人数で検索し、滞在中のすべての夜に空室がある部屋のタイプだけを、滞在の合計金額とともに見られるようにしてください。チェックアウトは含まない扱いです。7月と8月は最低2泊です。予約フォームでは、名前、メール、電話番号、到着時刻を集め、「保留」として保存します。保存の前に、サーバーで空室を確認し直してください。スタッフ用エリアにはログインを付けます。今日の到着と出発、夜ごとの部屋のカレンダー、状態付きの予約一覧、日付をブロックする機能を用意してください。すべての予約ページに、チェックイン 15〜20時、チェックアウト 10時、キャンセルポリシー(7日前まで無料)を表示します。沿岸の穏やかなデザインで、スマートフォンを最優先にしてください。
構築のステップ
- 部屋と夜のモデルを先に作る。 部屋のタイプ、部屋、料金、空室の確認。デザインの作業の前にテストします。
- 検索と結果。 日付選択、人数、滞在の合計金額、わかりやすい「満室」の表示。
- 予約の流れ。 フォーム → サーバーでの空室の再確認 → 保留の予約 → 予約管理リンク付きの確認ページ。
- スタッフ用エリア(ログイン付き):到着、出発、カレンダー、日付のブロック。
- メールでの確認。 自分のプロバイダーを使い、日付、合計、住所、ポリシーを記載します。メール送信の方法をご覧ください。
- デポジット。 Stripe のテストモードで、決済が成功したときだけ予約を確定させます。決済の Webhook には、アプリを公開して公開 URL が必要です。
- カレンダーの同期。 他のチャネルを使う場合は同期させ、最初は毎日手動で確認します。
- エッジケースのテスト。 二つのブラウザで最後の一室を同時に予約する、料金の変わり目をまたぐ滞在、キャンセルで夜が空く、最低宿泊数の期間での一泊の滞在。
- 公開し、古い運用をやめる前に、自分で実際に予約してみる。
よくある失敗
- 空室の確認をブラウザだけで行う。 二人のゲストが、同時に最後の部屋を予約する日が必ず来ます。
- チェックアウトの夜を埋まった扱いにする(またはチェックインの夜を数えない)。 二泊の滞在をテストするケースを書きましょう。
- 一律の料金。 ほとんどの施設には、少なくとも季節ごとの上書きが必要です。
- 合計金額を最後の手順まで隠す。 検索結果で、既知の料金を含めた滞在の全額を表示してください。
- ポリシーをフッターに埋もれさせる。 キャンセル条件は、支払いボタンのすぐ横に表示します。
- iCal の同期を即時だと思い込む。 即時ではありません。ほぼ満室のときは、手動で日付を閉じてください。
既製の製品のほうが良い場合
部屋数が多く、いくつものオンライン旅行会社で販売し、清掃、請求書、レポートが必要なら、予約エンジンとチャネルマネージャーを備えた物件管理システムが、通常は正しい選択です。こうした製品は、チャネルをまたぐオーバーブッキングを解決するために存在しており、それを十分に再現するのは高くつきます。
カスタムサイトが適しているのは、直接予約が中心の小規模な施設、特殊な在庫(グランピングのサイト、共有設備のあるコテージ、アクティビティ付きの部屋)、または部屋ごとの月額料金をかけずに、自分のデザインとゲスト体験を持ちたい場合です。カスタムのウェブサイトに、ホスト型の予約エンジンを埋め込むという組み合わせも、よくある解決策で、両方の良いところを取れることが多いです。
Mythex での構築
Mythex では、物件をチャットで説明し、スマートフォンサイズの枠を含むライブプレビューでサイトを確認して、うまくいったら公開します。予約、部屋、料金は、アプリがデータを保存する必要が出たときにエージェントが追加する Postgres データベースに保存されます。アイドル時はスリープし、次のリクエストで起きます。スタッフのログイン、メールの確認、デポジットは、自分のプロバイダーとキーに接続します。Mythex にはエンドユーザー向けのログイン、メール、決済の組み込みサービスがないためです。デポジットを追加する前に、Stripe のレシピを読んでください。検索と予約の流れをエージェントに確認させるには /test を使い、空室を壊す変更があったらチェックポイントで元に戻せます。
開始用のプロンプトには、ホテル予約システムの作成ツール、ゲストハウス予約システムの作成ツール、またはグランピング予約サイトのテンプレートをご覧ください。時間単位や予約枠での予約(泊数ではないもの)については、予約アプリのガイドをご覧ください。
よくある質問
ホテルの予約は、アポイントの予約とどう違いますか?
ホテルは時間枠ではなく、泊数を売ります。部屋のタイプごとに、各夜に何室空いているかを管理します。滞在は複数の夜にまたがり、料金は夜ごとに変わることがあります。
予約サイトでも販売している場合、オーバーブッキングはどう防ぎますか?
すべてのチャネルが、一つの空室情報を共有している必要があります。小規模な施設では iCal のリンクでカレンダーを同期させることがよくありますが、即時ではありません。そのため余裕を持たせるか、素早く日付を閉じられるようにしておきましょう。規模の大きい施設では、すべてのチャネルをほぼリアルタイムに更新するチャネルマネージャーを使います。
予約時に全額支払ってもらうべきですか?
方針によります。一般的な選択肢は、予約時のデポジット、キャンセル不可のプランでの全額前払い、またはカードを保存して後で請求する方法です。どれを選んでも、支払いの前にキャンセルポリシーを表示してください。
小さな施設にとって、カスタムの予約サイトは価値がありますか?
小規模な B&B なら、リクエスト予約または簡単な即時予約を備えたカスタムサイトがうまくいきます。いくつものオンライン旅行会社で販売したり、多くの部屋を管理したりするようになると、予約エンジンとチャネルマネージャーを備えた物件管理システムの費用に見合うことが多くなります。