# Modification and rebooking These operations cover changes to an active car rental booking. Modifications such as pickup or drop-off date and time, location, vehicle type, rate, and rebooking to a different supplier are covered in these operations. **Webhook used:** [PNR_V3](/openapi/webhookeventapi/webhooks/paths/pnr_v3/post) | Step | Operation | Event trigger | Context | | --- | --- | --- | --- | | 1 | `BOOKING_UPDATED` | When the car booking is modified and the same PNR is updated. | A change has been made to the car reservation that is not a cancellation or rebooking. This event type covers all car modifications, including pickup or drop-off date and time changes, pickup or drop-off location changes, vehicle (car type) changes, number of cars changed, loyalty number updates, and total booking amount changes. If a supplier decides to cancel and rebook for a modification then the `BOOKING_UPDATED` event will not be sent. Instead, you'll receive a `BOOKING_CANCELED_BY_TRAVELER` followed by a `BOOKING_CREATED` event. Use the `carPnr > rebookReference` object in the `BOOKING_CREATED` event payload to see the cancelled PNR. **Example 1:** A traveler extends their rental by one day (drop-off moves from March 18 to March 19). The `BOOKING_UPDATED` event is triggered on the same PNR with the updated dates and new total ($220). **Example 2:** A traveler changes the pickup location from the airport to a downtown branch. The supplier cancels and rebooks the reservation with new information. A `BOOKING_CANCELED_BY_TRAVELER` event is triggered for the original PNR, followed by a `BOOKING_CREATED` event for the new PNR with the updated location. **Example 3 (Loyalty added):** A traveler adds their Hertz Gold Plus Rewards membership number to the booking. The `BOOKING_UPDATED` event is triggered. | | 2 | `BOOKING_REBOOKED` | When the car booking is rebooked to a different supplier or vehicle. | The car reservation has been rebooked. This indicates the vendor confirmation number has changed. > Note: This is distinct from `BOOKING_UPDATED`, which covers modifications to the same reservation. Rebooking can occur when a better rate becomes available for an equivalent vehicle and an agent or traveler manually rebooks to a different supplier. The `rebookReference` object in the payload links the old and new PNRs and may include additional metadata about the rebook. To identify a rebook, compare the `vendorConfirmationNumber` between the latest and previous PNR versions. If they differ, the booking has been rebooked. You can also check the `rebookReference` object for cancelled PNR IDs and the new rebooked PNR ID. **Example:** A traveler booked a car at $55/day with Hertz. A lower rate of $45/day becomes available for an equivalent car with Avis. The TMC agent identifies this as a cost-saving measure and rebooks at the better rate, saving $30 over 3 days. The `BOOKING_REBOOKED` event is triggered with a new confirmation number. | ## Modification and rebooking flow diagram ```mermaid flowchart LR subgraph modifications["Modifications and rebook"] A(["Confirmed car
booking"]) --> B{"Type of
change?"} B -->|"Modifying same PNR"| C["BOOKING_UPDATED
―――――――――――
Dates, locations, car type,
rate, or loyalty changed
on the same PNR."] B -->|"Cancel and rebook"| D["BOOKING_CANCELED_
BY_TRAVELER

―――――――――――
Old PNR cancelled
as part of modify flow."] D --> E["BOOKING_CREATED
―――――――――――
New PNR created with
updated details."] B -->|"Manual rebook
(better rate)"| F["BOOKING_REBOOKED
―――――――――――
The confirmation number or supplier is changed."] end style A fill:#f0f0f0,stroke:#999 style C fill:#2196F3,color:#fff style D fill:#F44336,color:#fff style E fill:#4CAF50,color:#fff style F fill:#2196F3,color:#fff ```