# Cancel a car booking Cancel an existing car booking and initiate a refund (if applicable). Endpoint: POST /v2/car/pnrs/{pnrId}/cancel-pnr Version: v2 Security: Bearer ## Path parameters: - `pnrId` (string, required) Pnr Id of the booking to be cancelled. Example: "4974a66b" ## Request fields (application/json): - `pnrId` (string, required) The PNR ID of the car booking to be cancelled. Example: "4974a66b" - `customFieldUserResponses` (array) Custom field responses for the booking. - `customFieldUserResponses.fieldId` (string, required) Custom field id - `customFieldUserResponses.fieldName` (string) Name of the custom field - `customFieldUserResponses.armId` (string, required) Arm id which is applicable - `customFieldUserResponses.includeLocations` (array) Enum: "BOOKING_CONFIRMATION_EMAILS", "APPROVAL_EMAILS", "COMPANY_REPORTS", "CONSOLIDATED_ITINERARY_EMAILS" - `customFieldUserResponses.selectedOptions` (array, required) The list of options that are selected by user or auto populated. - `customFieldUserResponses.selectedOptions.name` (string, required) Value of the selection - `customFieldUserResponses.selectedOptions.translatedName` (string) Translated value of the selection - `customFieldUserResponses.selectedOptions.description` (string) Description of the selection - `customFieldUserResponses.selectedOptions.translatedDescription` (string) Translated description of the selection - `customFieldUserResponses.selectedOptions.additionalUserInput` (string) Additional user input - `customFieldUserResponses.selectedOptions.additionalInfos` (array) Actual values of the additional infos - `customFieldUserResponses.selectedOptions.additionalInfoConfigs` (array) Additional info configs for the selected option - `waiveOffInfo` (object) Waive off info. - `waiveOffInfo.waiveOffInfoPerModules` (array) Waive off info per module. - `waiveOffInfo.waiveOffInfoPerModules.moduleId` (string) Module id Enum: "BOOKING", "AGENT" - `waiveOffInfo.waiveOffInfoPerModules.waiveOffFeeReason` (object) Fee waive off reason info. - `waiveOffInfo.waiveOffInfoPerModules.waiveOffFeeReason.reasonCode` (string) Fee waive off reason code. Example: "WA05" - `waiveOffInfo.waiveOffInfoPerModules.waiveOffFeeReason.reason` (string) Fee waive off reason description. Example: "Customer goodwill" - `postPaymentVerificationInfo` (any) - `bookingPaymentDetails` (object) Payment details used for booking. - `bookingPaymentDetails.bookingTravelerPaymentDetails` (array, required) - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments` (array, required) - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.paymentItems` (array, required) - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.paymentItems.itemType` (string) Type of payment item eligible for this fop rule Enum: "SERVICE_FEE", "TRAVEL_TICKET", "SEAT", "BAGGAGE", "EARLY_BIRD" - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.paymentItems.fareComponent` (array) Enum: "BASE", "TAX" - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources` (array, required) - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.paymentSourceId` (string) Unique identifier identifying this payment source. Example: "f49d00fe-1eda-4304-ba79-a980f565281d" - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.rawPaymentSource` (any) - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.postPaymentRedirectionUrl` (string) Url for post payment redirection if payment source navigates user to a third party url Example: "https://mycompany.com/checkout?paymentSourceId=f49d00fe-1eda-4304-ba79-a980f565281d" - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.cvv` (string) CVV associated with associated payment source, if any. - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.amount` (object) Total amount to be charged for specified payment items. - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.amount.amount` (number, required) The numeric value for the amount of money. Example: 510 - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.amount.currencyCode` (string, required) The 3-letter currency code for the money amount (defined using ISO 4217 standard). Example: "GBP" - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.amount.convertedAmount` (number) The converted currency and amount that has been converted (if a currency conversion has been requested). For example, if the call requests that money be sent in a specified currency (because the frontend requested the backend to send money in the user's preferred currency). Example: 715.42 - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.amount.convertedCurrency` (string) The 3-letter currency code for the converted currency (defined using ISO 4217 standard). Example: "USD" - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.amount.otherCoinage` (array) List of the dollar amount in other coinage systems like reward points, cryptocurrency etc. - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.amount.otherCoinage.coinageCode` (string) Payment method Enum: "PAYMENT_METHOD_UNKNOWN", "CREDIT_CARD", "BREX_POINTS", "CASH", "QANTAS_POINTS", "VENDOR_PROGRAM_PAYMENT", "DELAYED_INVOICING", "FLIGHT_CREDITS", "QANTAS_TRAVEL_FUND", "CUSTOM_VIRTUAL_PAYMENT", "FLIGHT_PASS", "MISCELLANEOUS_CREDIT_ORDER" - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.amount.otherCoinage.amount` (number) Example: 1000 - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.amount.otherCoinage.conversionRate` (number) 1 coin in this system equals to how many currency value Example: 0.01 - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.amount.otherCoinage.preferredCurrencyConversionRate` (number) 1 coin in this system equals to how many currency value Example: 0.01 - `bookingPaymentDetails.bookingTravelerPaymentDetails.selectedFormOfPayments.selectedPaymentSources.amount.otherCoinage.otherCoinageMetadata` (any) Metadata to store additional information related to the payment method ## Response 200 fields (application/json): - `confirmationId` (string, required) The cancellation confirmation number. Example: "AU847750750" - `paymentVerificationInfo` (any) ## Response 401 fields (application/json): - `debugIdentifier` (string) Link to debug the error internally. - `errorMessages` (array) - `errorMessages.errorCode` (string) Error code to identify the specific errors. - `errorMessages.message` (string) Message containing details of error. - `errorMessages.errorParameters` (array) Error message parameters. - `errorMessages.errorParameters.name` (string) Parameter name - `errorMessages.errorParameters.value` (string) Parameter value - `errorMessages.errorDetail` (string) More details about the error. ## Response 403 fields (application/json): - `debugIdentifier` (string) Link to debug the error internally. - `errorMessages` (array) - `errorMessages.errorCode` (string) Error code to identify the specific errors. - `errorMessages.message` (string) Message containing details of error. - `errorMessages.errorParameters` (array) Error message parameters. - `errorMessages.errorParameters.name` (string) Parameter name - `errorMessages.errorParameters.value` (string) Parameter value - `errorMessages.errorDetail` (string) More details about the error. ## Response 404 fields (application/json): - `debugIdentifier` (string) Link to debug the error internally. - `errorMessages` (array) - `errorMessages.errorCode` (string) Error code to identify the specific errors. - `errorMessages.message` (string) Message containing details of error. - `errorMessages.errorParameters` (array) Error message parameters. - `errorMessages.errorParameters.name` (string) Parameter name - `errorMessages.errorParameters.value` (string) Parameter value - `errorMessages.errorDetail` (string) More details about the error.