COMMIT
Method DestServicesCommitV2
This method is to commit the booking
{YOUR.PROVIDER.DOMAIN}/destservices/destservices.asmx?op=DestServicesCommitV2
General data that should be obtained from the DestServicesBookV2Response

Node definition Request
| Node | Attribute | Data Type | Description | Value | Mandatory |
|---|---|---|---|---|---|
| objRequest | PrimaryLangID | String | Language code | LANGUAGE | Required |
| objRequest | EchoToken | Integer | This value is returned in the response of the method DestServicesBookV2 | Required | |
| objRequest | TransactionIdentifier | String | This value is returned in the response of the method DestServicesBookV2 and represents the locator of the booking | Required | |
| objRequest | ClientReference | String | In this attribute you can put your booking locator or any reference for the booking | Optional | |
| objRequest\InternalNotes | String | Internal notes of the booking | Optional | ||
| objRequest\TransferAddress | OriginName | String | Name of the origin location | Optional | |
| objRequest\TransferAddress | OriginAddress | String | Address of the origin location | Optional | |
| objRequest\TransferAddress | OriginAddress2 | String | Additional address info of the origin | Optional | |
| objRequest\TransferAddress | OriginPostalCode | String | Postal code of the origin location | Optional | |
| objRequest\TransferAddress | DestinationName | String | Name of the destination location | Optional | |
| objRequest\TransferAddress | DestinationAddress | String | Address of the destination location | Optional | |
| objRequest\TransferAddress | DestinationAddress2 | String | Additional address info of the destination | Optional | |
| objRequest\TransferAddress | DestinationPostalCode | String | Postal code of the destination location | Optional | |
| objRequest\Concepts | Array | Array of the concepts of the booking | Required | ||
| objRequest\Concepts\CommitRequestV2Concept\ConceptBookingCode | String | Code of the concept returned in DestServicesBookV2 | Required | ||
| objRequest\Concepts\CommitRequestV2Concept\Comments | String | Observations for the provider | Optional | ||
| objRequest\Concepts\CommitRequestV2Concept\Answers | Array | Array of answers to the DestServicesBookV2Result questions | Optional | ||
| objRequest\Concepts\CommitRequestV2Concept\Answers\Answer | Code | String | Code of the question | Required | |
| objRequest\Concepts\CommitRequestV2Concept\Answers\Answer | RPH | Integer | Identifier of the pax to whom the question relates. If the question returns the node RPH in the method DestServicesBookV2, this attribute is mandatory. | Required (if is returned in the DestServicesBookV2 method) | |
| objRequest\Concepts\CommitRequestV2Concept\Answers\Answer | String | Answer of the question | Required | ||
| objRequest\Concepts\CommitRequestV2Concept\Guests | Array | Array of the pax of the booking | Required | ||
| objRequest\Concepts\CommitRequestV2Concept\Guests\Guest\GivenName | String | Name of the passenger | Required | ||
| objRequest\Concepts\CommitRequestV2Concept\Guests\Guest\Surname | String | Surname of the passenger | Required | ||
| objRequest\Concepts\CommitRequestV2Concept\Guests\Guest\PhoneNumber | String | Phone number of the passenger | Optional | ||
| objRequest\Concepts\CommitRequestV2Concept\Guests\Guest\BirthDate | Date | Birth date of the passenger | YYYY-MM-DD | Required | |
| objRequest\Concepts\CommitRequestV2Concept\Guests\Guest\Age | Integer | Age of the passenger | Required | ||
| objRequest\Concepts\CommitRequestV2Concept\Guests\Guest\DocumentID | String | National ID Card/Passport number of the passenger | Optional | ||
| objRequest\Concepts\CommitRequestV2Concept\Guests\Guest\DocumentExpirationDate | String | National ID Card/Passport expiration date | Optional | ||
| objRequest\Concepts\CommitRequestV2Concept\Guests\Guest\Gender | String | Used to specify the passenger's gender | H (Male) or M (Female) | Optional | |
| objRequest\Concepts\CommitRequestV2Concept\Guests\Guest\IsChild | Boolean | This value is to indicate if the passenger is an adult or child | true/false | Required | |
| objRequest\Concepts\CommitRequestV2Concept\Transfer | This node is only for Transfer bookings | Optional | |||
| objRequest\Concepts\CommitRequestV2Concept\Transfer | TransportCompany | String | Name of the company of the transport in which the passenger arrives | Optional | |
| objRequest\Concepts\CommitRequestV2Concept\Transfer | TransportData | String | Information about the transport in which the passenger arrives (Ex.: Flight number) | Optional | |
| objRequest\Concepts\CommitRequestV2Concept\Transfer | TransportCompanyOrigin | String | Name of the company of the transport in transfer origin | Optional | |
| objRequest\Concepts\CommitRequestV2Concept\Transfer | TransportDataOrigin | String | Information about the transport in transfer origin (Ex.: Flight number) | Optional | |
| objRequest\Concepts\CommitRequestV2Concept\Transfer | TransportCompanyDestination | String | Name of the company of the transport in transfer destination | Optional | |
| objRequest\Concepts\CommitRequestV2Concept\Transfer | TransportDataDestination | String | Information about the transport in transfer destination (Ex.: Flight number) | Optional |
Node definition Response
| Node | Attribute | Data Type | Description | Value | Mandatory |
|---|---|---|---|---|---|
| DestServicesCommitV2Result | TransactionIdentifier | String | Locator of the booking | Required | |
| DestServicesCommitV2Result | ResResponseType | String | State of the booking | Commited / Cancelled / Pending / Rejected | Required |
| DestServicesCommitV2Result\Products | Array | Array of products | Required | ||
| DestServicesCommitV2Result\Products\BookResponseV2Product\Status | String | Status of the product booking | Commited / Cancelled / Pending / Rejected | Required | |
| DestServicesCommitV2Result\Products\BookResponseV2Product\ProductCode | String | Code of the product | Required | ||
| DestServicesCommitV2Result\Products\BookResponseV2Product\ProductName | String | Name of the product | Required | ||
| DestServicesCommitV2Result\Products\BookResponseV2Product\StayDateRange | Date information | Required | |||
| DestServicesCommitV2Result\Products\BookResponseV2Product\StayDateRange | Start | Date | Date from | YYYY-MM-DD | Required |
| DestServicesCommitV2Result\Products\BookResponseV2Product\StayDateRange | End | Date | Date to | YYYY-MM-DD | Required |
| DestServicesCommitV2Result\Products\BookResponseV2Product\Comments | Array | Array of comments | Optional | ||
| DestServicesCommitV2Result\Products\BookResponseV2Product\Comments\Comment | Text | String | Product observation | Required | |
| DestServicesCommitV2Result\Products\BookResponseV2Product\CancelPenalties | Array | Array of cancel penalties | Optional | ||
| DestServicesCommitV2Result\Products\BookResponseV2Product\CancelPenalties\CancelPenalty | Start | Date | Start date of the application of this cancel penalty | YYYY-MM-DD | Required |
| DestServicesCommitV2Result\Products\BookResponseV2Product\CancelPenalties\CancelPenalty | End | Date | End date of the application of this cancel penalty | YYYY-MM-DD | Required |
| DestServicesCommitV2Result\Products\BookResponseV2Product\CancelPenalties\CancelPenalty\AmountPercent | Percent | Integer | Percentage of penalty over the amount of the product | YYYY-MM-DD | Optional |
| DestServicesCommitV2Result\Products\BookResponseV2Product\CancelPenalties\CancelPenalty\AmountPercent | NmbrOfNights | Integer | Number of nights of penalty | Optional | |
| DestServicesCommitV2Result\Products\BookResponseV2Product\CancelPenalties\CancelPenalty\AmountPercent | Amount | Decimal | Amount of the penalty | Optional | |
| DestServicesCommitV2Result\Products\BookResponseV2Product\CancelPenalties\CancelPenalty\AmountPercent | CurrencyCode | String | Currency of the amount of the penalty | Optional | |
| BookResponseV2Product\Concepts\BookResponseV2Concept\Total | Price information of the concept (more info) | Required | |||
| BookResponseV2Product\Concepts\BookResponseV2Concept\Total\Taxes | Amount | Decimal | Net amount of the concept | Required | |
| BookResponseV2Product\Concepts\BookResponseV2Concept\Total\Taxes | CurrencyCode | String | Code of the currency of the price | Required | |
| BookResponseV2Product\Concepts\BookResponseV2Concept\Total\Taxes\Commissions | Node with the information about the commissions | Optional | |||
| BookResponseV2Product\Concepts\BookResponseV2Concept\Total\Taxes\Commissions\SellingPrice | Decimal | Selling amount of the concept | Required | ||
| BookResponseV2Product\Concepts\BookResponseV2Concept\Total\Taxes\Commissions\CommissionableAmount | Decimal | Commissionable amount of the concept | Required | ||
| BookResponseV2Product\Concepts\BookResponseV2Concept\Total\Taxes\Commissions\NotCommissionableAmount | Decimal | Not commissionable amount of the concept | Required | ||
| BookResponseV2Product\Concepts\BookResponseV2Concept\Total\Taxes\Commissions\CommissionAmount | Decimal | Amount of the commission of the concept | Required | ||
| BookResponseV2Product\Concepts\BookResponseV2Concept\Total\Taxes\Commissions\NetAmount | Decimal | Net amount of the concept | Required | ||
| BookResponseV2Product\Concepts\BookResponseV2Concept\Details\BookResponseV2Detail\Quantity | Integer | Return the booked quantity of the detail (only in optional details) | Optional | ||
| BookResponseV2Product\Concepts\BookResponseV2Concept\Details\BookResponseV2Detail\Total | Price information detail (more info) | Required | |||
| BookResponseV2Product\Concepts\BookResponseV2Concept\Details\BookResponseV2Detail\Total\Taxes | Amount | Decimal | Total amount | Required | |
| BookResponseV2Product\Concepts\BookResponseV2Concept\Details\BookResponseV2Detail\Total\Taxes | CurrencyCode | String | Currency code | CURRENCY | Required |
| BookResponseV2Product\Concepts\BookResponseV2Concept\Details\BookResponseV2Detail\Total\Taxes | NumDecimals | Integer | Number of decimals | Required | |
| BookResponseV2Product\Concepts\BookResponseV2Concept\Details\BookResponseV2Detail\Total\Taxes\Commissions | Commission information | Required | |||
| BookResponseV2Product\Concepts\BookResponseV2Concept\Details\BookResponseV2Detail\Total\Taxes\Commissions | SellingPrice | Decimal | Amount for selling | Required | |
| BookResponseV2Product\Concepts\BookResponseV2Concept\Details\BookResponseV2Detail\Total\Taxes\Commissions | CommissionableAmount | Decimal | Comisionable amount | Required | |
| BookResponseV2Product\Concepts\BookResponseV2Concept\Details\BookResponseV2Detail\Total\Taxes\Commissions | NotCommissionableAmount | Decimal | No commissionable amount | Required | |
| BookResponseV2Product\Concepts\BookResponseV2Concept\Details\BookResponseV2Detail\Total\Taxes\Commissions | CommissionAmount | Decimal | Commision amount | Required | |
| BookResponseV2Product\Concepts\BookResponseV2Concept\Details\BookResponseV2Detail\Total\Taxes\Commissions | NetAmount | Decimal | Net amount | Required | |
| BookResponseV2Product\ProviderLocator | String | External booking locator. This is not always returned, check with your provider if you need it. | Optional | ||
| BookResponseV2Product\BookingItemIdentifier | Integer | Identifier of the product element in the booking. | Required | ||
| BookResponseV2Product\Voucher | Node with the information about the voucher | Optional | |||
| BookResponseV2Product\Voucher | Type | String | Type of the voucher | BAR_CODE / QR_CODE | Required |
| BookResponseV2Product\Voucher | Value | String | Value of the voucher | Required | |
| DestServicesCommitV2Result\VoucherURL | String | Voucher URL | Optional |
XML Examples
Confirmation REQUEST example
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://xml.ineedtours.com/ws/">
<soapenv:Header/>
<soapenv:Body>
<ws:DestServicesCommitV2>
<ws:objCredentials>
<ws:Source>
<ws:RequestorID Type="DSP" ID="YOUR-USER" MessagePassword="YOUR-PASSWORD"/>
</ws:Source>
</ws:objCredentials>
<ws:objRequest PrimaryLangID="IDLANGUAGE" EchoToken="4974" TransactionIdentifier="DN3C43" ClientReference="XXXXXXX">
<ws:Concepts>
<ws:CommitRequestV2Concept>
<ws:ConceptBookingCode>795</ws:ConceptBookingCode>
<ws:Answers>
<ws:Answer Code="HTLOBLIGATORIO">The hotel is in New York City</ws:Answer>
<ws:Answer Code="MENU">Pescado</ws:Answer>
</ws:Answers>
<ws:Guests>
<ws:Guest>
<ws:GivenName>Pax name 1</ws:GivenName>
<ws:Surname>Pax surname 1</ws:Surname>
<ws:BirthDate>YYYY-MM-DD</ws:BirthDate>
<ws:Age>35</ws:Age>
<ws:IsChild>false</ws:IsChild>
<ws:PhoneNumber>960000002</ws:PhoneNumber>
</ws:Guest>
<ws:Guest>
<ws:GivenName>Pax name 2</ws:GivenName>
<ws:Surname>Pax surname 2</ws:Surname>
<ws:BirthDate>YYYY-MM-DD</ws:BirthDate>
<ws:Age>35</ws:Age>
<ws:IsChild>false</ws:IsChild>
</ws:Guest>
<ws:Guest>
<ws:GivenName>Pax name 3</ws:GivenName>
<ws:Surname>Pax surname 3</ws:Surname>
<ws:BirthDate>YYYY-MM-DD</ws:BirthDate>
<ws:Age>4</ws:Age>
<ws:IsChild>true</ws:IsChild>
</ws:Guest>
</ws:Guests>
<ws:Transfer TransportData="IB780"/>
</ws:CommitRequestV2Concept>
</ws:Concepts>
</ws:objRequest>
</ws:DestServicesCommitV2>
</soapenv:Body>
</soapenv:Envelope>
Confirmation RESPONSE example
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<DestServicesCommitV2Response xmlns="http://xml.ineedtours.com/ws/">
<DestServicesCommitV2Result EchoToken="262" PrimaryLangID="ES" TransactionIdentifier="D6JL8E" ResResponseType="Commited">
<Header ResponseTimestamp="2019-01-14T17:28:56.1806425+01:00" MillisecondProcessingTime="52688" Endpoint="demo.xml.com"/>
<Products>
<BookResponseV2Product>
<Status>Commited</Status>
<ProductCode>1352</ProductCode>
<ProductName>Traslado XML (PRIVADO)</ProductName>
<ProductDays>1</ProductDays>
<ProductBookingCode>-1</ProductBookingCode>
<StayDateRange Start="2019-01-19T00:00:00" End="2019-01-19T00:00:00"/>
<CancelPenaltiesStartDate xsi:nil="true"/>
<ProviderLocator>Z58X8D</ProviderLocator>
<Voucher>
<Type>QR_CODE</Type>
<Value>##2025396##kf195a##5921423</Value>
</Voucher>
<Concepts>
<BookResponseV2Concept>
<ConceptCode>1398</ConceptCode>
<ConceptName>Coche Berlina Tipo A</ConceptName>
<Quantity>1</Quantity>
<ConceptBookingCode>42</ConceptBookingCode>
<AgeFrom>0</AgeFrom>
<AgeTo>99</AgeTo>
<IsChild>false</IsChild>
<PickUpTime>09:00</PickUpTime>
<Duration>0</Duration>
<Guests>
<Guest>
<GivenName>Jose</GivenName>
<Surname>Vicente</Surname>
<BirthDate xsi:nil="true"/>
<Age>0</Age>
<IsChild>false</IsChild>
</Guest>
</Guests>
<Details>
<BookResponseV2Detail>
<DetailName>Coche Berlina Tipo A</DetailName>
<DetailBookingCode/>
<Date xsi:nil="true"/>
<OnRequest>false</OnRequest>
<Total>
<Taxes Amount="52.5000" CurrencyCode="EUR" NumDecimals="2">
<Commissions>
<SellingPrice>52.5000</SellingPrice>
<CommissionableAmount>52.5000</CommissionableAmount>
<NotCommissionableAmount>0.0000</NotCommissionableAmount>
<CommissionAmount>0.0000</CommissionAmount>
<NetAmount>52.5000</NetAmount>
</Commissions>
</Taxes>
</Total>
<Offer>false</Offer>
</BookResponseV2Detail>
</Details>
</BookResponseV2Concept>
</Concepts>
</BookResponseV2Product>
<BookResponseV2Product>
<Status>Commited</Status>
<ProductCode>1352</ProductCode>
<ProductName>Traslado XML (PRIVADO)</ProductName>
<ProductDays>1</ProductDays>
<ProductBookingCode>-1</ProductBookingCode>
<StayDateRange Start="2019-01-19T00:00:00" End="2019-01-19T00:00:00"/>
<CancelPenaltiesStartDate xsi:nil="true"/>
<ProviderLocator>Z58X8D</ProviderLocator>
<Voucher>
<Type>QR_CODE</Type>
<Value>##2025396##kf195a##5921423</Value>
</Voucher>
<Concepts>
<BookResponseV2Concept>
<ConceptCode>1398</ConceptCode>
<ConceptName>Coche Berlina Tipo A</ConceptName>
<Quantity>1</Quantity>
<ConceptBookingCode>43</ConceptBookingCode>
<AgeFrom>0</AgeFrom>
<AgeTo>99</AgeTo>
<IsChild>false</IsChild>
<DeliveryTime>15:30</DeliveryTime>
<Duration>0</Duration>
<Guests>
<Guest>
<GivenName>Jose V</GivenName>
<Surname>Ferrero</Surname>
<BirthDate xsi:nil="true"/>
<Age>0</Age>
<IsChild>false</IsChild>
</Guest>
</Guests>
<Details>
<BookResponseV2Detail>
<DetailName>Coche Berlina Tipo A</DetailName>
<DetailBookingCode/>
<Date xsi:nil="true"/>
<OnRequest>false</OnRequest>
<Total>
<Taxes Amount="52.5000" CurrencyCode="EUR" NumDecimals="2">
<Commissions>
<SellingPrice>52.5000</SellingPrice>
<CommissionableAmount>52.5000</CommissionableAmount>
<NotCommissionableAmount>0.0000</NotCommissionableAmount>
<CommissionAmount>0.0000</CommissionAmount>
<NetAmount>52.5000</NetAmount>
</Commissions>
</Taxes>
</Total>
<Offer>false</Offer>
</BookResponseV2Detail>
</Details>
</BookResponseV2Concept>
</Concepts>
<BookingItemIdentifier>5890672</BookingItemIdentifier>
</BookResponseV2Product>
</Products>
</DestServicesCommitV2Result>
</DestServicesCommitV2Response>
</soap:Body>
</soap:Envelope>
Notes
QR/BARCODE generation: To generate de QR or BARCODE and put this in the final voucher, you need generate a image of the type indicated in the Voucher/Type node (QR or BarCode) with the value returned in the Voucher/Value node. This image must be included in the final voucher so that it can be read at the time of accessing the service.
IMPORTANT: in the event that a response from DestServicesCommitV2 fails or does not return a response, under no circumstances should the reservation be resubmitted, you should check the status of the reservation and services with your supplier (there may be confirmed services with active cancellation fees).
Name and Address consistency: When using coordinates to specify the origin or destination, a Name and Address must be provided. These values must be consistent between the Avail request and the Commit request. If the values were not sent in Avail, they must be included in Commit. If the values are sent in both Avail and Commit, the Commit values take precedence.