Delete items from an existing booking

Workflow description

This workflow is used to remove any items (flights, ancillaries, travellers) from an existing booking.

The booking has to be retrieved first to enable the internal caching.

Then the client has to send an IATA_OrderReshopRQ.

The way that orderItems are removed, is to get so-called “DeleteOffers”. They’re returned in the IATA_OrderReshopRS and have to be accepted in the following IATA_OrderChangeRQ.

After the change, the client will receive an IATA_OrderViewRS, that shows the changed booking, after the items are removed.

The same workflow can be used to cancel passengers. To do this, simply delete all OrderItems, that are associated to the passenger.

Message Flow

../_images/Update_booking_delete_items_reshop.png

IATA_OrderReshopRQ or IATA_OrderChangeRQ?

This workflow solely uses IATA_OrderReshopRQ. The possibility to delete items is also possible in IATA_OrderChangeRQ, but there it is only possible to delete 1 item per request.

In IATA_OrderReshopRQ the client can delete multiple items in one request, therefore the reshop is supported by the API.

If it is desired to use the OrderChangeRQ for the deletion of an item, the naming can be quite confusing. The element for deletion looks like this:

<UpdateOrderItem>
      <DeleteOrderItem>
         <OfferID>OI1234567</OfferID>
      </DeleteOrderItem>
</UpdateOrderItem>

Although the Element, where the item id is stored, is called OfferID, it is possible for the API that an existing orderItemID is selected for deletion here. The confusion here is caused by IATAs ongoing work of transforming the cancel process.