Creating a form for hotel check-in

Hello there, I would like to ask if it is possible to create a form for a hotel guest during check-in. So the basic fields like personal details, uploading photo of self and passport, agreeing to terms and Submit.

I have created a form, however the phone number & email fields did not have restrictions in keying in the data. So i could type random words and it could still ‘SUBMIT’.
I could not find the function to submit photo and agree to terms…

Hope someone can help me with some info.


1 Like

Not sure if the phone & email fields validate in the right way, just to make sure, did you try “phone entry” and “email entry” components instead of “text component”?

The “submit photo” is done by the component “image picker”.

The “agree to terms” can be done by a combination of:

  • A link to where you store your terms (or if it’s not too long you can probably make it a text component right on that screen)

  • A checkbox that requires the user to tick

Hi ThinhDinh, Thank you for your help.

Yes i used email entry and phone entry components. I can type just a few random letters for both fields and SUBMIT. How do i make it restricted to the specific field?

Thank you:)

Thank you, the image picker work perfectly.
Is it also possible to ‘ADD’ guest forms for check-in? So 1 guest can fill ‘add’ guests and fill in their forms and submit.

Seems like it’s not validating the right way then, I have seen this issue popped up a few times and at the moment I don’t think there’s a fix for it.

Regarding the add function, I think you can do that by creating a new tab that points to your user profiles tab and enable the “Add” option in the settings.

As always, it is better to avoid formulas in Google Sheets to avoid lag, but there are validation formulas in GS you could use.

Have you tried isemail() for email addresses? I believe that’s the one but you’d have to check.

There’s might be such a formula for phone numbers or you can find it online or create it?

Using the formulas in GS will only give you validation after the form is submitted, which is not great use experience.

N.B. to my comment above: using the formulas in GS will only give you validation after the form is submitted, which is not great use experience.

Thanks Nathanael, So how do i put in the isemail()? I dont mind giving it a try:)

Column A (for instance): the email addresses
Column B (for instance): arrayformula(isemail(A2:A))

In column B you should see boolean values (true / false).

Create a component (for instance a text or button component that world say “Please enter a valid email address”) with action=none and visibility is “column B is False”.

Again though, the message will only appear after your form would have been submitted, which is not ideal.


I have responded to this validation question a few times recently as there is a way you can prevalidate entry fields and then populate the form submission with those values for the user.


  • Have a page with use entry fields (regular entry fields, not in a form)
  • each field has its own column and a validation column as well. Each validation column will validate it’s respective entry field column
  • once all entry fields have been validated, a form button appears to submit the info, clicking it then opens the form
  • On the form page you then show (in non editable fields) all the information from the previous page as a confirmation (at least that is what it will be from the users perspective) and if all looks good the user hits submit.
  • hidden from user you are using the column component to push the data entered in the previous screen into the form submission for the user.

Only caveat (as mentioned above) is if the validation cannot be done in glide columns then doing it in sheets does cause some minor delay.

In practice I haven’t found this to be too much of an issue though.

If this makes sense and seems usable please let me know if you need a more detailed explanation.


Hi Stewart, thank you for your help. I’m sorry that i’m not familiar with this platform.
Will it be possible for you to explain again, so that i can try my best to follow by looking for the words/items on glide builder app?


I have added quite a few fields to my check-in form. Now i am trying to include a checkbox to agree to hotel rules and terms.

Question: How can i include a link to a page with hotel rules? So user can click to read details b4 agreeing.

Question: I included a signature component. I signed it and submitted a trial. However, the image that came up on my sheets is black signature on black background. How can i fix this?

Thank you

Add a button that have a webview action/view link action and points the value to the link you want them to see.

No current way to fix this as far as I aware.

Helo @Philip_Lim,

Take a quick look at a past conversation I had concerning validating premium codes here. This only validates a single field for validity and non duplication, but the overall process is the same for what you want to do. Feel free to ask any more specific questions you may have!

Hi @Philip_Lim,

Please feel free to check this example out I created. If the flow and function works for you I can share the method behind it.

Valid example codes to use ABC, DEF, GHI, JKL, MNO. Just pick one 3 letter code to use

Used codes will showup as already used, invalid codes show up as invalid (it is case sensitive).

Once a valid code that is not already used is entered you can confirm and submit, then your entered code will be displayed.

Just an example of how user input can be validated prior to accepting it.

1 Like

What’s your color theme? Are you using ‘Match device theme’?

Hello Jeff, Im using the Light theme, default one.
And yes, match device is checked.

Thanks for your help

I can duplicate this. The image looks fine in a signature component, but shows as black on black when viewed as an image.