|
message CancelBookingRequest { |
|
// product, *exactly* as used with CreateReservation request. Mandatory. |
|
io.bokun.inventory.service.common.grpc.BokunProduct bokunProduct = 1; |
|
|
|
// Exactly as returned by io.bokun.inventory.common.api.grpc.SuccessfulBooking::bookingConfirmationCode. Mandatory. |
|
string bookingConfirmationCode = 2; |
|
} |
There is a possibility that no confirmationCode returned from external system when createAndConfirmBooking() method invoked in Inventory Plugin. It happens when connection interrupted or external server/app goes offline before responding. The booking registered either way on Bókun side (because it is already a payed & confirmed booking).
When cancellation requested, the ID it contains will be a Bókun-generated UUID, therefore the external system can't find the booking to cancel.
Suggestion: the CancellationReqest should contains more details to indentify the booking (ex. platformId, externalSaleId etc.). These information probably saved on the external system side too and can be extracted to make the cancellation happen.
inventory_api/src/main/proto_service/booking_service.proto
Lines 111 to 117 in c704cd9
There is a possibility that no confirmationCode returned from external system when createAndConfirmBooking() method invoked in Inventory Plugin. It happens when connection interrupted or external server/app goes offline before responding. The booking registered either way on Bókun side (because it is already a payed & confirmed booking).
When cancellation requested, the ID it contains will be a Bókun-generated UUID, therefore the external system can't find the booking to cancel.
Suggestion: the CancellationReqest should contains more details to indentify the booking (ex. platformId, externalSaleId etc.). These information probably saved on the external system side too and can be extracted to make the cancellation happen.