본문으로 건너뛰기

직연동 레거시 채널 오픈

channel_type=cms 채널 중 레거시 직연동 채널(Booking.com, Agoda, Expedia, Trip.com 등)의 오픈 흐름입니다. 플러스 채널과 달리 채널 설정과 매핑 단계가 필요합니다.

매핑 사전 단계 분기

채널 메타의 requires_cms_authorization 값에 따라 매핑 사전 단계가 갈립니다.

requires_cms_authorization매핑 사전 단계예시 채널
false채널 측 숙소 정보 조회 — GET /gds/vendor/channels/{channel_id}/properties/{channel_property_id}부킹닷컴, 아고다, 익스피디아, 트립닷컴
trueOAuth 인증 — GET /gds/vendor/channels/{channel_id}/authorization · 구현은 에어비앤비 인증 구현 참고에어비앤비

단계별 흐름

  1. 채널 탐색GET /gds/vendor/channels
  2. 채널 ON 신청POST .../channels/{channel_id} { "request_type": "on" }
  3. 매핑 사전 단계 — 위 분기 표에 따라 채널 측 숙소 정보 조회 또는 OAuth 인증
  4. 채널별 부가옵션 설정PATCH .../channels/{channel_id}/settings (RFC 7396 Merge Patch)
  5. 매핑PATCH .../mappings (숙소 → 객실 → 요금제)
  6. 요금·영업일 전송POST .../ari (type: overnight)
  7. 재고 전송POST .../ari/avails

체크리스트

  • 채널 메타에서 requires_cms_authorization 값 확인 후 매핑 사전 단계 분기
  • 채널 측 숙소 정보로 channel_roomtype_id / channel_rateplan_id 후보 확보
  • 숙소 → 객실 → 요금제 매핑 완료
  • 에어비앤비: 요금제 개념이 없어 요금제 매핑 시 0으로 매핑
  • ON 신청 후 processing_mode 분기 처리 (auto_approve / external_review)
  • POST .../ari 요금·영업일 전송 완료 (type: overnight)
  • POST .../ari/avails 재고 전송 완료 (객실타입 단위 통합 재고 · 최대 730일)
  • 재고는 룸온리(객실타입) 기준 — package 재고를 standalone에 맞추어 전송
에어비앤비 요금제 매핑

에어비앤비는 요금제 개념이 없으므로 요금제 매핑 시 channel_rateplan_id0으로 매핑합니다.

채널 오픈 신청 요청 바디

{
"request_type": "on",
"channel_property_id": "CP-001",
"note": "채널 담당자와 협의된 오픈 요청입니다."
}
필드설명
request_typeon (오픈) / off (중지)
channel_property_id채널 측 숙소 ID (선택). processing_mode=external_review 채널(예: 부킹닷컴) 신청 시 함께 전송 가능. request_type: "on" 에만 허용되며, off에 전송하면 400. 같은 채널에서 다른 숙소가 이미 사용 중인 ID면 409. 제출 시 신청 시점에 숙소 매핑에 반영됩니다.
note신청자 비고 (선택, 최대 16,000자). on·off 모두 허용되며 운영자가 확인할 전달 사항을 기입합니다.

채널별 인원추가비용 설정

채널별 부가옵션은 채널 설정 엔드포인트(RFC 7396 Merge Patch)로 설정합니다. 인원추가비용은 채널마다 지원 여부와 설정 방법이 다릅니다.

채널인원추가비용설정 방법
익스피디아미지원
부킹닷컴미지원
트립닷컴지원숙소 단위 설정의 pricing_modelOBP(Occupancy Based) / Standard(Per Room). OBP인 경우 숙소 settings.extra_adult_price가 요금에 포함됩니다.
아고다지원인원수별 금액 전송(Occupancy Based). 기준 인원 초과분에 대해 인원수에 해당하는 금액을 채널로 전송하며, 숙소 settings.extra_adult_price가 포함됩니다.
에어비앤비지원객실 단위 설정 시 숙소 settings.extra_adult_price가 자동 반영됩니다.
경고

객실 단위 채널 설정(.../roomtypes/{vendor_roomtype_id}/channels/{channel_id}/settings)은 에어비앤비 전용입니다. 다른 채널에서 호출하면 에러가 발생합니다.

부모 요금제 (channel_parent_rateplan_id)

GET /gds/vendor/channels/{channel_id}/properties/{channel_property_id} 응답의 rateplans object에 부모 요금제 ID가 반환됩니다.

  • 해당 요금제는 연결은 가능하나, 별도 요금을 전송해도 채널에 전송되지 않습니다
  • 요금은 channel_parent_rateplan_id가 가리키는 부모 요금제 요금을 기준으로 자동 변동합니다
  • 지원 채널: 부킹닷컴 · 아고다

채널 오픈 조건 검증

검증 항목 전체는 플러스 채널 오픈 가이드와 동일합니다.

레거시 채널 콘텐츠 검증 완화

레거시 채널(requires_cms_authorization=false)은 채널 오픈 시 숙소 대표 이미지 · 카테고리 · 객실 이미지 검증을 하지 않습니다.

엔드포인트

경로 prefix는 /gds/vendor 입니다.

채널 탐색 · 인증

메서드경로설명
GET/channels전체 채널 메타
GET/properties/{vendor_property_id}/channels숙소별 오픈 가능 채널·신청 상태
GET/channels/{channel_id}/properties/{channel_property_id}채널 측 숙소 정보 · 응답에 channel_parent_rateplan_id 포함
GET/channels/{channel_id}/authorizationOAuth 인증 URL — requires_cms_authorization=true 채널 전용 (구현 가이드)

채널 매핑

범위메서드경로
숙소GET · PATCH/properties/{vendor_property_id}/channels/{channel_id}/mappings
객실GET · PATCH.../roomtypes/{vendor_roomtype_id}/channels/{channel_id}/mappings
요금제GET · PATCH.../rateplans/{vendor_rateplan_id}/channels/{channel_id}/mappings

채널 오픈 신청

메서드경로설명
POST/properties/{vendor_property_id}/channels/{channel_id}ON·OFF 신청
GET/properties/{vendor_property_id}/channels/{channel_id}신청 상태·히스토리 조회