Skip to content
English
  • There are no suggestions because the search field is empty.

How Online Booking Requests Are Processed

Source: event_requests_controller.rb, event_request.rb

  • The create endpoint skips session validation because it is a public-facing endpoint accessible without login
  • The company is identified via a composite token: the last 6 characters and the remaining prefix are used together to look up the company
  • Phone numbers have whitespace stripped on input; a HubSpot contact request is logged for tracking
  • Mechanic schedule is validated before confirming the requested booking time slot
  • The clear old requests function is NRMA dealer-specific and destroys ALL booking requests across the company and its sub-companies
  • Deleting a booking request also cleans up any associated VV Garage appointment
  • Vehicle body type is validated against the company's configured body groups; invalid types are rejected
  • Either an email or mobile number is required; and either a company name or a full customer name (first + last) is required
  • VV Garage-originated requests skip the auto-matching logic by design to avoid incorrect customer/vehicle linking

Support scenarios

  • "A customer says they submitted an online booking but we don't see it" → Check that the company token in the booking URL is correct (composite of last 6 chars + prefix). Also verify the customer provided either email or mobile, and either company name or full name — missing these will cause a silent rejection.
  • "All our online booking requests disappeared" → If the company is an NRMA dealer, the clear old requests function destroys ALL requests across the company and sub-companies. This is aggressive by design for NRMA workflows.
  • "The customer's vehicle body type was rejected" → The body type must match one of the company's configured body groups. Check the company's body group settings and ensure the online form options align.
  • "VV Garage online bookings aren't matching to existing customers" → This is by design. VV Garage requests skip auto-matching to prevent incorrect linking. The customer/vehicle must be matched manually.