This an example of what Sabre Hospitality does in a nutshell. A hotel pays Sabre a fee to have access to an online booking engine, which is created and maintained by Sabre. The hotel then enters all of the pertinent information, room descriptions, locations, amenities, fees, etc. that describes the properties that the hotel will be offering.
The hotel then creates some type of booking widget and places that on their hotel website, facebook page, any place really. The booking widget will generally send to the booking engine a list of parameters of start time, end time, number of guest along with hotel id, hotel chain id, things of that nature in a post.
Once the post is received, the booking engine takes over and offers up rooms that match the submitted information. The engine then acts as as shopping cart and accepts the payment for the reservation.
On the back end, reports are generated and the open room inventory is monitored and updated via the booking engine. A hotel can now log in, see what reservations have been created and the process proceeds from there.
I would assume that most other commercial booking sites would work in the same way in that they contact with hotels, airlines, etc. and offer up their information as their booking information.
Hope this helps some and good luck in your project.