status: ok or error. RateHawk publishes integration requirements that partners must follow; this page lists how Omnibeds meets each one. RateHawk is treated as a confidential supplier: presenter mode only. The adapter is in lib/suppliers/ratehawk/.
At a glance
Their flow and ours
Booking, step by step
Must do
1
Stay within RateHawk's search limits
Up to 9 rooms, 6 adults and 4 children (aged 0 to 17) a room, 30 nights, and check-in at most 730 days ahead. A search outside these is explained to the agent and never sent.
2
Send the guests' residence on every search
In lower case, from the search’s residence field, else the agency’s default residence, else its country. Searches also send the guests room by room (adults and children’s ages),
language: en and currency: EUR.3
Keep hotel content on our side
Searches return only hotel ids. Content lives in our database, is refreshed on the schedule set in the admin panel (or with Reload now), and is never fetched while a search or booking is running. Hotels not stored yet are loaded right after the search and show from the next one.
4
Show the hotel's rules
RateHawk’s metapolicy (deposits, pet fees, parking, extra beds…) is shown line by line in its own wording, together with its free text about the hotel’s rules.
5
Read the hotel page and prebook before every booking
Never book from a search result: the hotel page gives a fresh
book_hash, and the prebook confirms it.6
Follow the name rules
First and last names of 1 to 50 characters: letters in any script, spaces and the characters
' - , . ’, no digits. No placeholder names, and at least one adult with a real name in every room. Checked in the guest step, before any call.7
Identify the order with a UUID
Our
partner_order_id is a UUID. Cancel, status and lookups all use it.8
Send what the booking form asks for
The agent’s IP address (
user_ip), one fixed agency email (RateHawk’s rule for B2B: not the guest’s), and a phone of 5 to 35 characters (the agency’s, or a placeholder number). When the hotel requires a gender, unknown is sent, which is one of RateHawk’s values.9
Respect each endpoint's limit
Omnibeds remembers what each endpoint’s
X-RateLimit-* headers last said and doesn’t send a call that would certainly be refused. A 429 from RateHawk is still read and explained.