Wordpress Booking Forms
To construct a booking form in wordpress.com is relatively easy. In keeping with the Contact Form (which I believe is a block in its own right), a booking form will use the "form" block element and you will need to specify the input fields to your requirements.
The Contact form is probably a good place to start to see what is going on as it is relatively simple and only contains a few fields: The Name, the Email and the Message. The Name and the Email are required fields and the Email field has built-in verification that a valid, or correctly formatted email address is entered before the Sumbit button is pressed and the message sent back to the webmaster.
A booking form can also use the same Email field, I hope that this is in the Block Editor as a standard item to add to a form.
My form building experiences
I have constructed many of these forms and I have also constructed my own using PHP coding directly. The reason I say I hope that some of the functionality of the form elements are are "standard" is that it is a non-trivial task to verify the data entered into a field.
Setting a flag when agreement to terms and conditions are read
My example of this technique still requires work. The contents of the scrolling text area seems to effect whether the technique works. This seems to the case on my page where I discuss that Edge was the cause. edge_breaks_scrollHeight.html#broken
Data Protection
Data Protection issues need to be addressed when you are accepting communications via your web-based forms. Email addresses will be captured and you may have a policy that governs their storage and use.