---
title: Book
url: 'https://documentation.netstorming.net/api-reference/transfers/book'
markdown: 'https://documentation.netstorming.net/api-reference/transfers/book.md'
date: '2026-11-10'
description: 'Book Product: transport 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 U…'
taxonomy:
  category:
    - docs
---

# Book

[](#)  [ API reference ](https://documentation.netstorming.net/api-reference)     [ Transfers ](https://documentation.netstorming.net/api-reference/transfers)      Book    

#### Book

Product: **transport**
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
- - - **@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)
- - - **@country**: traveller's nationality ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2))
- **additional\_fields**
- - **additional\_field**
- - - **@code**: additional field code
- - - **@value**: additional field value
- **supplements**
- - **supplement**
- - - **@code**: selected supplemen code
- - - **@quantity**: how many "units" you want to buy

Request example:

```xml
<envelope>
    <header>
        <actor>exampleactor</actor>
        <user>exampleuser</user>
        <password>*****</password>
        <version>1.7.0</version>
        <timestamp>20240112150441</timestamp>
    </header>
    <query type="book" product="transport">
        <search number="trsprts.avl65ba1811c6be2"/>
        <agreement code="LCL.33.132.1.NjJkY2E0"/>
        <reference code="t20013101204s426d3"/>
        <paxes>
            <pax leader="true" title="MR" name="Test" surname="Example" email="example@netstorming.net" phone="00390418870080" country="IT" />
            <pax leader="false" title="MS" name="Test" surname="Two" />
        </paxes>
        <additional_fields>
            <additional_field code="FLIGHT" value="TE57012" />
            <additional_field code="FLIGHT_TIME" value="2024-02-12 15:00:00" />
        </additional_fields>
        <supplements>
            <supplement code="SYS_SUPP_21@19" quantity="1"/>
        </supplements>
        </query>
</envelope>
```

##### Response

Response example:

```xml
<envelope>
    <header>
        <version port="22222" host="example.netstorming.office">1.7.0</version>
        <timestamp>20240131105627</timestamp>
    </header>
    <response type="book" product="transport">
        <supplier/>
        <booking code="B0124HU5YV"/>
        <reference/>
        <status code="CNF"/>
        <deadline date="2024-01-31 10:56:00"/>
        <outbound date="2024-02-12 10:30:00"/>
        <pickup name="Piazzale Roma" address="Piazzale Roma, Venezia, Venice, Italy" type="generic" lat="45.43818842198814" lng="12.318325039604192"/>
        <dropoff name="Aeroporto Marco Polo" address="Viale Galileo Galilei, 30, 30173 Venezia VE" type="airport" lat="45.50511599506822" lng="12.346679306243292"/>
        <luggages number="2"/>
        <paxes number="2">
            <pax title="MR" name="Test" surname="Example" email="example@netstorming.net" phone="00390418870080" country="IT" leader="true"/>
            <pax title="MS" name="Test" surname="Two" phone="" leader="false"/>
        </paxes>
        <vehicle>
            <doors value="5"/>
            <luggage_dimensions value="30cmX40cmX60cm"/>
            <max_luggages value="4"/>
            <max_passengers value="4"/>
        </vehicle>
        <transport typology="PRIVATE" category="Economy+" vehicle="Standard car"/>
        <additional_fields>
            <additional_field code="FLIGHT" name="Flight number" description="Please specify the flight number." value="TE57012"/>
            <additional_field code="FLIGHT_TIME" name="Flight time" description="Please specify the exact time the flight is expected to land/depart." value="2024-02-12 15:00:00"/>
        </additional_fields>
        <ride_details>
            <detail code="phone" text="+390411234456"/>
            <detail code="surname" text="Rossi"/>
            <detail code="name" text="Mario"/>
            <detail code="car_model" text="White Fiat Panda"/>
            <detail code="plate_number" text="AA012ZZ"/>
        </ride_details>
        <supplements>
            <supplement code="SYS_SUPP_21@19" name="Welcome kit" quantity="1" max_quantity="1" type="int" prepaid="true" compulsory="false">
                <prices>
                    <nett amount="8" currency="EUR"/>
                    <gross amount="8" currency="EUR"/>
                </prices>
            </supplement>
        </supplements>
        <prices>
            <nett amount="118" currency="EUR"/>
            <gross amount="120.80" currency="EUR"/>
        </prices>
    </response>
</envelope>
```

Response fields:

- **booking@code**: our booking reference
- **status@code**: booking status as described in [integration guide](https://documentation.netstorming.net/integration-guide/booking-status)
- **deadline@date**: maximum allowed date for cancellation
- **outbound@date**: service date and time
- **pickup**: details about the pickup point in the same format already used in this API
- **dropoff**: details about the dropoff point in the same format already used in this API
- **luggages@number**: number of luggages
- **paxes**
- - **@number**: number of paxes
- - **pax**: data of traveller in the same format already used in this API
- **vehicle**: vehicle details in the same format used inside **agreement** in availability and detalied availability response
- **transport**
- - **@typology**: service typology (i.e. private or shared)
- - **@category**: service category (i.e. standard, economy, luxury...)
- - **@vehicle**: brief description of the vehicle type (i.e. standard car, sedan, mini van...)
- **additional\_fields**:
- - **additional\_field**: additional field in the same format already used in this API
- **ride\_details**: additional details about the specific ride. Provides info like: driver name/surname/phone, vehicle type/plate.
- - **detail**
- - - **@code**: detail code
- - - **@text**: detail value
- **supplements**
- - **supplement**: supplement in the same format already used in this API
- **prices**: total service prices
- - **nett**
- - - **@amount**: nett amount
- - - **@currency**: nett currency
- - **gross**
- - - **@amount**: gross amount (=nett amount + client markup)
- - - **@currency**: gross currency

 [ ](https://documentation.netstorming.net/api-reference/transfers/detailed-availability) [](https://documentation.netstorming.net/api-reference/transfers/track)

---

## Navigation

- Parent: [Transfers](https://documentation.netstorming.net/api-reference/transfers.md)
- Previous: [Detailed availability](https://documentation.netstorming.net/api-reference/transfers/detailed-availability.md)
- Next: [Track](https://documentation.netstorming.net/api-reference/transfers/track.md)
