Book

Product: activity
Type: book

Book the selected agreement.

Request

Request fields:

  • search
    • @number: search number from previous availability search
  • agreement
    • @code: selected agreement code from previous availability search
  • reference
    • @code: your booking reference. Must be UNIQUE
  • paxes
    • pax
      • @leader: leader is a "reference" passenger. Every booking must have exactly one leader.
      • @title: MR, MS, MRS
      • @name: traveller's name
      • @surname: traveller's surname
      • @age: traveller's age
      • @email: traveller's email address
      • @phone: traveller's phone number (without international prefix)
      • @phone_prefix: phone number international prefix (according to the ITU standard, e.g. +39 for Italy)
  • additional_fields
    • additional_field
      • @code: additional field code
      • @value: additional field value

Request example:

<envelope>
    <header>
        <actor>exampleactor</actor>
        <user>exampleuser</user>
        <password>*****</password>
        <version>1.7.0</version>
        <timestamp>20260612150441</timestamp>
    </header>
    <query type="book" product="activity">
        <search number="activities.avl6a2bf9ea7090f"/>
        <agreement code="0x0e8.E-E10-A0BCNO0033-33834358#TOUR.ODQxZGE5"/>
        <reference code="t20013101204s426d3"/>
        <paxes>
            <pax leader="true" title="MS" name="test" surname="Example" email="example@netstorming.net" phone="00390418870080" country="IT"/>
            <pax leader="false" title="" name="" surname="" />
            <pax leader="false" title="" name="" surname="" age="5"/>
            <pax leader="false" title="" name="" surname="" age="8"/>
        </paxes>
        <additional_fields>
            <additional_field code="start_time" value="11:00" />
            <additional_field code="activity_language" value="en" />
        </additional_fields>
     </query>
</envelope>
Response

Response example:

<envelope>
    <header>
        <version port="22222" host="example.netstorming.office">1.7.0</version>
        <timestamp>20260512150541</timestamp>
    </header>
    <response type="book" product="activity">
        <supplier code="TEST_SUPP" reference="B0626ZAAFR">TEST SUPPLIER NAME</supplier>
        <booking code="B0626HU5YV"/>
        <reference code="t20013101204s426d3"/>
        <status code="CNF"/>
        <deadline date="2026-07-21 00:00:00"/>
        <start date="2026-06-25" time="11:00"/>      
        <language code="en"/>
        <paxes number="4">
             <pax title="MS" name="test" surname="gio" email="" leader="true"/>
            <pax title="" name="" surname="" email="" country="" leader="false"/>
            <pax title="" name="" surname="" email="" country="" leader="false" age="5"/>
            <pax title="" name="" surname="" email="" country="" leader="false" age="8"/>
        </paxes>
        <activity_info>
            ...
        </activity_info>
        <additional_fields>
            <additional_field code="start_time" name="starting time" value="11:00"/>
            <additional_field code="activity_language" name="activity language" value="en"/>
        </additional_fields>
        <remarks/>
        <prices>
            <nett amount="1113" currency="USD"/>
            <gross amount="1115" currency="USD"/>
        </prices>
    </response>
</envelope>

Response fields:

  • booking@code: our booking reference
  • status@code: booking status as described in integration guide
  • deadline@date: maximum allowed date for cancellation
  • start:
    • @date: service date
    • @time: service time (optional)
  • language@code: activity language (optional)
  • paxes
    • @number: number of paxes
    • pax: data of traveller in the same format already used in this API
  • activity_info See example
  • additional_fields:
    • additional_field: additional field in the same format already used in this API
  • remarks (optional): contains additional information about the service that should be shown to the customer. May contain useful info like inclusions/exclusions details, pickup/dropoff details and so on
    • remark@text: additional information about the service
  • prices: total service prices
    • nett
      • @amount: nett amount
      • @currency: nett currency
    • gross
      • @amount: gross amount (=nett amount + client markup)
      • @currency: gross currency