Creating a waiver form & Database

Hi Everyone. I only have basic knowledge and currently use Gravity as a booking form for my business that works well. However, I would like to set up a new online waiver for my business, that also doubles as an RSVP style guest list for my party hosts. I do not like the current waiver software platforms I have tested, and hope to see if I can build something within Gravity with add on modules. Just wondering if anyone can recommend the add on modules, I need to purchase to complete my task.

Creating the basic waiver with personal details and signing is not a huge issue. However, I need to be able to group waivers to a particular party, ideally allowing the party host to have a list of names emailed to them as they sign up. That way the party host knows who has signed up. I am happy to add each party when they make the initial booking, e.g John’s 10th Birthday Party. However, to link a particular guest to that party I would like a random 4 digit code (or I could make up) that must be entered at the start of the form to link to the relevant group. So if they enter 1234 they see that this is for John’s 10th Birthday Party. Using this process rather then a particular weblink , will make the process easier as customer mainly users our standard paper invite. That way the guest simply goes to my website and just needs the code for the party.

From the backend, I need a simple way to add new party’s as we could have 10 new parties to add per week. Also needs a simple interface to view party and who’s signed on the party day. I’d also like to use the information entered to have a database on players for marketing and market segmentation. I would need the actual signed form stored in a safe manner, most likely PDF file. Potentially emailing the signed PDF to the customer that signs for their record.

If there was a way for the form to remember past players rather then entering all the details again, that would be a bonus. We often have repeat customers, but a new form has to be signed and allocated to the new party each time.

Please tell me if I am asking to much to do this withing Gravity and an add on module(s) ? Appreciate any help to steer me in the right direction.