Bookings & Dispatch / Bookings

Editing a booking

The four edit tabs and the live reprice behavior.

Edit on the detail page switches to edit mode with four tabs.

Trip

Vehicle (changing it clamps passengers/luggage/child seats to the new capacity), driver, pickup and drop-off addresses (Google autocomplete), pickup date & time, and the service-aware fields: airline + flight number on airport trips, hours on hourly trips, carry-on bags on airport trips. Distance is read-only — it recalculates automatically when you change an address. The service itself is fixed at booking time.

Passenger

For when the rider differs from the account holder: passenger name, phone, email — plus the special requests text. The account holder's own contact is edited on the Customer record, not here.

Status & Payment

Booking status (with the no-driver-no-completed guard), payment status (Unpaid/Paid/Refunded/Failed), and payment method.

Pricing

Every money field is editable: base fare, extras, fuel surcharge, card surcharge, airport fee, discount, tax, tip. Total is never hand-typed — it's always computed from the fields above, so the math can't drift.

Live recalculation

Once you touch anything, the page keeps itself consistent: address changes re-route and update distance; vehicle, child-seat, hours, payment-method, or distance changes re-run the same server pricing engine the booking form uses, updating base fare, surcharges, and tax. What you see before saving is exactly what the customer-facing math would produce.

Save writes everything at once; Cancel discards. Background refreshes never clobber your in-progress edits.