Skip to main content
AnyVet
Back to docs

Services

Use the Shared Service Booking Flow

The common booking modal and status flow used by Hotel, Grooming, and Pet Taxi.

Section: Services
Updated: 2026-03-09
Tags: services, booking, hotel, grooming, pet-taxi

Use the Shared Service Booking Flow

/hotel, /grooming, and /pet-taxi look like separate products, but they share the same booking modal and core reservation logic. Customer selection, pet selection, booking details, add-on services, summary, and checkout follow the same structure.

Services That Use This Flow

  • HOTEL
  • GROOMING
  • PET_TAXI

The labels differ by service, but the core reservation states and modal steps are shared.

Read the Main Reservation States

BOOKED

The reservation exists, but the real service has not started yet.

CHECKED_IN

The service has started.

  • Hotel: actual stay is in progress
  • Grooming: work is in progress
  • Pet Taxi: transit is in progress

CHECKED_OUT

The service termination process is complete. Review add-on services and downstream billing around this moment.

CANCELLED

The reservation was cancelled. In most cases, creating a fresh reservation later is safer than trying to restore the old one loosely.

Warning: Once a reservation is CHECKED_OUT or CANCELLED, any later change can affect payment, receipt history, and operational traceability.

Shared Modal Steps

Step 1. select-customer

Choose the customer first. A wrong customer selection breaks the rest of the reservation and billing context.

Step 2. select-pet

Choose the pet under that customer. Always confirm both name and HN when the customer owns more than one pet.

Step 3. booking-details

Typical booking details include:

  • start datetime
  • end datetime or checkout datetime
  • assigned resource
    • Hotel: room
    • Grooming: station
    • Pet Taxi: vehicle / dispatch resource
  • assigned staff or groomer
  • comment
  • pickup and dropoff address for Pet Taxi

Step 4. add-on-services

Add optional services. This stage uses branch service master data, so names and prices come from operational service configuration.

Step 5. summary

Review the booking summary.

  • Hotel: check-in, checkout, length of stay, room
  • Grooming: booking time, station, assignee
  • Pet Taxi: booking time, vehicle, pickup / dropoff

Step 6. view / edit

Created reservations can be reopened in view mode and edited through the same modal family.

Step 7. checkout

At service completion, review additional billable items again before confirming checkout.

Service-Specific Input Differences

Hotel

  • built around duration-based reservations
  • uses both check-in and checkout as real stay timing
  • needs room conflict review before confirmation

Grooming

  • time-slot precision matters more than duration
  • station and groomer confirmation are the critical fields
  • the code still contains a photo-upload step, but it is not currently mandatory in the main checkout path

Pet Taxi

  • pickup and dropoff addresses are core operational data
  • vehicle resources are handled similarly to room-style resources in the board

Shared Operating Rules

  • confirm customer and pet mapping first
  • review add-on services again after the service scope becomes clear
  • cancel reservations before start whenever possible
  • when editing details, review time, resource, and assignee together to reduce conflicts

Current Implementation Notes

  • the new-booking button opens the shared modal
  • view and edit are part of the same modal family
  • grooming photo-upload exists in code but is not a required completion step in the current main flow