0% found this document useful (0 votes)
9 views3 pages

Bubble.io Booking System Guide

bubble gudie

Uploaded by

kumail.bubbledev
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views3 pages

Bubble.io Booking System Guide

bubble gudie

Uploaded by

kumail.bubbledev
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Bubble.

io Full Booking System – Developer


Implementation Guide

This guide provides a complete, role-based implementation plan for building the booking system
entirely in [Link], without Airtable or Zapier. It includes user roles, page-by-page details,
database schema, automation rules, and a recommended development sequence.

1. User Roles & Responsibilities


Ambassador:
- Creates bookings for events.
- Can view own bookings and commission earnings.
- Cannot approve, send invoices, or mark payments.

General Manager (GM):


- Views bookings for their assigned venue.
- Can approve bookings, send Stripe invoices, and mark bookings as paid.
- Can manage the venue calendar.

Admin:
- Full system access.
- Manages all bookings, users, commission rates, and reports.
- Controls venue settings and email routing.

2. Pages & Functionality


Login Page:
- Common login for all users.
- Role-based redirect after login.
- Forgot password feature.

Booking Form (Ambassador Only):


- Ambassador name auto-filled.
- Customer info (Name, Email, Phone).
- Venue selection.
- Event Type dropdown with conditional Philanthropy option.
- Event Date & Time picker.
- Booking Type selection with conditional Prepaid Tab/Tip fields.
- Rental Fee field.
- Philanthropy-specific fields when applicable.
- Submission creates booking, generates Event ID, sends notification email, and adds Google
Calendar event (gray).

Ambassador Dashboard:
- Displays bookings created by the logged-in ambassador.
- Shows Event ID, Venue, Status, Date, Tip, and Commission.
- Includes filters and summary statistics.

GM Dashboard:
- Displays bookings for GM's venue.
- Allows approval, invoice sending, and marking as paid.
- Updates Google Calendar colors (yellow, green).
Admin Dashboard:
- Displays all bookings across all venues.
- Can approve, reject, or mark paid.
- Manages ambassadors, venues, commission rates, and email routing.
- Can export data.

Booking Detail Page:


- Shows all booking fields, including internal-only.
- Provides action buttons for GM/Admin.

Reports Page (Admin):


- Shows KPIs with date filters.
- Allows CSV export.

Settings Page (Admin):


- Manages ambassadors, venues, event types, commission %, and email routing.

3. Database Schema
Data Type: Booking
- Ambassador (linked to User)
- Customer Name (text)
- Customer Email (email)
- Customer Phone (text)
- Venue (option set)
- Event Type (option set)
- Event Date/Time (date)
- Special Requests (text)
- Booking Type (option set)
- Prepaid Tab Amount (number)
- Prepaid Tip Amount (number)
- Rental Fee (number)
- Drink Special Price (number)
- Donation Per Drink (number)
- Status (option set)
- Event ID (number)
- Payment Received? (yes/no)
- Paid Date (date)
- Signed Contract URL (file/text)
- Payment Exception Approved? (yes/no)

Data Type: User


- Name (text)
- Email (email)
- Role (option set: Ambassador, GM, Admin)
- Related Bookings (list of bookings)

Option Sets:
- Ambassador Names
- Venues
- Event Types
- Booking Types
- Statuses
- Roles
4. Automations (Trigger → Action)
On Booking Submission:
- Send email to GMs/managers.
- Add Google Calendar event (gray).

On Contract Signed (DocuSign Webhook):


- Update Status to Signed.
- Notify GMs.

On GM Approval:
- Create Stripe invoice.
- Update Calendar event to Yellow.

On Payment Confirmed (Stripe Webhook):


- Update Status to Confirmed.
- Update Calendar event to Green.
- Send confirmation email.

24 Hours Before Event:


- Send reminder email to customer & managers.

1 Hour After Event:


- Send thank-you email from GM.

Weekly Summary (Friday 10 AM):


- Send statistics email to all managers/admins.

Monthly Export (1st of Month):


- Generate and send CSV with KPIs.

5. Development Sequence
1. Create Option Sets & Data Types in Bubble.
2. Build Login page with role-based redirects.
3. Build Booking Form with conditional logic.
4. Set up Backend Workflows for status changes.
5. Integrate Google Calendar API.
6. Integrate Stripe API with webhooks.
7. Integrate DocuSign API with webhooks.
8. Build Ambassador Dashboard.
9. Build GM Dashboard.
10. Build Admin Dashboard.
11. Build Reports & Settings pages.
12. Test the full booking flow from submission to thank-you email.
13. Launch and train users.

Common questions

Powered by AI

The system manages the entire event lifecycle efficiently, starting with booking submission, where an Ambassador fills a Booking Form and the system generates an Event ID, sends notifications, and creates a Google Calendar event in gray . Following submission, contracts can be signed and updated through DocuSign integrations, and upon GM approval, invoices are generated using Stripe and calendar events are updated to yellow . Payment confirmations further update calendar events to green, signifying confirmed bookings . Pre-event reminders are sent 24 hours before, and a post-event thank you email is sent one hour after the event . This comprehensive workflow from submission to follow-up ensures all stakeholders are informed and actions are automated, facilitating smooth event management and operational efficiency.

The automation workflow employs specific triggers to initiate various actions for managing booking status changes. Upon booking submission, an email is sent to GMs/managers and a Google Calendar event is created in gray . When a contract is signed, via a DocuSign Webhook, the status updates to 'Signed' and GMs are notified . GM approval triggers Stripe invoice creation and updates the calendar event to yellow . Payment confirmation, through a Stripe Webhook, changes the status to 'Confirmed', updates the calendar event to green, and sends a confirmation email . These automated transitions ensure efficient updates across the system, enhancing accuracy and timeliness in event and booking management.

The system enhances operational efficiency and user experience through its role-based access and dynamic page functionalities. Role-based redirects after login direct users to appropriate dashboards and functionalities, ensuring streamlined access and relevance . The use of conditional logic in forms like the Booking Form caters specifically to user input scenarios, providing a tailored experience . Automated workflows and integrations like Google Calendar for scheduling, Stripe for payments, and DocuSign for contracts significantly reduce manual intervention, delivering smooth transactional processes . Scheduled communications such as reminders and thank you emails keep stakeholders informed and engaged, improving both the operational flow and user satisfaction with timely, relevant information dissemination . These design choices collectively result in a system that is intuitive, efficient, and aligned with user and operational needs.

The system features a common login page for all users with a role-based redirect mechanism after login . This ensures that users are directed to functionalities specific to their roles, maintaining secure and appropriate access. Each user role has set permissions for accessing specific pages and functions which include a Booking Form page for Ambassadors, Dashboards for GMs and Admins, and other admin-exclusive pages like Settings and Reports . This role-specific access framework contributes to the secure handling of functionalities by restricting access based on user privileges.

The system employs a series of scheduled automations for notifications and reporting. A reminder email is sent 24 hours before an event to customers and managers . A thank you email is dispatched an hour after an event from the GM . Additionally, every Friday at 10 AM, a weekly summary email containing statistics is sent to all managers and admins . On the 1st of each month, a CSV export containing key performance indicators (KPIs) is generated and sent . These scheduled operations aim to maintain a consistent flow of communication and tracking of performance metrics within the system.

The development sequence begins with creating Option Sets and Data Types in Bubble to establish the foundational database structure . It continues with building the Login page featuring role-based redirects to manage user access . Subsequent steps include the construction of the Booking Form with conditional logic, setting up backend workflows for status changes, integrating Google Calendar, Stripe, and DocuSign APIs, and building dashboards for Ambassadors, GMs, and Admin . Finally, Reports and Settings pages are created, and a full test of the booking flow is conducted before launching and training users . This order is significant as it ensures that foundational database and functional requirements are established before more complex integrations and user interface elements are developed, thereby minimizing potential issues related to dependencies and facilitating a structured rollout of system capabilities.

The database schema employs specific data types and relationships to ensure data integrity and manage users effectively. It consists of data types such as Booking and User, where each Booking contains details like Ambassador, Customer Name, Venue, Event Type, Date/Time, and status-related fields . User data types include fields like Name, Email, Role, and a list of related bookings, maintaining structured and relational data handling . Option sets for Ambassador names, Venues, Event Types, etc., ensure data consistency and mitigate redundancy . Moreover, role-based permissions enhance data security by controlling user access according to defined roles, further supporting data integrity across various system operations.

The Ambassador's Booking Form auto-fills the ambassador's name and requires entering customer information including name, email, and phone number . The form includes venue selection, an event type dropdown with conditional Philanthropy options, and event date and time pickers . Booking type selection triggers conditional fields for Prepaid Tab and Tip amounts . When philanthropic events are selected, additional philanthropy-specific fields are shown . Upon submission, the booking is created, generating an Event ID, sending a notification email, and adding an event to Google Calendar as a gray placeholder . This setup leverages conditional logic to customize the form dynamically based on user selections.

In the Bubble.io booking system, the roles are defined as Ambassador, General Manager (GM), and Admin, each with specific responsibilities and interactions. Ambassadors can create bookings for events, view their own bookings and commission earnings, but cannot approve bookings, send invoices, or mark payments . General Managers can view bookings for their assigned venue, approve bookings, send invoices via Stripe, mark bookings as paid, and manage the venue calendar . Admins have full system access, manage all bookings, users, commission rates, reports, control venue settings, and email routing . These roles enable a structured flow of operations within the system whereby each role interacts with different system functionalities according to their permissions.

The integration of external APIs serves crucial purposes within the booking system. The Google Calendar API is used to add events upon booking submission and to update event colors based on approval and payment status changes, enhancing event management visibility . Stripe's API integration facilitates the automatic creation of invoices upon GM approval and updates payment confirmation, providing seamless financial transactions . The DocuSign API is integrated to manage contract signing, where a signed contract updates the booking status and dispatches notifications to GMs . These integrations automate key processes, ensuring that the system operates efficiently and keeps stakeholders informed without manual intervention.

You might also like