6. Confirmation#

In this step, the supplier gets notified that the payment for this booking has been correctly processed and the confirmation from their side is requested. As the Amadeus Discover Booking Flow does not currently handle payments, the Integrator System is responsible for implementing the payment process and invoke the following endpoint on payment success.

confirmBooking#

Returns a confirmation of the booking. Due to privacy regulations like GDPR, the data transmitted in step 5 can not be stored for an unlimited time, so the Consumer System should ensure the booking data is still valid (by calling the getBooking endpoint, described in the following step) before asking for a confirmation.


Path

POST /booking-flow/v1/bookings/:bookingId/confirm


Input

Request Header

Mandatory

Example

Format

Usage

externalClientId

No

ABCDEF

Alphanumeric, 255 maximum length

A string that the CustomerSystem can use to associate a booking to a specific traveler

Output body example
{
    "id": "5ce38d8e-1974-4d44-9cb4-2b8be380e32f",
    "availabilityDateTime": "2023-12-19T12:00+01:00[Europe/Paris]",
    "resellerRef": "MY_COMPANY",
    "status": "PENDING_CONFIRM",
    "paymentStatus": "PAID",
    "creationDate": "2023-12-14T09:11:08.998522Z",
    "updateDate": "2023-12-14T09:11:21.986169109Z",
    "availability": {
        "id": "b5b48ed0-c06a-4eef-a008-cd220033c0c6",
        "availabilityDate": "2023-12-19",
        "availabilityOptions": [
            {
                "label": "Ticket Type",
                "level": "0",
                "id": "c3e82b4a-db80-4607-bd00-68eb9e5a1224",
                "selectedOptionId": "528446",
                "optionChoices": {
                    "528446": "Eiffel ,2 Day Bus Pass &Cruise"
                }
            },
            {
                "label": "Start Time",
                "level": "1",
                "id": "17a9e4bd-604d-49fe-8382-f29d8f623a3c",
                "selectedOptionId": "420013_20231219",
                "optionChoices": {
                    "420013_20231219": "12:00"
                }
            }
        ],
        "unitOptions": [
            {
                "label": "Adult",
                "id": "143731",
                "restrictions": {
                    "minQuantity": 1,
                    "maxQuantity": 10,
                    "accompagniedBy": []
                },
                "price": {
                    "retail": 114.9,
                    "currency": "EUR"
                },
                "unitQuantity": 2,
                "minAge": 13,
                "maxAge": 99
            },
            {
                "label": "Child",
                "id": "112820",
                "restrictions": {
                    "minQuantity": 1,
                    "maxQuantity": 10,
                    "accompagniedBy": []
                },
                "price": {
                    "retail": 99.9,
                    "currency": "EUR"
                },
                "unitQuantity": 1,
                "minAge": 4,
                "maxAge": 12
            },
            {
                "label": "Infant",
                "id": "112821",
                "restrictions": {
                    "minQuantity": 1,
                    "maxQuantity": 10,
                    "accompagniedBy": []
                },
                "price": {
                    "retail": 0.0,
                    "currency": "EUR"
                },
                "unitQuantity": 0,
                "minAge": 0,
                "maxAge": 3
            }
        ],
        "maxParticipants": 10,
        "minParticipants": 1,
        "isOptionStepCompleted": true,
        "isPricingStepCompleted": true
    },
    "questions": {
        "customer": [
            {
                "id": "68f9d42d-38b4-4006-9564-0b92d4857033",
                "question": "First name",
                "value": "Abraham",
                "dataType": "TEXT"
            },
            {
                "id": "c35471f4-99e1-4ac0-b594-25028b024f69",
                "question": "Last name",
                "value": "Abraham",
                "dataType": "TEXT"
            },
            {
                "id": "c6339907-3af8-498f-b079-f15781b212aa",
                "question": "Email Address",
                "value": "Abraham@mail.com",
                "dataType": "TEXT",
                "dataFormat": "EMAIL_ADDRESS"
            },
            {
                "id": "33173169-f5f0-4c91-85d5-f4d53d6247a9",
                "question": "Phone Number",
                "value": "0601020304",
                "dataType": "TEXT",
                "dataFormat": "PHONE_NUMBER"
            },
            {
                "id": "73c9879a-7141-4635-a8de-93ff82a5af31",
                "question": "Date of birth",
                "value": "2000-01-01",
                "dataType": "DATE"
            }
        ],
        "participants": [
            {
                "id": "08421eff-6b5b-445a-bafa-d13d0232b95d",
                "questions": [
                    {
                        "id": "122e1ea2-d062-4dd6-9544-b35baef139ab",
                        "question": "Date of birth",
                        "value": "2000-01-01"
                    }
                ]
            },
            {
                "id": "491e7ac3-3a6c-44a2-acf4-04c6932c345a",
                "questions": [
                    {
                        "id": "217b78bb-8845-435b-9dc2-c8506f8b3307",
                        "question": "Date of birth",
                        "value": "2000-01-01"
                    }
                ]
            },
            {
                "id": "d9f482e5-0a90-4ea8-8efc-ddae1027350b",
                "questions": [
                    {
                        "id": "16c42f87-2b77-47d9-ba98-dbe695449f67",
                        "question": "Date of birth",
                        "value": "2000-01-01"
                    }
                ]
            }
        ]
    },
    "cancellation": {
        "isCancellable": false,
        "cancellationPolicy": []
    },
    "isQuestionStepComplete": true,
    "travelerDetails": {
        "externalClientId": "ABCDEF"
    }
}

Warning

In case the call to the confirmBooking fails, it will be the integrator responsability (as owner of the payment) to process payment reymboursment.