All your guests, no matter where the source of the booking is, will receive the Booking Confirmation Email (if it is activated). When they click on the Confirm Booking button, they are directed to a page where they should fill the fields you’ve set in the Preferences > Organsation Configuration -> Customise Booking Process. At the end of the form, they are asked to provide their approximate Arrival and Departure Times. If the timing is between your Earliest Possible and Free Check-in Period, they are notified that they have to pay extra (which you can set in the Organisation Configuration). If the chosen check-in/ check-out time is not in that period, they will receive a message informing them that they need to change the arrival/ departure time as their current request is not possible. This is true for the Departure Time too. They can be charged for the time between the Latest Free Check-Out time and Latest Possible Check-Out Time.
If they confirm the form, the amount will be added to their invoice and they will be asked to pay.