Skip to main content
Was this helpful?

Enterprise Reservation System For End Customers

Customers use a public booking page that belongs to one organisation. The page shows the services that organisation offers, the times that are actually available, and whether booking requires payment before confirmation.

Time to complete: 5-10 minutes
Difficulty: Beginner

The Public Booking Journey

The booking page is usually shared in a format such as /book/acme-spa. Customers land in the correct organisation automatically because the slug is part of the link.

Step 2: Choose A Service And Resource

Customers can:

  • choose a resource type, such as Massage room or Dining table
  • choose a specific resource when they care which one they get
  • choose Any available when the service matters more than the exact resource

Step 3: Choose A Time Slot

PrimeCal only shows slots that survive:

  • reservation conflict checks
  • resource-level availability rules
  • blocking events from linked staff calendars

This is why a time can disappear between services or resource selections. The availability is real, not cached marketing inventory.

Step 4: Enter Booking Details

The form collects only the customer details needed for the booking workflow. A typical page asks for:

  • name
  • email
  • phone
  • notes

Step 5: Pay Or Confirm

There are three common outcomes:

  • Free booking: no payment is needed and the reservation confirms immediately.
  • Optional payment service: pricing is visible, but payment is not required. The booking can still confirm immediately.
  • Payment required: PrimeCal creates the reservation as pending_payment and shows a payment step before sending the customer to Stripe Checkout. The reservation becomes confirmed only after Stripe reports success.

Step 6: Review Confirmation

After success, the customer sees a confirmation page and receives any existing notifications configured in PrimeCal's notification and automation modules.

If payment fails or the customer closes Checkout, the booking page can return to a retryable pending-payment state instead of silently dropping the reservation.

Screenshot References

StepFileCaption
Details formdocs/assets/user-guide/enterprise-reservation-system/customer-booking-details-form.pngCollect only the customer information needed to complete the reservation.
Payment stepdocs/assets/user-guide/enterprise-reservation-system/customer-payment-pending-step.pngThe booking page keeps the slot reserved while it asks the customer to continue to secure payment.
Checkout redirectdocs/assets/user-guide/enterprise-reservation-system/customer-stripe-checkout-redirect.pngPayment-required bookings leave PrimeCal briefly for Stripe Checkout and return after the result.
Confirmationdocs/assets/user-guide/enterprise-reservation-system/customer-booking-confirmation.pngThe final state should make it obvious whether the booking is confirmed or still waiting for payment.

Troubleshooting

I completed the form but the reservation is not confirmed yet

If the service requires payment, the reservation stays in pending_payment until Stripe confirms success. Closing the checkout page early can leave the booking incomplete.

I cannot see the time slot I saw a moment ago

Someone else may have taken it, or the slot may have become blocked by a linked staff calendar event.

The page shows a price in a currency I did not expect

Pricing comes from the organisation's resource-type configuration. Customers do not choose the currency in the public form.