Channex (channel manager)
Updated on 2026-08-17
Channex is the channel manager BedFlow uses to sync Booking.com, Airbnb, Expedia, OpenGDS, HRS, Check24 and Weekendesk. Without Channex you would have to maintain availability and prices manually per OTA.
Supported channels (via Channex)
| Channel | Code | Region / type | Default commission | |---|---|---|---| | Booking.com | BDC | Worldwide | 18% | | Airbnb | ABB | Worldwide | 15% | | Expedia (incl. Hotels.com / Vrbo) | EXP | Worldwide | 20% | | OpenGDS | GDS | EU + sub-channels (VIPIO, Charmant Hotel) | 22% | | HRS | HRS | DACH corporate / business travellers | 15% (typical) | | Check24 | CCK | Germany metasearch | 10% (typical) | | Weekendesk | WKD | BE/NL/FR weekend & short-break | 17% (typical) |
Each channel is opt-in per property (RateRule + room mapping in Connections). Source-of-truth for channel metadata lives in App\Enums\Channel.
What does Channex do for BedFlow?
- Availability push: when a room is blocked in BedFlow → within seconds it is also blocked at Booking.com
- Price push: rate changes go to all OTAs automatically
- Booking import: new OTA bookings come in via webhook → BedFlow automatically creates a Booking + Debtor
Setup
- Create a Channex account (staging.channex.io for testing, app.channex.io for production)
- Connect your existing OTAs in Channex (Booking.com extranet credentials, Airbnb, etc.)
- In BedFlow: Settings → Integrations → Channex tab — fill in API key + property ID
- Go to Room types — per room fill in the Channex Room Type ID and per channel the Rate Plan ID
- Activate Channex via the toggle on the Connections page
- Click Synchronise channels at the top right to run a first full sync
Automatic events
- Booking created →
PushRoomAvailabilityJobper affected room - Cell toggled in Room overview → the same job
- Rate changed →
SyncRoomPricesJob - Daily at 06:00: full price sync for all rooms (365 days ahead)
- Daily at 06:30: competitor prices scrape (informational)
Rate limiting
Channex has a rate limit:
- Staging: 1 request / 7 seconds
- Production: 1 request / second
BedFlow's ChannexService throttles automatically. Jobs run sequentially via the --queue=channex worker (not in parallel).
Webhooks (inbound)
Channex sends webhooks to /api/channex/webhook for:
booking.new— new OTA bookingbooking.modified— OTA booking changedbooking.cancelled— OTA booking cancelled
Signature validation via a shared secret in settings.
Check the connection yourself
Not sure everything is set up right? Both checks live right inside BedFlow, at the top right of Settings → Connections:
- Test connection — instantly checks whether the link with the channel manager works and shows how many room types and rate plans were found for your property. If something is off, the notification tells you what.
- Synchronise channels — pushes availability and prices to all connected channels again. You follow the progress in the bar at the top of the page.
First Test connection, then Synchronise channels — if something still does not come through, e-mail support@bedflow.eu.