# Built a PMS? Connect your first Booking.com or Airbnb property.

Send availability, rates and restrictions; receive reservations, modifications and cancellations. AI-assisted developers can build a working integration in hours. Going live also requires testing, Channex certification and OTA account authorization. This guide covers the steps that need a property owner or the Channex team.

Human version: https://channex.io/connect-first-property

## 1. Check the fit

Who: You and your developer

Channex supports commercial PMS products and in-house property software. If you are building with an AI coding agent, use this guide to scope the integration and the technical documentation to implement it. Generated code still needs testing, maintenance and certification before production.

There is no minimum property count. The monthly platform fee is $130, plus $7 per connected hotel or $0.50 per vacation rental unit before volume discounts and extras, excluding VAT. A single-property integration still carries the platform fee.

Your PMS needs to maintain availability, prices and reservations, keep API credentials on the server, and handle booking changes and cancellations reliably. If you are unsure whether your system is ready, send the team your property type, channels and supported workflows.

- [Pricing and extras](https://channex.io/pricing)
- [Discuss your integration](https://channex.io/contact)

## 2. Understand who connects what

Who: Developer · property owner · Channex

Your PMS integrates with Channex's API; Channex handles the channel connections. Follow the Channex integration path rather than starting a separate direct API integration for each OTA. The property owner still needs to authorize the connection to their OTA account.

For Booking.com, the property requests Channex as its connectivity provider in the extranet, then the rooms and rate plans are mapped in Channex. For Airbnb, follow the Airbnb account authorization and listing mapping guide. Keep the account owner available for these steps.

This guide connects existing OTA listings. Channex cannot currently create OTA listings or update content such as photos, facilities and amenities. Manage those directly in the OTA extranet; see the limitations and roadmap below.

- [Booking.com connection guide](https://docs.channex.io/channel-mapping-guides/booking.com)
- [Airbnb connection guide](https://docs.channex.io/channel-mapping-guides/airbnb)

## 3. Choose your first integration scope

Who: You and your developer

Start with availability, rates, restrictions and reservation delivery. Map your PMS property, room types and rate plans to their Channex IDs. For a vacation rental, model the inventory your PMS actually sells; do not copy a multi-room hotel example unchanged.

You can create inventory through the API and embed Channex's channel mapping interface in your PMS using a one-time access token. This lets property users manage their connections within your product; OTA authorization and certification still have their own steps.

Messaging and reviews are optional add-ons. Support is channel-specific: the messaging documentation covers Booking.com and Airbnb; the reviews documentation covers Airbnb, Expedia and Booking.com. Check the dedicated API docs for any additional feature you plan to offer.

- [PMS integration guide](https://docs.channex.io/guides/pms-integration-guide)
- [Embed channel mapping](https://docs.channex.io/api-v.1-documentation/channel-iframe)
- [Messaging API](https://docs.channex.io/api-v.1-documentation/messages-collection)
- [Reviews API](https://docs.channex.io/api-v.1-documentation/reviews-collection)

## What Channex doesn’t support yet

Who: Current scope and roadmap

OTA listing creation: Channex cannot currently create listings on OTAs. Create your listings directly on the OTA, then connect them to Channex.

Listing content: Channex cannot currently update listing content such as images, facilities and amenities on OTAs. Manage that content directly in each OTA's extranet.

Reservation changes: A PMS generally cannot change dates or cancel an OTA reservation through Channex. Guests usually make those changes through the OTA where they booked, and Channex delivers the updates to your PMS. Some channel-specific actions are available, such as reporting a no-show to Booking.com.

Channel differences: A supported channel does not necessarily support every pricing option, restriction, messaging or review feature. Check the channel-specific documentation before implementing a workflow.

Listing creation and content management are planned for Booking.com and Airbnb only in 2027. This is a roadmap target, not a guaranteed release date.

- [Discuss your requirements](https://channex.io/contact)

## 4. Prove the flow in staging

Who: Your developer or coding agent

For Claude Code, the Channex integration skill linked below provides implementation guidance. Other AI builders can use this guide, its Markdown version and the API documentation. Review and test generated code against the certification scenarios.

Create a free staging account and generate an API key. Begin with the authenticated read below, then follow Start Integration to create your test property, rooms and rates. The staging environment is separate from production.

Send availability separately from rates and restrictions. Batch changes and use a queue that respects the published rate limits. Test new reservations, modifications and cancellations using the documented test accounts or certification alternatives.

For booking delivery, use the Booking Revisions Feed. With webhooks, fetch the specific revision, save it durably in your PMS, then acknowledge that revision. Also poll the feed as a backup every 15–20 minutes. A webhook HTTP response and a booking revision acknowledgement are separate actions.

Make repeated delivery safe: identify bookings and revisions by their IDs so a retry cannot create another reservation or deduct inventory twice. Recalculate availability from the saved reservation state and send the resulting count. Test recovery after an outage as well as the happy path.

### Your first authenticated request

```sh
# Set CHANNEX_API_KEY to your staging API key in your server environment.
curl --fail-with-body 'https://staging.channex.io/api/v1/properties' \
  --header "user-api-key: $CHANNEX_API_KEY" \
  --header 'Accept: application/json'
```

This reads your accessible staging properties. An empty list is expected before you create any.

- [Channex integration skill for Claude Code](https://github.com/daviesevan-svg/channex-claude-skill)
- [Start Integration](https://channex.io/start-integration)
- [API reference](https://docs.channex.io/api-v.1-documentation/api-reference)
- [Booking revisions](https://docs.channex.io/api-v.1-documentation/bookings-collection)
- [Rate limits](https://docs.channex.io/api-v.1-documentation/rate-limits)

## 5. Complete certification

Who: Your developer and Channex

Production access requires Channex certification. Run the published scenarios through your application, collect the requested task IDs and booking evidence, and submit the certification form linked in the documentation. A live screen-sharing review follows.

The tests cover full sync, incremental updates, restrictions, booking delivery and rate limits. Record any unsupported features in the test notes; the review determines whether the integration is ready. A successful API request alone is not certification.

Arrange a person who can demonstrate the application and explain its update and recovery logic. Confirm the review schedule and production access steps with the team; building an integration in hours does not guarantee production approval in that time.

- [Certification scenarios and submission](https://docs.channex.io/api-v.1-documentation/pms-certification-tests)

## 6. Connect one live property carefully

Who: Developer and property owner

After approval, set up production credentials and inventory mapping. Coordinate the switch with the property owner if another channel manager is already connected. Follow the channel-specific activation instructions; a sandbox connection does not transfer the live property automatically.

Before opening inventory for sale, reconcile future reservations and blocked dates with your PMS so your first availability update reflects existing commitments. Booking.com's guide includes pulling future reservations. Check the corresponding import workflow for each channel, and match imported reservations to existing records to avoid duplicates.

Prepare the required full sync and verify room and rate mappings, currency, prices and restrictions as part of activation. A success response from Channex alone does not establish that every OTA is showing the intended inventory: check channel logs and the OTA's displayed values too.

- [Channel management](https://docs.channex.io/application-documentation/channels-management)
- [Booking.com activation and imports](https://docs.channex.io/channel-mapping-guides/booking.com)

## 7. Keep the connection healthy

Who: Your operations team

Monitor sync errors, unmapped bookings and disconnected channels. Keep failed updates queued for recovery, alert someone who can fix mapping problems, and retain enough context to trace a reservation or inventory change across both systems.

Channex can adjust availability when reservations arrive, while your PMS also sends availability updates. Serialize and reconcile your PMS updates so an older count cannot overwrite a newer reservation state. For example, once the last available unit is booked, a delayed update must not reopen it for sale.

Use the best-practice and webhook documentation to implement recovery. If a channel rejects an update or the inventory does not agree, investigate the channel logs and involve support before assuming the connection is healthy.

- [Best practices](https://docs.channex.io/guides/best-practices-guide)
- [Webhooks and sync errors](https://docs.channex.io/api-v.1-documentation/webhook-collection)
- [Service status](https://status.channex.io/)

Next: [Start Integration](https://channex.io/start-integration) or [talk to the team](https://channex.io/contact).
