Hi @clauddiu. I've worked on such things before. There is no 'simple' booking system. It's a complex problem to solve, and generally no two people want their system to work the same. Every hotelier has their own ideas about booking, packages, specials, pricing, etc.
The solution I built, many years ago, on top of ubercart for Drupal, uc_hotel had the following: .. well you know, it's a long list, probably best to just look at it here.
To save you a click, here's some of the important bits: Each room type can be assigned: 1 base rate, 1 rate modifier and/or any number of available occupancy modifiers. Occupancy modifiers are established for adults or children, and adjust the price of a room each night of a stay by a value when the total number of adults or children exceed the modifier's threshold. Occupancy modifiers are applied from the highest threshold downward. Example, you have one adult modifier with a threshold of 2 that adds $10, and one adult modifier with a threshold of 4 that adds $15; If a search is run for 6 adults (and there is a room that will hold that many) adults 5 & 6 each increase the room rate by $15/night, and adults 3 & 4 each increase the room rate by $10/night. So what may normally be a $100/night room would be $150/night for 6 adults with these modifiers. Each night for any room type can have any of (none of, or all of) the following restrictions: Minimum Night Stay, Minimum Occupancy, No Check-In's, No Check-Out's.