ライブデモ

宿泊API

ホテル、アパートメント、バケーションレンタルのための宿泊API

宿泊APIは、ホテルの客室、サービスアパートメント、貸別荘、ホステル、ゲストハウスなど、あらゆる宿泊施設を予約サイトに届けます。このページでは、宿泊の裏側にあるデータ、レンタルがホテルと異なる点、そしてPHPTRAVELSが自社物件とサプライヤー在庫をひとつの検索で販売する仕組みを解説します。

  • 施設、ユニット、料金、カレンダー
  • 最低宿泊日数と各種料金
  • キャンセル期間
  • 自社在庫とAPI仕入れ

データモデル

すべての宿泊に共通する4つの階層

300室のホテルでも一軒のビーチハウスでも、宿泊APIは同じ4つの入れ子構造で表現します。各階層は、予約前にゲストが抱く異なる疑問に答えます。

01施設

場所そのもの。名称、タイプ、住所と地図上の位置、写真、設備、星数や品質評価、ハウスルール、チェックイン時間。

property_id · type · address · geo · photos · amenities · check_in_from

02客室・ユニット

実際に予約されるもの。客室タイプ、アパートメント一戸、ドミトリーのベッドなどで、広さ、ベッド数、最大収容人数を持ちます。

unit_id · beds · size_m2 · max_adults · max_children

03料金プラン

そのユニットの販売条件。食事、キャンセルポリシー、支払条件、公開用かエージェント専用かといった予約可能な対象。

rate_plan_id · board · cancel_policy · payment · channel

04空室状況

1泊ごとに1行。価格、残りユニット数、最低宿泊日数、その日の到着や出発が可能かどうか。

date · price · units_left · min_stay · closed_to_arrival

ひとつの宿泊施設の掲載情報を、建物、客室、料金タグ、カレンダーの4つの積み重なった層として描いた図

PHPTRAVELSは宿泊モジュールをStaysと呼んでいます。同じモデルでホテル以外も広くカバーできるからです。施設は複数のユニットを持ち、ユニットは1つ以上の料金プランで販売され、各料金プランには1泊ごとの価格と空室のカレンダーがあります。この4階層を正しく押さえれば、ホステルのベッドも、ホテルのスイートも、3ベッドルームのヴィラも、同じ検索と決済に収まります。

サプライヤーごとに階層の呼び名は異なり、2つを統合しているところもありますが、構造は必ず存在します。ホテルがすべての仕入れ先をこの構造に対応づけるため、ゲストには一貫したページが表示されます。

1泊ごとに管理

宿泊の成否を分けるのは空室カレンダー

宿泊APIは最終的にカレンダーに行き着きます。検索結果に施設が表示されるのは、希望する滞在のすべての夜が空室で、価格が設定され、宿泊ルールに合致している場合だけです。

2ベッドルームのアパートメント · スタンダード料金11月 2026 · 1泊あたりの料金
  1. 26
  2. 27
  3. 28
  4. 29
  5. 30
  6. 31
  7. 1120
  8. 2120
  9. 3
  10. 4
  11. 5
  12. 6165
  13. 7140
  14. 8120
  15. 9
  16. 10
  17. 11
  18. 123+165
  19. 13165
  20. 14140
  21. 15120
  22. 16120
  23. 17120
  24. 18
  25. 19
  26. 20165
  27. 21140
  28. 22120
  29. 23120
  30. 24120
  31. 25120
  32. 263+165
  33. 27165
  34. 28140
  35. 29120
  36. 30120
  37. 1
  38. 2
  39. 3
  40. 4
  41. 5
  42. 6
  • 空室あり、1泊ごとに価格設定
  • 予約済み
  • オーナーにより休止
  • この到着日からの最低宿泊日数
  • 到着不可

簡略化したサンプルデータです

  • 料金は1泊単位宿泊の合計は各夜の合計です。週末料金の金曜と土曜は、平日2泊より高くなります。曜日別や季節別の料金は、施設ではなくカレンダーに持たせます。
  • 最低宿泊日数のルール金曜到着で3泊以上が条件の場合、2泊の検索ではそのユニットは表示されません。レンタルではホテルよりずっと多く使われ、週末や繁忙期には特に厳しくなりがちです。
  • 到着不可・出発不可長期滞在の途中の夜としては予約できても、最初や最後の夜にはできない日があります。貸別荘の入れ替え日はこの仕組みです。
  • 休止日とストップセールオーナーは自己利用やメンテナンスのために日付を閉じ、ストップセールはユニットを即座に販売停止にします。希望日程内に休止の夜が1つでもあれば、そのユニットは結果から外れます。

宿泊=ホテル、とは限りません

ホテル、アパートメント、バケーションレンタルの違い

データモデルは共通ですが、宿泊の種類ごとに中身の埋め方が違います。ホテルの客室以外も販売するなら、予約フローが対応すべき違いは次のとおりです。

ホテル

ホステルやゲストハウスを含む

予約の対象
同じ部屋が多数ある客室タイプ、または相部屋のベッド。
料金体系
客室と食事条件ごとの1泊料金。大人や子供の追加で変わることがあります。
宿泊ルール
最低宿泊日数は繁忙日のみ。ほとんどの夜は1泊だけでも予約できます。
料金とデポジット
宿泊税や観光税、現地払いのリゾート料金が加わることもあります。
到着
24時間または有人のフロント。バウチャーに記載のチェックイン時間で十分です。
主な仕入れ先
ベッドバンクや卸業者、直接契約、チャネルマネージャー。

サービスアパートメント

アパートホテルや都市型アパート

予約の対象
ユニットタイプ。キッチンや独立した寝室があることが多い。
料金体系
ユニットごとの1泊料金。長期滞在には週単位・月単位の料金があります。
宿泊ルール
最低宿泊日数は一般的で、長期滞在が需要の大きな部分を占めます。
料金とデポジット
滞在ごとの清掃料金と、返金されるデポジットが一般的です。
到着
受付時間はまちまち。遅い到着にはキーボックスやコードが必要です。
主な仕入れ先
チャネルマネージャー、直接契約、一部の卸業者。

バケーションレンタル

貸別荘、ヴィラ、キャビン

予約の対象
特定の一軒。通常、同じものは他にありません。
料金体系
一軒全体の1泊料金に、基本人数を超えた宿泊者ごとの追加料金。
宿泊ルール
最低宿泊日数、固定の入れ替え日、到着不可日が標準です。
料金とデポジット
清掃料金、返金される損害保証金、現地の税金を、支払前にそれぞれ表示します。
到着
チェックイン案内、住所、連絡先は到着前に送り、公開ページには載せません。
主な仕入れ先
オーナーや運営管理会社。直接、またはチャネルマネージャー経由。

自社契約ではなく、多数のホストの物件を販売する場合はマーケットプレイスに当たります。詳しくはBnBポータルのページをご覧ください。

キャンセルポリシーの期間

1つの予約に、3つのキャンセル期間

キャンセルポリシーは、到着日から逆算したタイムラインです。各期間は、その中でキャンセルした場合にゲストへ戻る金額を定めます。

予約チェックイン
  1. 01 · 到着の14日前まで無料キャンセルキャンセルすると全額が返金されます。旅行者が最初に探す期限なので、ルールではなく日付で表示しましょう。
  2. 02 · 14日前から3日前一部キャンセル料最初の1泊分や滞在料金の一定割合などのキャンセル料がかかります。レンタルではこの期間中にデポジットが没収される場合もあります。
  3. 03 · 直前3日間とノーショー返金不可全額が差し引かれます。返金不可として販売される料金プランは、予約した時点からこの期間が始まります。
期間の例です。実際は料金プランごとに異なります。
  • 施設単位ではなく料金プラン単位同じアパートメントでも、柔軟な料金と、より安い返金不可の料金を持てます。そのためポリシーは料金プランの階層に属します。
  • 日付は施設所在地のタイムゾーン「14日前」は施設の所在地における到着日から数えます。ページとバウチャーには、明確な日付と時刻に変換して表示してください。
  • サプライヤーのポリシーが優先API在庫では、サプライヤーの条件より緩い条件は提供できません。自社契約の物件なら、期間を自分で設定できます。

自社在庫とAPI在庫

契約物件とサプライヤーAPIをひとつの検索に

宿泊販売事業者の多くは両方を行います。自社で契約した物件を登録し、それ以外はサプライヤーAPIで補います。旅行者には、どこから来た宿泊なのかを意識させません。

自社物件

  • 管理画面で施設、ユニット、料金プランを自分で登録
  • オーナーやホテルにエクストラネットのログインを提供し、カレンダーを管理してもらう
  • 料金、最低宿泊日数、休止日、キャンセル期間を設定
  • リリース日とストップセールを備えたアロットメント
  • またはチャネルマネージャーから料金と空室を受信

サプライヤーAPI在庫

  • 自社では契約しきれない目的地の大規模なカタログ
  • 検索時点のリアルタイムの料金と空室
  • すべての料金にサプライヤーの食事条件、ポリシー、料金を反映
  • ご自身のサプライヤー契約と認証情報で有効化
  • 予約とキャンセルはサプライヤーへ直接送信

ゲストに届くもの

  • ひとつの結果リストに、場所ごとにひとつの施設ページ
  • 複数の仕入れ先に同じ客室があっても、自社の価格で1回だけ表示
  • サプライヤー別、目的地別、チャネル別のマークアップとB2Bエージェント料金
  • どの仕入れ先で確定しても、ひとつのバウチャー形式

チャネルマネージャーの接続はチャネルマネージャー連携で解説しています。契約で確保した客室については予約在庫管理システムをご覧ください。

PHPTRAVELSで導入済み

接続済みの宿泊サプライヤー

以下の宿泊サプライヤーは、すでにStaysモジュールに接続されています。サプライヤーと契約し、管理画面にご自身の認証情報を入力して、サンドボックスでテストしたら本番稼働です。一覧は連携ディレクトリからリアルタイムで表示されます。

地域のレンタルネットワークなど、一覧にないサプライヤーが必要ですか。ドキュメントのある宿泊APIであれば追加できます。詳しくはカスタムAPI連携をご覧ください。ホテルのサプライヤータイプとコンテンツマッピングはホテルAPIのページで、2大ベッドバンクのガイドはRateHawk API連携とHotelbeds API 連携で解説しています。

ゲストと同じ流れで宿泊を予約してみましょう

ライブデモで検索、料金比較、予約を体験し、販売予定の物件とサプライヤーをお知らせください。

独自アプリやパートナー向けフィードを構築しますか。PHPTRAVELSのREST APIは、接続済みのすべての宿泊ソースをひとつの形式で提供し、予約イベント用のWebhookも備えています。Enterpriseプランに含まれます。料金と開発者向けドキュメントをご覧ください。全体像は旅行APIで解説しています。

よくある質問

宿泊API:開発者と代理店からのよくある質問

営業に相談

宿泊APIは、予約サイトが宿泊施設を検索し、指定した日程と人数の料金と空室を取得し、予約の作成・参照・キャンセルを行うためのWebサービス群です。ホテルに加え、アパートメント、バケーションレンタル、ホステル、ゲストハウスなど、あらゆる宿泊を対象とします。

基本的な呼び出しは同じです。宿泊APIは、ホテル以外の宿泊に必要な要素も扱います。一軒まるごとの予約、最低宿泊日数と入れ替え日、追加宿泊者の料金、清掃料金、返金されるデポジット、到着前に送るチェックイン案内などです。

はい。PHPTRAVELSのStaysモジュールは、あらゆる宿泊タイプに対して、施設、ユニット、料金プラン、空室状況という同じモデルを使います。ホテル、アパートメント、貸別荘が、それぞれのルールのまま同じ検索結果に並びます。

カレンダーの各夜に最低宿泊日数を設定でき、通常は到着日に紐づきます。ゲストが最低日数より短い日程で検索すると、そのユニットは返されません。到着不可・出発不可のフラグも、入れ替え日に対して同じ仕組みで働きます。

はい。施設、ユニット、料金プラン、カレンダーを自分で追加できます。オーナーにエクストラネットのログインを提供したり、チャネルマネージャーから料金を受信したりして、サプライヤー在庫と並べてひとつの結果リストで販売できます。

料金プランからです。サプライヤー在庫にはサプライヤーのポリシーが付き、自社物件には設定した期間が適用されます。期限は支払前にゲストへ表示され、バウチャーにも印字されます。

いいえ。各宿泊サプライヤーとの契約はご自身で行い、認証情報も管理画面に入力します。PHPTRAVELSが提供するのは、予約プラットフォーム、Staysモジュール、導入済みコネクターです。

はい。EnterpriseプランのPHPTRAVELS REST APIは、接続済みのすべてのソースの検索と予約をひとつの形式で公開します。予約イベント用のWebhookと、拡張用の完全なソースコードも付属します。

PHPTRAVELSのライセンス、ご自身のドメイン、そして在庫の仕入れ先が最低ひとつ必要です。自社で契約した物件、チャネルマネージャー、または宿泊卸業者とのサプライヤー契約のいずれかです。まずはライブデモで一連の流れをご確認ください。