🎯 The challenge (literally)
TopSeeker runs outdoor escape games, story-driven expeditions and team-building events played on mobile phones. Their seasonal challenges need participants to pre-register, and the final dates get fine-tuned based on how much interest players show.
The goal: Let people register in advance for planned challenges and automatically email them based on their interest.

🧩 How we solved it
We used the Contact Forms add-on for Shoptet, extended with automation in Google Apps Script.
1️⃣ Webhook: secure sign-up intake
- Every submitted form is saved to the Data sheet
- The system automatically adds new columns as the form changes
- Records are marked as "new"
2️⃣ Confirmation with attachments
Every participant gets:
- A thank-you email (immediately, from the add-on)
- A second email with the documents attached (terms and conditions, GDPR, game rules) as PDFs
The status changes to "Email sent" → no duplicates.
3️⃣ Notification of the challenge date
Once voting closes, the admin marks participants YES/NO:
- YES → they receive the date and a link to complete their registration
- NO → alternative text, but still the option to join
The email contains:
- 📅 Date
- 📍 Start location
- ⏱ Time
- 🔗 Link to the product with the final date
Status = "Date sent"
⚙️ The whole flow in one diagram
Form → Webhook
↓
Sheet = "new"
↓
Automatic confirmation + attachments
↓
Date confirmed?
↓ (manually)
Send info: YES / NO → Status updated
↓
Pre-registrations complete and real registrations begin
🚀 What it delivered
| TopSeeker | Players |
|---|---|
| Short response time | Instant confirmation |
| Less load on support | Documents right at hand |
| A clear overview in the data | A clear date + a link to the event |
| Automated processes | A professional experience from the start |
| Scalability | No lost emails |
🧠 Why this matters for other online stores
"Contact Forms aren't just about collecting data. With smart automation they can even stand in for a booking system."
- They adapt to any sales process
- They work great with backends like Google Sheets or a CRM
- Communication runs automatically based on the data