# Introduction

Travu API lets you seamlessly add Bus and Flight ticket inventories and booking to your travel site or platform. Get instant access to top Bus & Flight operators across Nigeria, Africa.

{% hint style="warning" %}
The Travu API is still in beta, this documentation is a work in progress, feel free to send us your feedback at <okoye@travu.africa>
{% endhint %}

Travu API Service is Nigeria's only Bus and Flight aggregating service, its a **FREE** API service by **Mytrip Nigeria Limited**, which helps Developers, Creators and other Internet Companies extend their service coverage into the Public Bus ticketing sector, as well as Flight Ticketing sector of travel, fast and easy.&#x20;

We supply a One-Time connect API where real time inventories from Top travel operators in Nigeria could be  accessed and harnessed for Online booking on any Product category. Our Fast, Easy and Flexible Bus and Flight APIs directly connects you to all the inventory needed to build a travel website or app on basis of your requirement, for existing OTA's in other categories of travel, Our API lets you seamlessly add Bus/Flight ticket search and booking to your travel site or platform and get access to top private and governmental operators and across Nigeria and Africa Subsequently. Your customers get great Facilities on our API from any wherever in Nigeria.

If you'll want to skip all this introduction and move straight to the main objective, then navigate to the next page;

{% content-ref url="/pages/-MdHO\_asELATq6qH3zBx" %}
[API Reference](/reference)
{% endcontent-ref %}

then;

{% content-ref url="/pages/-MdHT72MKm-AzSRfaL8G" %}
[Postman Collection](/postman)
{% endcontent-ref %}

then;

{% content-ref url="/pages/-MdHZ0gMrZvmmj024oQC" %}
[Authentication](/auth)
{% endcontent-ref %}

then;

{% content-ref url="/pages/-MdHancxAJPgHcTKtTcF" %}
[Get Bus Trips](/master-1/trips)
{% endcontent-ref %}

then;

{% content-ref url="/pages/-MdHarrhLndsweCVuV97" %}
[Request Bus Booking](/master-1/booking)
{% endcontent-ref %}

Otherwise, enjoy reading more about why we things you should use our services.

## FEATURES OF Travu API

Our Service includes Features such as:

### **WIDEST ROUTE COVERAGE**

We are fast growing into connecting more and more bus operators in Nigeria, and eventually Africa as a whole, we currently providing inventories from **Abc Transport**, **Guo Transport**, **Chisco Transport** and **Peace Mass Transit** which unarguably are the biggest bus operators in Nigeria, this gives us access to over 4,000+ Busses running across 30+ States in Nigeria. We are very much actively working towards adding more and more bus operators to our list, which means more inventories for our API Users, which also means more revenue to be raked.

### **EASY TO USE DASHBOARD**

We put full the control into your hands with our ever improving dashboard where API Users can perfectly manage all their account facilities ranging from API Keys, wallet funding, transactions and booking records, statistics, account setting and many more. A very lightweight and transparent Dashboard to manage all your needs.

### **EASY TO USE API DOCUMENTATION**

On average, it takes 1-5 hours to actively connect our API which gives you access to all our available inventories, also providing you with real time TEST inventories for your satisfaction.

### **AMAZING COMMISION (PRICING) RANGE**

We do our best to get sustainable commission rates from these bus operators which is shared between US and our API user based on the various Bus operators, on average we deliver upto 4% commission on every seat reserved, before our N100 "api-fee" (temporarily waived) which we charge per seat reserved. We advice they charge a service fee of between N200-N500.

### **LIGHTING SPEED**

We are running on dedicated high grade servers which helps improve delivery time, also utilizing amazing new technologies to help scale up processes by 10X.

### **DEDICATED SUPPORT**

We dedicated Our support engineers to API users, helping you all the way through integrations and running your business, we never leave your side.

### **WE DO THE EXTRA JOB**

We do not just stop at making Online bookings happen, we go the extra mile by making Customer Check-in Easy. Our integrations with these operators are directly into their various systems and are certainly validated with immediate alacrity, nevertheless we still have assigned officers at various terminals making sure your customers are getting accurate value and support for their bookings, giving them a perfect experience.

## **GETTING STARTED**

It's simple, kindly shoot an email to **<okoye@travu.africa>** with your request stating the below details;

1. Name of Business
2. Url/Link of Business
3. Why you need our service (eg. creating a new product or expanding your service options)
4. An active contact Number for further queries

Once this is done, be rest assured that an onboarding agent from Travu will get talking with you right away.

Moving to the Next page is our Detailed Documentation on how to Integrate our service.


# API Reference

The Travu API is organized around REST. Our API has predictable resource-oriented URLs, conveniently accepts JSON-encoded Request bodies, returning responses in JSON-encoded type while using standard HTTP response codes, bearer Authentication and verbs.

This endpoint serves as both the Live and Test environment for developer working to integrate with our API, but no real booking & no real Money flows through when using the Test Key for the demo environment. To go live, you'll only need to change your bearer authentication key from Test to Live key which are evenly made available on your API dashboard as seen below.

![NOTE: The Above Displayed Key is Invalid, DONT bother trying.](https://868570997-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-McuMFNYPnCSU99vp7zH%2F-MdhuYTQGQ8x-QI8JbEd%2F-MdiFZPKpFw2NRBCLXHD%2Fapi%20key.PNG?alt=media\&token=8aef0166-62d3-43a8-96ee-8985824187dd)

## **BROWSABLE API**

We strongly recommend you test our browsable API before starting to integrate with our API, as it will give you a far more intuitive understanding of the API compared to just reading this documentation. We have made a **postman collection** if you prefer, follow the instructions [**here** ](/postman)to get your postman environment and collection configured and running.


# Authentication

The Travu API uses API keys to identify and authenticate requests. You can always find your keys at the Travu Office after complete Onboarding (Getting started [here](https://docs.mytripapi.com/#getting-started)). Note that you will not be needing to pass an PI Keys for the demo environment.

![NOTE: The Above Displayed Key is Invalid, DONT bother trying.](https://868570997-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-McuMFNYPnCSU99vp7zH%2F-MdhuYTQGQ8x-QI8JbEd%2F-MdiFZPKpFw2NRBCLXHD%2Fapi%20key.PNG?alt=media\&token=8aef0166-62d3-43a8-96ee-8985824187dd)

Your API keys carry many privileges, so be make sure you keep them secure. Do not share your secret API keys in publicly accessible areas such as GitHub, client-side code, etc.

Authorization to the API is performed through the `Bearer Token` Type Authentication scheme. To authorize requests, select the `authentication` section, select `Bearer Token` as Type, then include your token bearer API key into the Token field.

![NOTE: The Above Displayed Key is Invalid, DONT bother trying.](https://868570997-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-McuMFNYPnCSU99vp7zH%2F-Me9ru7gz4et_38V8uyj%2F-Me9swCecoegtZombqhE%2FKEY.PNG?alt=media\&token=d4ab54e0-318a-4413-811e-cd42e171cace)

API requests without authentication will fail with the below response:

```json
{
    "status": 401,
    "message": "Missing authorization key"
}
```

API calls made with a wrong/invalid Token will also be rejected with the below response:

```json
{
    "status": 401,
    "message": "Invalid authorization key provided"
}
```

API calls made with a Token belonging to a banned/restricted Travu Business account will also be rejected with the below response:

```json
{
    "status": 401,
    "message": "This account has been blocked"
}
```


# Postman Collection

Use this Postman collection to play around and learn the MytripAPI

## REQUIREMENT

1. [**Postman**](https://postman.com/) version >=6.x, Verify with Help -> Check for updates
2. a bearer token from your MytripAPI dashboard that must be passed into the environment

## IMPORT POSTMAN COLLECTION

For a fresh installation, but also for updating, import the postman collection file by following the steps below;

1. Click on the `Import` button at the very top header line
2. Click on `Import From Link`
3. Past the following URL: C*oming soon...*

## USING THE COLLECTION

Before starting a session, always ensure that your Token Key is used for Authentication, read about Authentication [here](/auth). When testing a POST please bear in mind that you need to fill out the needed details in the JSON-body of the transfer-object.


# Bus Booking

Travu API lets you seamlessly add bus ticket inventories and booking to your travel site or platform. Get access to top private bus operators and government buses across Nigeria, Africa.

{% hint style="warning" %}
The Travu API is still in beta, this documentation is a work in progress, feel free to send us your feedback at <okoye@travu.africa>
{% endhint %}

Travu API Service is Nigeria's only Bus aggregating service, its a **FREE** API service by **Mytrip Nigeria Limited**, which helps Developers, Creators and other Internet Companies extend their service coverage into the Public Bus ticketing sector, fast and easy. Power your bus search of booking platform with the best intercity connectivity bus inventory available in Nigeria.

We supply a One-Time connect API where real time inventories from Top bus operators in Nigeria could be  accessed and harnessed for Online booking on any Product category. Our Fast, Easy and Flexible Bus APIs directly connects you to all the inventory need to build a travel website or app on basis of your requirement, for existing OTA's in other other categories of travel, Our API lets you seamlessly add bus ticket search and booking to your travel site or platform and get access to top private bus operators and government buses across Nigeria and Africa Shortly. Your customers get great Facilities on our Bus API from any wherever in Nigeria.

If you'll want to skip all this introduction and move straight to the main objective, then navigate to the next page;

{% content-ref url="/pages/-MdHO\_asELATq6qH3zBx" %}
[API Reference](/reference)
{% endcontent-ref %}

then;

{% content-ref url="/pages/-MdHT72MKm-AzSRfaL8G" %}
[Postman Collection](/postman)
{% endcontent-ref %}

then;

{% content-ref url="/pages/-MdHZ0gMrZvmmj024oQC" %}
[Authentication](/auth)
{% endcontent-ref %}

then;

{% content-ref url="/pages/-MdHancxAJPgHcTKtTcF" %}
[Get Bus Trips](/master-1/trips)
{% endcontent-ref %}

then;

{% content-ref url="/pages/-MdHarrhLndsweCVuV97" %}
[Request Bus Booking](/master-1/booking)
{% endcontent-ref %}

Otherwise, enjoy reading more about why we things you should use our services.

## FEATURES OF Travu API

Our Service includes Features such as:

### **WIDEST ROUTE COVERAGE**

We are fast growing into connecting more and more bus operators in Nigeria, and eventually Africa as a whole, we currently providing inventories from **Abc Transport**, **Guo Transport**, **Chisco Transport** and **Peace Mass Transit** which unarguably are the biggest bus operators in Nigeria, this gives us access to over 4,000+ Busses running across 30+ States in Nigeria. We are very much actively working towards adding more and more bus operators to our list, which means more inventories for our API Users, which also means more revenue to be raked.

### **EASY TO USE DASHBOARD**

We put full the control into your hands with our ever improving dashboard where API Users can perfectly manage all their account facilities ranging from API Keys, wallet funding, transactions and booking records, statistics, account setting and many more. A very lightweight and transparent Dashboard to manage all your needs.

### **EASY TO USE API DOCUMENTATION**

On average, it takes 1-5 hours to actively connect our API which gives you access to all our available inventories, also providing you with real time TEST inventories for your satisfaction.

### **AMAZING COMMISION (PRICING) RANGE**

We do our best to get sustainable commission rates from these bus operators which is shared between US and our API user based on the various Bus operators, on average we deliver upto 4% commission on every seat reserved, before our N100 "api-fee" (temporarily waived) which we charge per seat reserved. We advice they charge a service fee of between N200-N500.

### **LIGHTING SPEED**

We are running on dedicated high grade servers which helps improve delivery time, also utilizing amazing new technologies to help scale up processes by 10X.

### **DEDICATED SUPPORT**

We dedicated Our support engineers to API users, helping you all the way through integrations and running your business, we never leave your side.

### **WE DO THE EXTRA JOB**

We do not just stop at making Online bookings happen, we go the extra mile by making Customer Check-in Easy. Our integrations with these operators are directly into their various systems and are certainly validated with immediate alacrity, nevertheless we still have assigned officers at various terminals making sure your customers are getting accurate value and support for their bookings, giving them a perfect experience.

## **GETTING STARTED**

It's simple, kindly shoot an email to **<okoye@travu.africa>** with your request stating the below details;

1. Name of Business
2. Url/Link of Business
3. Why you need our service (eg. creating a new product or expanding your service options)
4. An active contact Number for further queries

Once this is done, be rest assured that an onboarding agent from Travu will get talking with you right away.

Moving to the Next page is our Detailed Documentation on how to Integrate our service.


# Get Bus Trips

This API Endpoint makes a POST request to the Travu API service in other to get a response of **AVAILABLE BUS TRIPS** from all our aggregated Bus operators based on the requested **DEPARTURE STATE**, **DESTINATION STATE** and **DATE**.

## ENDPOINT URL

**REQUEST TYPE**: POST

**LIVE URL**: <https://api.travu.africa/api/v1/check_trip>

**TEST URL:** <https://api.travu.africa/test/api/v1/check_trip>

{% hint style="warning" %}
Remember to Pass your Authorization Token for this request to go through, read about Authorization [here](/auth).
{% endhint %}

## BODY PAYLOAD

The Body Payload format is as below;

{% code overflow="wrap" %}

```json
{
    "departure_state": "Supported string e.g ABIA",
    "destination_state": "Supported string e.g LAGOS",
    "trip_date": "date(YYYY-MM-DD)e.g 2021-07-04",
    "sort": "(Optional) if you need to uniform response based on departure date, use 'date'"
}
```

{% endcode %}

Our Supported States Strings (UPPERCASE SENSITIVE) to be used for both departure\_state and destination\_state are;

`ABIA, ADAMAWA, AKWA IBOM, ANAMBRA, BAUCHI, BAYELSA, BENUE, BORNO, CROSS RIVER, DELTA, EBONYI, EDO, EKITI, ENUGU, GOMBE, IMO, JIGAWA, KADUNA, KANO, KATSINA, KEBBI, KOGI, KWARA, LAGOS, NASARAWA, NIGER, OGUN, ONDO, OSUN, OYO, PLATEAU, RIVERS, SOKOTO, TARABA, YOBE, ZAMFARA, FCT (ABUJA), LOME, COTONOU, ACCRA.`

{% hint style="info" %}

#### Below is an actual request made and it's response.

{% endhint %}

## Check Trip Request

<mark style="color:green;">`POST`</mark> `https://api.travu.africa/api/v1/check_trip`

This API Endpoint makes a POST request to the MytripAPI service in other to get a response of **AVAILABLE BUS TRIPS** from all our aggregated Bus operators based on the requested **DEPARTURE STATE**, **DESTINATION STATE** and **DATE**.

#### Request Body

| Name                                                 | Type       | Description                |
| ---------------------------------------------------- | ---------- | -------------------------- |
| departure\_state<mark style="color:red;">\*</mark>   | LAGOS      | Departure State            |
| destination\_state<mark style="color:red;">\*</mark> | IMO        | Destination state          |
| trip\_date<mark style="color:red;">\*</mark>         | 2023-04-01 | Intending date of travel   |
| sort                                                 | String     | Sorting result by an order |

{% tabs %}
{% tab title="200: OK Data Available" %}

```json
{
    "error": false,
    "message": "successful",
    "info": "Data Available",
    "data": [
        {
            "provider": {
                "name": "Chisco Transport",
                "short_name": "CTL",
                "logo": "https://travu.africa/providers/ctl.jpg"
            },
            "trip_id": 320982,
            "trip_no": 8,
            "trip_date": "2023-04-01",
            "departure_time": "01/04/2023 06:00",
            "origin_id": 71,
            "destination_id": 81,
            "narration": "EMPIRE (LAGOS) TO OWERRI(IMO) ",
            "fare": 18000,
            "total_seats": 7,
            "available_seats": [
                1,
                2,
                3,
                4,
                5,
                6,
                7
            ],
            "blocked_seats": [],
            "special_seats": [],
            "special_seats_fare": "",
            "order_id": 577,
            "departure_terminal": "EMPIRE (LAGOS)",
            "destination_terminal": "OWERRI(IMO) ",
            "vehicle": "1+2, Seater, AC, Non-Video",
            "boarding_at": "119",
            "departure_address": "3 Agege motor Road",
            "destination_address": "24 Egbu Road"
        },
        {
            "provider": {
                "name": "ABC Transport",
                "short_name": "ABC",
                "logo": "https://travu.africa/providers/abc.jpg"
            },
            "trip_id": 332649,
            "trip_no": 4,
            "trip_date": "2023-04-01",
            "departure_time": "01/04/2023 06:45",
            "origin_id": 24,
            "destination_id": 32,
            "narration": "LAGOS BOLADE OSHODI TO MBAISE",
            "fare": 15000,
            "total_seats": 14,
            "available_seats": [
                1,
                2,
                3,
                4,
                5,
                6,
                7,
                8,
                9,
                10,
                11,
                12,
                13,
                14
            ],
            "blocked_seats": [],
            "special_seats": [],
            "special_seats_fare": "",
            "order_id": 253,
            "departure_terminal": "LAGOS BOLADE OSHODI",
            "destination_terminal": "MBAISE",
            "vehicle": "2+2, Sprinter Service, AC, Non-Video",
            "boarding_at": "55",
            "departure_address": "129 Agege Motor Road",
            "destination_address": "Alpha Paradise Hotel By Ahiara Junc."
        },
        {
            "provider": {
                "name": "Chisco Transport",
                "short_name": "CTL",
                "logo": "https://travu.africa/providers/ctl.jpg"
            },
            "trip_id": 321280,
            "trip_no": 8,
            "trip_date": "2023-04-01",
            "departure_time": "01/04/2023 07:00",
            "origin_id": 63,
            "destination_id": 81,
            "narration": "ALABA (LAGOS)  TO OWERRI(IMO) ",
            "fare": 22000,
            "total_seats": 7,
            "available_seats": [
                1,
                2,
                3,
                4,
                5,
                6,
                7
            ],
            "blocked_seats": [],
            "special_seats": [],
            "special_seats_fare": "",
            "order_id": 908,
            "departure_terminal": "ALABA (LAGOS) ",
            "destination_terminal": "OWERRI(IMO) ",
            "vehicle": "1+2, Seater, AC, Non-Video",
            "boarding_at": "120",
            "departure_address": "26 Ojo-Igbede Road, By Chemist Bus/stop",
            "destination_address": "24 Egbu Road"
        }
    ]
}
```

{% endtab %}

{% tab title="401: Unauthorized " %}

```json
{
    "status": 401,
    "message": "Missing authorization key"
}
```

{% endtab %}

{% tab title="200: OK No Trips Found" %}

```json
{
    "error": true,
    "message": "FAILED: No trips found",
    "info": "No trips found",
    "data": []
}
```

{% endtab %}
{% endtabs %}

{% hint style="info" %}
`Here is an Extra endpoint to help you with this,` [Get List of States](/master-1/trips/get-list-of-states)
{% endhint %}

## RESPONSE

The Response for this request should bring the **TRIP DETAILS** in the below format if the sort parameter is sent as empty or not included in the payload entirely.;

```json
{
    "GUO": {
        "error": false,
        "message": "successful",
        "info": "Data Available",
        "data": [
            {
                "provider": {
                    "name": "GUO Transport",
                    "short_name": "GUO"
                },
                "boarding_at": "28",
                "trip_id": 96861,
                "trip_no": 450096861,
                "trip_date": "2021-07-10",
                "depature_time": "2018-04-24 08:04:00",
                "origin_id": "",
                "destination_id": 63,
                "narration": "UMUAHIA - LAGOS - AJAH",
                "fare": 6500,
                "total_seats": 15,
                "available_seats": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13,
                    14,
                    15
                ],
                "blocked_seats": [
                    2,
                    3
                ],
                "special_seats": [],
                "special_seats_fare": "",
                "order_id": "eef50d24",
                "departure_terminal": "UMUAHIA",
                "destination_terminal": "LAGOS - AJAH",
                "vehicle": "Hiace - 1st Bus (15)"
            },
            {
                "provider": {
                    "name": "GUO Transport",
                    "short_name": "GUO"
                },
                "trip_id": 96861,
                "trip_no": 450096861,
                "trip_date": "2021-07-10",
                "depature_time": "2018-04-24 08:04:00",
                "origin_id": "",
                "destination_id": 63,
                "narration": "UMUAHIA - LAGOS - AJAH",
                "fare": 7000,
                "total_seats": 15,
                "available_seats": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13,
                    14,
                    15
                ],
                "blocked_seats": [
                    2,
                    3
                ],
                "special_seats": [],
                "special_seats_fare": "",
                "order_id": "0e2c886c",
                "departure_terminal": "UMUAHIA",
                "destination_terminal": "LAGOS - AJAH",
                "vehicle": "Hiace - 1st Bus (15)"
            }
        ]
    },
    "ABC": {
        "error": true,
        "message": "failed",
        "info": "Terminals does not exist between states",
        "data": []
    }
}
```

**ALSO**: The Response for this request should bring the **TRIP DETAILS** in the below format if the sort parameter is sent as "date", this combines all results based on the departure time.

```json
{
    "error": false,
    "message": "successful",
    "info": "Data Available",
    "data": [
        {
            "provider": {
                "name": "ABC Transport",
                "short_name": "ABC"
            },
            "trip_id": 26528,
            "trip_no": 4,
            "trip_date": "2022-01-09",
            "departure_time": "09/01/2022 06:00",
            "origin_id": 13,
            "destination_id": 25,
            "narration": "GWAGWALADA TO LAGOS JIBOWU",
            "fare": 14350,
            "total_seats": 14,
            "available_seats": [
                0,
                10,
                11,
                12,
                13,
                14
            ],
            "blocked_seats": [],
            "special_seats": [],
            "special_seats_fare": "",
            "order_id": 20,
            "departure_terminal": "GWAGWALADA",
            "destination_terminal": "LAGOS JIBOWU",
            "vehicle": "2+2, Sprinter Service, AC, Non-Video",
            "boarding_at": "10",
            "departure_address": "Ground Floor wing B Kaita Plaza, by Mtnoffice cls toJeparo Hotel",
            "destination_address": "22 IKORODU ROAD JIBOWU"
        },
        {
            "provider": {
                "name": "GUO Transport",
                "short_name": "GUO"
            },
            "trip_id": 482850,
            "trip_no": 30482850,
            "trip_date": "2022-01-09",
            "departure_time": "09/01/2022 20:01",
            "origin_id": "",
            "destination_id": 64,
            "narration": "UTAKO - LAGOS - COKER",
            "fare": 10500,
            "total_seats": 59,
            "available_seats": [
                10,
                11,
                12,
                13,
                14
            ],
            "blocked_seats": [],
            "special_seats": [],
            "special_seats_fare": "",
            "order_id": "de5426cf",
            "departure_terminal": "UTAKO",
            "destination_terminal": "LAGOS - COKER",
            "vehicle": "Luxury - 1st Bus (59)",
            "boarding_at": "",
            "departure_address": "Gouba Plaza, Plot171, Ekukinam Street, Utako District, Abuja.",
            "destination_address": "LAGOS - COKER Terminal"
        }
    ]
}
```

{% hint style="danger" %}
Always convert these response values (Strings and Integers) into Strings so as to always correspond as our responds might return those values in either form.
{% endhint %}

The above responses are an example of a situation where One operator has available trip (GUO in this case) and the other does not operate around that route.

Reference to [Authentication](/auth) for possible authentication errors that might occur during this request.

## Seat Layout

The  next thing you want to do is present the seat layouts to your users in our supported formats, this enables your users pick specific seats and positions from a bus.

{% hint style="info" %}
`Here is the documentation that helps you with this,` [Seat Layouts](/master-1/trips/seat-layouts)
{% endhint %}


# Get List of States

This is an extra api endpoint that supplies the full state NAMES and STRINGS as supported by the MytripAPI.

This API Endpoint makes a GET request to the Travu API in other to get a response containing the full state NAMES and STRINGS as supported by the Travu API, which is used as the departure and destination in [Get Bus Trips](/master-1/trips#body-payload).

## ENDPOINT URL

**REQUEST TYPE**: GET

**API BASE URL**: <https://travu.africa/extra/api/states>

{% hint style="warning" %}
You do not need Authorization Token for this request to go through.
{% endhint %}


# Seat Layouts

This is an extra Documentation that helps you with how to present the seat layouts to your users in our supported formats.

There are currently 8 Seat layouts which should be triggered by the parameter "**total\_seats**" from the [Get Bus Trips](/master-1/trips#response) from the Check trip [Get Bus Trips](/master-1/trips#body-payload).

Download this zipped file to access the helpful images;

{% file src="/files/m696SS27aaYOc2dFG6cA" %}

{% hint style="info" %}
You Should as well add an extra "**undefined**" layout incase a new "**total\_seats**" is returned, this is a seat layout that just dynamically arranges the seats accordingly without particular formatting. This is basically to handle booking on a new seat layout temporarily until we share the layout with you.
{% endhint %}


# Request Bus Booking

This API Endpoint makes a **POST** request to the Travu API service in other to make a BOOKING request to to the associated Bus operator based on the selected TRIP from the customer. This makes an actual ticket reservation for your customer, obviously after you must have collected payment.

## ENDPOINT URL

**REQUEST TYPE**: POST

**LIVE URL**: <https://api.travu.africa/api/v1/book_trip>

**TEST URL:** <https://api.travu.africa/test/api/v1/book_trip>

{% hint style="warning" %}
Remember to Pass your Authorization Token for this request to go through, read about Authorization [here](/auth).
{% endhint %}

## BODY PAYLOAD

The Body Payload is as below (in a case where two bus seats are selected);

```json
{
    "seat_numbers": "1,2",
    "amount_per_seat": "Original Amount per seat of that bus trip as returned in the TRIP DETAILS",
    "agent_email": "email of your mytripapi account",
    "passengers": [
        {
            "title": "Traveler's title eg. Mr",
            "name": "Traveler's fullname eg. Abiah Johnie",
            "age": "Traveler's age eg. 32",
            "sex": "Traveler's gender eg. Male",
            "phone": "Traveler's phone number eg. 09100000000",
            "email": "Traveler's email address eg. abiahjohnie@gmail.com",
            "blood": "Traveler's blood group",
            "next_of_kin": "Traveler's Next of Kin fullname eg. Benjamin Johnie",
            "next_of_kin_phone": "Traveler's Next of Kin phone number eg.09000000000",
            "is_primary": true (first passenger should be the primary traveler)
        },
        {
            "title": "Mr",
            "name": "Barnabas Johnnie",
            "age": "32",
            "sex": "Male",
            "phone": "09057568594",
            "email": "bamanjab@gmail.com",
            "blood": "Traveler's blood group",
            "next_of_kin": "Miracle Johnnie",
            "next_of_kin_phone": "08000000000",
            "is_primary": false (other travelers are not primary traveler)
        }
    ],
    "origin_id": "Get from the TRIP DETAILS if available eg. 1",
    "destination_id": "Get from the TRIP DETAILS if available eg. 63",
    "boarding_at": "Get from the TRIP DETAILS if available eg. 96855",
    "trip_id": "Get from the TRIP DETAILS if available eg. 96855",
    "trip_date": "Get from the TRIP DETAILS eg. 2021-07-04",
    "order_id": "Get from the TRIP DETAILS if available eg. 03410a4b",
    "provider": "This is the Bus Provider's short_name eg. GUO as available on the TRIP DETAILS"
}
```

{% hint style="info" %}

#### Below is an actual request made and it's response.

{% endhint %}

## Book Trip Request

<mark style="color:green;">`POST`</mark> `https://api.travu.africa/api/v1/book_trip`

This API Endpoint makes a **POST** request to the Travu API service in other to make a BOOKING request to to the associated Bus operator based on the selected TRIP from the customer. This makes an actual ticket reservation for your customer, obviously after you must have collected payment.

#### Request Body

| Name                                                | Type       | Description                |
| --------------------------------------------------- | ---------- | -------------------------- |
| seat\_numbers<mark style="color:red;">\*</mark>     | 2          | Departure State            |
| amount\_per\_seat<mark style="color:red;">\*</mark> | 3000       | Destination state          |
| agent\_email                                        | 2023-04-01 | Intending date of travel   |
| origin\_id<mark style="color:red;">\*</mark>        | 10         | Sorting result by an order |
| destination\_id<mark style="color:red;">\*</mark>   | 23         |                            |
| boarding\_at                                        | 33         |                            |
| trip\_id                                            | 122322     |                            |
| trip\_date<mark style="color:red;">\*</mark>        | 2023-03-28 |                            |
| order\_id                                           | 22         |                            |
| provider<mark style="color:red;">\*</mark>          | ABC        |                            |

{% tabs %}
{% tab title="200: OK Data Available" %}

```json
{
    "order_status": "confirmed",
    "order_id": "TS230327073926778303IYVP",
    "order_name": "Abijah Johnnie",
    "order_email": null,
    "phone_number": null,
    "order_amount": 3500,
    "trip_id": "294899",
    "origin_id": "10",
    "destination_id": "40",
    "order_ticket_date": "2023-03-27T02:09:27.000Z",
    "order_total_seat": 1,
    "order_seats": "2",
    "amount_per_seat": 3500,
    "order_number": "2202038",
    "vehicle_no": "2+1, Shuttle Service,AC, Non-Video (15 seats)",
    "narration": "CALABAR TO UYO",
    "departure_terminal": "CALABAR",
    "destination_terminal": "UYO",
    "seat_details": [
        {
            "fare": "3500.00",
            "title": "Mr",
            "age": "1",
            "sex": "M",
            "name": "Abijah Johnnie",
            "email": "abijahjohnnie@gmail.com",
            "phone": "07057568594",
            "blood": "AB-",
            "next_of_kin": "Benjamin Johnnie",
            "next_of_kin_phone": "09000000000",
            "seat_number": "2"
        }
    ],
    "provider": "ABC"
}
```

{% endtab %}

{% tab title="401: Unauthorized Unauthorized" %}

```json
{
    "status": 401,
    "message": "Missing authorization key"
}
```

{% endtab %}
{% endtabs %}

## RESPONSE

The Response for the above request should bring the **BOOKED DETAILS/RECEIPT** in the below format if successful;

```json
{
    "order_status": "confirmed",
    "order_id": "49008",
    "order_name": "Abiah Johnie",
    "order_email": "abiahjohnie@gmail.com",
    "phone_number": "09100000000",
    "order_amount": 13000,
    "trip_id": "96855",
    "origin_id": "45",
    "destination_id": "63",
    "order_ticket_date": "2021-07-03",
    "order_total_seat": 2,
    "order_seats": "1,2",
    "amount_per_seat": "6500.00",
    "order_number": "03410a4b",
    "vehicle_no": "1st Bus (15)",
    "narration": "UMUAHIA TO LAGOS - AJAH",
    "departure_terminal": "UMUAHIA",
    "destination_terminal": "LAGOS - AJAH",
    "seat_details": [
        {
            "fare": "6500.00",
            "title": "Mr",
            "age": "32",
            "sex": "M",
            "name": "Abiah Johnie",
            "email": "abiahjohnie@gmail.com",
            "phone": "09100000000",
            "blood": "A+",
            "next_of_kin": "Benjamin Johnnie",
            "next_of_kin_phone": "09000000000",
            "seat_number": "1"
        },
        {
            "fare": "6500.00",
            "title": "Mr",
            "age": "32",
            "sex": "M",
            "name": "Barnabas Johnie",
            "email": "bamanjab@gmail.com",
            "phone": "09057568594",
            "blood": "A+",
            "next_of_kin": "Miracle Johnnie",
            "next_of_kin_phone": "03000000000",
            "seat_number": "2"
        }
    ],
    "provider": "GUO"
}
```

{% hint style="warning" %}
Always convert these response values (Strings and Integers) into Strings so as to always correspond as our responds might return those values in either form.
{% endhint %}

From this response, you'll notice that the first Traveler automatically gets the first seat, while the second passenger gets the second seat, it goes on in that order if more seats are selected.

{% hint style="info" %}
The "status" of a transaction/booking could be confirmed, failed or canceled.
{% endhint %}

Reference to [Authentication](/auth) for possible authentication errors that might occur during this request.


# Flight Booking

Travu API lets you seamlessly add Flight ticket inventories and booking to your travel site or platform. Get access to all Flight operators across Nigeria, Africa.

{% hint style="warning" %}
The Travu API is still in beta, this documentation is a work in progress, feel free to send us your feedback at <okoye@travu.africa>
{% endhint %}

Travu API Service is Nigeria's only Flight aggregating service, its a **FREE** API service by **Mytrip Nigeria Limited**, which helps Developers, Creators and other Internet Companies extend their service coverage into the Public Flight ticketing sector, fast and easy. Power your Flight search of booking platform with the best global connectivity Flight inventory available in Nigeria.

We supply a One-Time connect API where real time inventories from Top Flight operators around the world could be  accessed and harnessed for Online booking on any Product category. Our Fast, Easy and Flexible Flight APIs directly connects you to all the inventory need to build a travel website or app on basis of your requirement, for existing OTA's in other other categories of travel, Our API lets you seamlessly add Flight ticket search and booking to your travel site or platform and get access to top Flight operators across Nigeria, Africa and the world at large. Your customers get great Facilities on our Flight API from any wherever in the world.

If you'll want to skip all this introduction and move straight to the main objective, then navigate to the next page;

{% content-ref url="/pages/-MdHO\_asELATq6qH3zBx" %}
[API Reference](/reference)
{% endcontent-ref %}

then;

{% content-ref url="/pages/-MdHT72MKm-AzSRfaL8G" %}
[Postman Collection](/postman)
{% endcontent-ref %}

then;

{% content-ref url="/pages/-MdHZ0gMrZvmmj024oQC" %}
[Authentication](/auth)
{% endcontent-ref %}

then;

{% content-ref url="/pages/-MdHancxAJPgHcTKtTcF" %}
[Get Bus Trips](/master-1/trips)
{% endcontent-ref %}

then;

{% content-ref url="/pages/-MdHarrhLndsweCVuV97" %}
[Request Bus Booking](/master-1/booking)
{% endcontent-ref %}

Otherwise, enjoy reading more about why we things you should use our services.

## FEATURES OF Travu API

Our Service includes Features such as:

### **WIDEST ROUTE COVERAGE**

We are fast growing into connecting more and more Flight operators in Nigeria, Africa and the world at large, having access to over 3,000+ Airlines running across 200+ Countries.

### **EASY TO USE DASHBOARD**

We put full the control into your hands with our ever improving dashboard where API Users can perfectly manage all their account facilities ranging from API Keys, wallet funding, transactions and booking records, statistics, account setting and many more. A very lightweight and transparent Dashboard to manage all your needs.

### **EASY TO USE API DOCUMENTATION**

On average, it takes 1-5 hours to actively connect our API which gives you access to all our available inventories, also providing you with simulated TEST inventories for your satisfaction.

### **AMAZING COMMISION (PRICING) RANGE**

We do our best to get sustainable commission rates from these Operator which is shared between US and our API users based on the various Airlines, on average we deliver upto 1% commission on every seat reserved.

### **LIGHTING SPEED**

We are running on dedicated high grade servers which helps improve delivery time, also utilizing amazing new technologies to help scale up processes by 10X.

### **DEDICATED SUPPORT**

We dedicated Our support engineers to API users, helping you all the way through integrations and running your business, we never leave your side.

### **WE DO THE EXTRA JOB**

We do not just stop at making Online bookings happen, we go the extra mile by making Customer Check-in Easy. Our integrations with these operators are directly into their various systems through several connections and are certainly validated with immediate alacrity, nevertheless we still have assigned officers at various terminals making sure your customers are getting accurate value and support for their bookings, giving them a perfect experience.

## **GETTING STARTED**

It's simple, kindly shoot an email to **<okoye@travu.africa>** with your request stating the below details;

1. Name of Business
2. Url/Link of Business
3. Why you need our service (eg. creating a new product or expanding your service options)
4. An active contact Number for further queries

Once this is done, be rest assured that an onboarding agent from Travu will get talking with you right away.

Moving to the Next page is our Detailed Documentation on how to Integrate our service.


# Get Flight List

This API Endpoint makes a POST request to the **Travu API** in other to get a response of **AVAILABLE FLIGHT TRIPS** from all our aggregated flight operators based on the requested **DEPARTURE**, **DESTINATION, DATE** etc.

## ENDPOINT URL

**REQUEST TYPE**: POST

**API BASE URL**: <https://access.mytrip.ng/api/v1/search_flight> (Coming soon)

{% hint style="warning" %}
Remember to Pass your Authorization Token for this request to go through, read about Authorization [here](/auth).
{% endhint %}

To build the payload you'll need the flight itinerary - which should include the origin(s), destination(s) and departure date(s) - and information about the passengers. Here's how we search for flights:

Our Supported Departure and Destination Strings to be used can be derived from the [Get List of Airports](/master-2/trips/get-list-of-airports) Endpoint;&#x20;

{% hint style="info" %}
`Here is an Extra endpoint to help you with this,` [Get List of Airports](/master-2/trips/get-list-of-airports)
{% endhint %}

## BODY PAYLOAD

The Body Payload is as below;

Payload Example for a one way ticket.

```json
{
  "type": "Oneway",
  "class": "Y",
  "adult": 1,
  "children": 0,
  "infant": 0,
  "currency": "NGN",
  "itineraries": [
      {
      "Departure": "LOS",
      "Destination": "ABV",
      "DepartureDate": "04/26/2023"
      }
  ]
}
```

Payload Example for a Return ticket.

<pre class="language-json"><code class="lang-json"><strong>{
</strong>  "type": "Return",
  "class": "Y",
  "adult": 1,
  "children": 0,
  "infant": 0,
  "currency": "NGN",
  "itineraries": [
      {
      "Departure": "LOS",
      "Destination": "ABV",
      "DepartureDate": "04/26/2023"
      },
      {
      "Departure": "ABV",
      "Destination": "LOS",
      "DepartureDate": "04/28/2023"
      }
  ]
}
</code></pre>

Payload Example for a Multi destination ticket, this supports between 2 to 6 destinations.

```json
{
  "type": "Multidestination",
  "class": "Y",
  "adult": 1,
  "children": 0,
  "infant": 0,
  "currency": "NGN",
  "itineraries": [
      {
      "Departure": "LOS",
      "Destination": "ABV",
      "DepartureDate": "04/26/2023"
      },
      {
      "Departure": "ABV",
      "Destination": "MAN",
      "DepartureDate": "04/28/2023"
      },
      {
      "Departure": "MAN",
      "Destination": "LOS",
      "DepartureDate": "04/30/2023"
      }
  ]
}
```

## RESPONSE

The Response for this request should bring the **TRIP DETAILS** in the below format if;

The `"type"` parameter is `"Oneway"` which should come with one objects in the `"Itineraries"` of Array.

```json
{
    "GUO": {
        "error": false,
        "message": "successful",
        "info": "Data Available",
        "data": [
            {
                "provider": {
                    "name": "GUO Transport",
                    "short_name": "GUO"
                },
                "boarding_at": "28",
                "trip_id": 96861,
                "trip_no": 450096861,
                "trip_date": "2021-07-10",
                "depature_time": "2018-04-24 08:04:00",
                "origin_id": "",
                "destination_id": 63,
                "narration": "UMUAHIA - LAGOS - AJAH",
                "fare": 6500,
                "total_seats": 15,
                "available_seats": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13,
                    14,
                    15
                ],
                "blocked_seats": [
                    2,
                    3
                ],
                "special_seats": [],
                "special_seats_fare": "",
                "order_id": "eef50d24",
                "departure_terminal": "UMUAHIA",
                "destination_terminal": "LAGOS - AJAH",
                "vehicle": "Hiace - 1st Bus (15)"
            },
            {
                "provider": {
                    "name": "GUO Transport",
                    "short_name": "GUO"
                },
                "trip_id": 96861,
                "trip_no": 450096861,
                "trip_date": "2021-07-10",
                "depature_time": "2018-04-24 08:04:00",
                "origin_id": "",
                "destination_id": 63,
                "narration": "UMUAHIA - LAGOS - AJAH",
                "fare": 7000,
                "total_seats": 15,
                "available_seats": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13,
                    14,
                    15
                ],
                "blocked_seats": [
                    2,
                    3
                ],
                "special_seats": [],
                "special_seats_fare": "",
                "order_id": "0e2c886c",
                "departure_terminal": "UMUAHIA",
                "destination_terminal": "LAGOS - AJAH",
                "vehicle": "Hiace - 1st Bus (15)"
            }
        ]
    },
    "ABC": {
        "error": true,
        "message": "failed",
        "info": "Terminals does not exist between states",
        "data": []
    }
}
```

The `"type"` parameter is `"Return"` which should come with one objects in the `"Itineraries"` of Array.

```json
{
    "error": false,
    "message": "successful",
    "info": "Data Available",
    "data": [
        {\o
            "provider": {
                "name": "ABC Transport",
                "short_name": "ABC"
            },
            "trip_id": 26528,
            "trip_no": 4,
            "trip_date": "2022-01-09",
            "departure_time": "09/01/2022 06:00",
            "origin_id": 13,
            "destination_id": 25,
            "narration": "GWAGWALADA TO LAGOS JIBOWU",
            "fare": 14350,
            "total_seats": 14,
            "available_seats": [
                0,
                10,
                11,
                12,
                13,
                14
            ],
            "blocked_seats": [],
            "special_seats": [],
            "special_seats_fare": "",
            "order_id": 20,
            "departure_terminal": "GWAGWALADA",
            "destination_terminal": "LAGOS JIBOWU",
            "vehicle": "2+2, Sprinter Service, AC, Non-Video",
            "boarding_at": "10",
            "departure_address": "Ground Floor wing B Kaita Plaza, by Mtnoffice cls toJeparo Hotel",
            "destination_address": "22 IKORODU ROAD JIBOWU"
        },
        {
            "provider": {
                "name": "GUO Transport",
                "short_name": "GUO"
            },
            "trip_id": 482850,
            "trip_no": 30482850,
            "trip_date": "2022-01-09",
            "departure_time": "09/01/2022 20:01",
            "origin_id": "",
            "destination_id": 64,
            "narration": "UTAKO - LAGOS - COKER",
            "fare": 10500,
            "total_seats": 59,
            "available_seats": [
                10,
                11,
                12,
                13,
                14
            ],
            "blocked_seats": [],
            "special_seats": [],
            "special_seats_fare": "",
            "order_id": "de5426cf",
            "departure_terminal": "UTAKO",
            "destination_terminal": "LAGOS - COKER",
            "vehicle": "Luxury - 1st Bus (59)",
            "boarding_at": "",
            "departure_address": "Gouba Plaza, Plot171, Ekukinam Street, Utako District, Abuja.",
            "destination_address": "LAGOS - COKER Terminal"
        }
    ]
}
```

The `"type"` parameter is `"Multidestination"` which should come with one objects in the `"Itineraries"` of Array, comes with a minimum of two and a maximum of six objects in the `"Itineraries"` of Array.

Reference to [Authentication](/auth) for possible authentication errors that might occur during this request.


# Get List of Airports

This is an api endpoint that supplies the full NAMES and STRINGS of departure and destination airports as supported by the Travu API.

This API Endpoint makes a GET request to the Travu API service in other to get a response containing the full state NAMES and STRINGS of airports as supported by the Travu API, which is used as the Departure and Destination in [Get Bus Trips](/master-1/trips#body-payload).

## ENDPOINT URL

**REQUEST TYPE**: GET

**LIVE & TEST BASE URL**: <https://api.travu.africa/api/v1/flight-airports>

## RESPONSE

The Response for this request should bring the **AIRPORT LIST** and **DETAILS** in the below format;

```json
[
    {
        "AirportCode": "HZO",
        "AirportName": "HO Airport (HZO)",
        "CityCountry": "HO, Ghana",
        "City": "HO",
        "Country": "Ghana"
    },
    {
        "AirportCode": "AZR",
        "AirportName": "Adrar Airport (AZR)",
        "CityCountry": "Adrar, Algeria",
        "City": "Adrar",
        "Country": "Algeria"
    },
    {
        "AirportCode": "ALG",
        "AirportName": "Algiers (ALG)",
        "CityCountry": "Algiers, Algeria",
        "City": "Algiers",
        "Country": "Algeria"
    },
    {
        "AirportCode": "AAE",
        "AirportName": "Annaba airport (AAE)",
        "CityCountry": "Annaba, Algeria",
        "City": "Annaba",
        "Country": "Algeria"
    },
    {
        "AirportCode": "BLJ",
        "AirportName": "Batna airport (BLJ)",
        "CityCountry": "Batna, Algeria",
        "City": "Batna",
        "Country": "Algeria"
    }
]
```


# Select Flight

This API Endpoint makes a **POST** request to the **Travu API** in other to make an itinerary selection request based on the selected option from the customer. itinerary get stale fairly quickly, and when they do, you are no longer able to book them. Once a customer has picked an itinerary that works for them, you should retrieve the itinerary to get the most up to date version. You should do this when the customer picks an itinerary before you ask for his full passenger details and payment information.&#x20;

To get the latest version of the offer, you can use the itinerary with the "Flight Select" endpoint:

## ENDPOINT URL

**REQUEST TYPE**: POST

**LIVE BASE URL**: <https://api.travu.africa/api/v1/flight-select>

**TEST BASE URL**: <https://api.travu.africa/test/api/v1/flight-select>

{% hint style="warning" %}
Remember to Pass your Authorization Token for this request to go through, read about Authorization [here](/auth).
{% endhint %}

## BODY PAYLOAD

The Body Payload is as below;

```json
{
  "id": "WAAAAB+LCAAAAAAABACrVgpOTSxKzvBOrVSyUvK2zClItogKyQ0IiTcs83MzyvULzAxU0lFyy8lMzyjxTAGqSUszMjRMMUjTTTVPS9U1sUwy0000szTQNU9NSk1MTTIxN7FIUaoFAB6R3kdYAAAA",
  "currency": "NGN"
}
```

## RESPONSE

The Response for the above request should bring the itinerary in the below format if successful;

```json
{
    "order_status": "confirmed",
    "order_id": "49008",
    "order_name": "Abiah Johnie",
    "order_email": "abiahjohnie@gmail.com",
    "phone_number": "09100000000",
    "order_amount": 13000,
    "trip_id": "96855",
    "origin_id": "45",
    "destination_id": "63",
    "order_ticket_date": "2021-07-03",
    "order_total_seat": 2,
    "order_seats": "1,2",
    "amount_per_seat": "6500.00",
    "order_number": "03410a4b",
    "vehicle_no": "1st Bus (15)",
    "narration": "UMUAHIA TO LAGOS - AJAH",
    "departure_terminal": "UMUAHIA",
    "destination_terminal": "LAGOS - AJAH",
    "seat_details": [
        {
            "fare": "6500.00",
            "title": "Mr",
            "age": "32",
            "sex": "M",
            "name": "Abiah Johnie",
            "email": "abiahjohnie@gmail.com",
            "phone": "09100000000",
            "blood": "A+",
            "next_of_kin": "Benjamin Johnnie",
            "next_of_kin_phone": "09000000000",
            "seat_number": "1"
        },
        {
            "fare": "6500.00",
            "title": "Mr",
            "age": "32",
            "sex": "M",
            "name": "Barnabas Johnie",
            "email": "bamanjab@gmail.com",
            "phone": "09057568594",
            "blood": "A+",
            "next_of_kin": "Miracle Johnnie",
            "next_of_kin_phone": "03000000000",
            "seat_number": "2"
        }
    ],
    "provider": "GUO"
}
```

Reference to [Authentication](/auth) for possible authentication errors that might occur during this request.


# Tentative Flight Booking

This API Endpoint makes a **POST** request to the Travu Booking service in other to make a **TENTAIVE BOOKING** request to to the associated airline operators based on the selected itinerary. We are finally ready to make the tentative booking, in the Travu API, this is called tentative booking. You'll only need 3 things at this point:

* The ID of the itinerary you'd like to book
* Basic necessary information about the passenger(s)

## ENDPOINT URL

**REQUEST TYPE**: POST

**LIVE BASE URL**: <https://api.travu.africa/api/v1/flight-booking>

**TEST BASE URL**: <https://api.travu.africa/test/api/v1/flight-booking>

{% hint style="warning" %}
Remember to Pass your Authorization Token for this request to go through, read about Authorization [here](/auth).
{% endhint %}

## BODY PAYLOAD

The Body Payload is as below if;

A single passenger is linked to the flight booking.

<pre class="language-json"><code class="lang-json"><strong>{
</strong>  "passenger_type": "Adult",
  "firstname": "Abijah",
  "middlename": "Bamanja",
  "lastname": "Johnnie",
  "dob": "09/04/1998",
  "phone": "+2348102950347",
  "passport_number": "a0967",
  "expiry_date": "09/14/2020",
  "passport_country": "Lagos",
  "gender": "Male",
  "title": "Mr",
  "email": "abijahjohnnie@gmail.com",
  "address": "No 4 bama crescent",
  "country": "Nigeria",
  "country_code": "NG",
  "city": "Lagos",
  "postal_code": "100001",
  "id": "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",
  "booking_id": "2304230400001",
  "currency": "NGN",
  "total_amount": 0
}
</code></pre>

Multiple passengers are linked to the flight booking.

```json
{
  "passenger_type": "Adult",
  "firstname": "Abijah",
  "middlename": "Bamanja",
  "lastname": "Johnnie",
  "dob": "09/04/1998",
  "phone": "+2348102950347",
  "passport_number": "a0967",
  "expiry_date": "09/14/2020",
  "passport_country": "Lagos",
  "gender": "Male",
  "title": "Mr",
  "email": "abijahjohnnie@gmail.com",
  "address": "No 4 bama crescent",
  "country": "Nigeria",
  "country_code": "NG",
  "city": "Lagos",
  "postal_code": "100001",
  "id": "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",
  "booking_id": "2304230400001",
  "currency": "NGN",
  "total_amount": 0
}
```

## RESPONSE

The Response for the above request should bring the **TENTATIVE BOOKED DETAILS** in the below format if successful;

```json
{
    "order_status": "confirmed",
    "order_id": "49008",
    "order_name": "Abiah Johnie",
    "order_email": "abiahjohnie@gmail.com",
    "phone_number": "09100000000",
    "order_amount": 13000,
    "trip_id": "96855",
    "origin_id": "45",
    "destination_id": "63",
    "order_ticket_date": "2021-07-03",
    "order_total_seat": 2,
    "order_seats": "1,2",
    "amount_per_seat": "6500.00",
    "order_number": "03410a4b",
    "vehicle_no": "1st Bus (15)",
    "narration": "UMUAHIA TO LAGOS - AJAH",
    "departure_terminal": "UMUAHIA",
    "destination_terminal": "LAGOS - AJAH",
    "seat_details": [
        {
            "fare": "6500.00",
            "title": "Mr",
            "age": "32",
            "sex": "M",
            "name": "Abiah Johnie",
            "email": "abiahjohnie@gmail.com",
            "phone": "09100000000",
            "blood": "A+",
            "next_of_kin": "Benjamin Johnnie",
            "next_of_kin_phone": "09000000000",
            "seat_number": "1"
        },
        {
            "fare": "6500.00",
            "title": "Mr",
            "age": "32",
            "sex": "M",
            "name": "Barnabas Johnie",
            "email": "bamanjab@gmail.com",
            "phone": "09057568594",
            "blood": "A+",
            "next_of_kin": "Miracle Johnnie",
            "next_of_kin_phone": "03000000000",
            "seat_number": "2"
        }
    ],
    "provider": "GUO"
}
```

Reference to [Authentication](/auth) for possible authentication errors that might occur during this request.


# Complete Flight Ticketing

This API Endpoint makes a **POST** request to the Travu Booking service in other to make a **FINAL BOOKING** request to to the associated airline operators based on the selected itinerary. We are finally ready to make the booking, in the Travu API, this is called a Flight Ticketing.

This makes an actual ticket reservation for your customer, obviously after you must have collected payment from customer.

## ENDPOINT URL

**REQUEST TYPE**: POST

**LIVE BASE URL**: <https://api.travu.africa/api/v1/flight-ticket>

**TEST BASE URL**: <https://api.travu.africa/test/api/v1/flight-ticket>

{% hint style="warning" %}
Remember to Pass your Authorization Token for this request to go through, read about Authorization [here](/auth).
{% endhint %}

## BODY PAYLOAD

The Body Payload is as below;

```json
{
  "booking_id": "2304230400001",
  "pnr_number": "KVS34W"
}
```

## RESPONSE

The Response for the above request should bring the **BOOKED DETAILS/RECEIPT** in the below format if successful;

```json
{
    "order_status": "confirmed",
    "order_id": "49008",
    "order_name": "Abiah Johnie",
    "order_email": "abiahjohnie@gmail.com",
    "phone_number": "09100000000",
    "order_amount": 13000,
    "trip_id": "96855",
    "origin_id": "45",
    "destination_id": "63",
    "order_ticket_date": "2021-07-03",
    "order_total_seat": 2,
    "order_seats": "1,2",
    "amount_per_seat": "6500.00",
    "order_number": "03410a4b",
    "vehicle_no": "1st Bus (15)",
    "narration": "UMUAHIA TO LAGOS - AJAH",
    "departure_terminal": "UMUAHIA",
    "destination_terminal": "LAGOS - AJAH",
    "seat_details": [
        {
            "fare": "6500.00",
            "title": "Mr",
            "age": "32",
            "sex": "M",
            "name": "Abiah Johnie",
            "email": "abiahjohnie@gmail.com",
            "phone": "09100000000",
            "blood": "A+",
            "next_of_kin": "Benjamin Johnnie",
            "next_of_kin_phone": "09000000000",
            "seat_number": "1"
        },
        {
            "fare": "6500.00",
            "title": "Mr",
            "age": "32",
            "sex": "M",
            "name": "Barnabas Johnie",
            "email": "bamanjab@gmail.com",
            "phone": "09057568594",
            "blood": "A+",
            "next_of_kin": "Miracle Johnnie",
            "next_of_kin_phone": "03000000000",
            "seat_number": "2"
        }
    ],
    "provider": "GUO"
}
```

{% hint style="info" %}
The "status" of a transaction could be confirmed, failed or canceled.
{% endhint %}

Reference to [Authentication](/auth) for possible authentication errors that might occur during this request.


# Cancelling an order

Cancellation is not yet supported. It is recommended to manually request a cancellation quote by contacting our support team with your request. The cancellation will then be handled by a member of our team.


# Get Booking Details

This is an endpoint that provides the API user access to real-time information of a particular booking.

This API Endpoint makes a GET request to the Travu service in other to get a response of **BOOKING DETAILS** by simply passing the booking number with authorization, this can also be used to reconfirm the status of any ticket.

## ENDPOINT URL

**REQUEST TYPE**: GET

**LIVE URL**: <https://api.travu.africa/api/v1/booking/booking_number>

**TEST URL**: [https://api.travu.africa/test/api/v1/booking/booking\_number](https://api.travu.africa/api/v1/booking/booking_number)

{% hint style="warning" %}
Remember to Pass your Authorization Token for this request to go through, read about Authorization [here](/auth).
{% endhint %}

## BODY PAYLOAD

This is a GET request that does not expect a body, simply authorize appropriately and pass the "Booking number" through the base URL. We usually return a `"booking_number"`(bus) and `"booking_id"` (flight) after a successful booking.

## RESPONSE

The Response for this request should bring the **BOOKING DETAILS** in the below format;

```json
{
    "status": 200,
    "error": false,
    "message": "Data fetched successfully",
    "data": {
        "id": 16,
        "user_id": "7",
        "provider": "GUO",
        "amount": "14000",
        "charged_amount": "13440",
        "status": "confirmed",
        "booking_number": "fe564148",
        "details": "{\"passengers\":[{\"fare\":\"6500.00\",\"title\":\"Mr\",\"age\":\"Adult\",\"sex\":\"M\",\"name\":\"Abijah Johnnie\",\"email\":\"abijahjohnnie@gmail.com\",\"phone\":\"07057568594\",\"next_of_kin\":\"Benjamin Johnnie\",\"next_of_kin_phone\":\"09000000000\",\"seat_number\":\"4\"},{\"fare\":\"6500.00\",\"title\":\"Mr\",\"age\":\"Child\",\"sex\":\"M\",\"name\":\"Barnabas Johnnie\",\"email\":\"bamanjab@gmail.com\",\"phone\":\"09057568594\",\"next_of_kin\":\"Miracle Johnnie\",\"next_of_kin_phone\":\"03000000000\",\"seat_number\":\"5\"}],\"narration\":\"UMUAHIA TO LAGOS - AJAH\",\"vehicle_no\":\"1st Bus (15)\",\"order_ticket_date\":\"2021-07-09\"}",
        "created_at": "2021-07-09T09:33:44.000000Z",
        "updated_at": "2021-07-09T09:33:44.000000Z"
    }
}
```

{% hint style="info" %}
The "status" of a transaction could be confirmed, failed or canceled.
{% endhint %}

Reference to [Authentication](/auth) for possible authentication errors that might occur during this request.


# Get Bookings History

This is an endpoint that provides the API user access to real-time information of all the bookings initiated via their authorization/account.

## BODY PAYLOAD

This is a GET request that does not expect a body, simply authorize appropriately and send.

## ENDPOINT URL

**REQUEST TYPE**: GET

**LIVE URL**: <https://api.travu.africa/api/v1/bookings>

**TEST URL**: <https://api.travu.africa/test/api/v1/bookings>

{% hint style="warning" %}
Remember to Pass your Authorization Token for this request to go through, read about Authorization [here](/auth).
{% endhint %}

## RESPONSE

The Response for this request should bring the **BOOKING DETAILS** in the below format;

```json
{
    "status": 200,
    "error": false,
    "message": "Data fetched successfully",
    "data": [
        {
            "id": 16,
            "user_id": "7",
            "provider": "GUO",
            "amount": "14000",
            "charged_amount": "13440",
            "status": "confirmed",
            "booking_number": "fe564148",
            "details": "{\"passengers\":[{\"fare\":\"6500.00\",\"title\":\"Mr\",\"age\":\"Adult\",\"sex\":\"M\",\"name\":\"Abijah Johnnie\",\"email\":\"abijahjohnnie@gmail.com\",\"phone\":\"07057568594\",\"next_of_kin\":\"Benjamin Johnnie\",\"next_of_kin_phone\":\"09000000000\",\"seat_number\":\"4\"},{\"fare\":\"6500.00\",\"title\":\"Mr\",\"age\":\"Child\",\"sex\":\"M\",\"name\":\"Barnabas Johnnie\",\"email\":\"bamanjab@gmail.com\",\"phone\":\"09057568594\",\"next_of_kin\":\"Miracle Johnnie\",\"next_of_kin_phone\":\"03000000000\",\"seat_number\":\"5\"}],\"narration\":\"UMUAHIA TO LAGOS - AJAH\",\"vehicle_no\":\"1st Bus (15)\",\"order_ticket_date\":\"2021-07-09\"}",
            "created_at": "2021-07-09T09:33:44.000000Z",
            "updated_at": "2021-07-09T09:33:44.000000Z"
        },
        {
            "id": 17,
            "user_id": "7",
            "provider": "GUO",
            "amount": "14000",
            "charged_amount": "13440",
            "status": "confirmed",
            "booking_number": "fe564148",
            "details": "{\"passengers\":[{\"fare\":\"6500.00\",\"title\":\"Mr\",\"age\":\"Adult\",\"sex\":\"M\",\"name\":\"Abijah Johnnie\",\"email\":\"abijahjohnnie@gmail.com\",\"phone\":\"07057568594\",\"next_of_kin\":\"Benjamin Johnnie\",\"next_of_kin_phone\":\"09000000000\",\"seat_number\":\"4\"},{\"fare\":\"6500.00\",\"title\":\"Mr\",\"age\":\"Child\",\"sex\":\"M\",\"name\":\"Barnabas Johnnie\",\"email\":\"bamanjab@gmail.com\",\"phone\":\"09057568594\",\"next_of_kin\":\"Miracle Johnnie\",\"next_of_kin_phone\":\"03000000000\",\"seat_number\":\"5\"}],\"narration\":\"UMUAHIA TO LAGOS - AJAH\",\"vehicle_no\":\"1st Bus (15)\",\"order_ticket_date\":\"2021-07-09\"}",
            "created_at": "2021-07-09T09:34:03.000000Z",
            "updated_at": "2021-07-09T09:34:03.000000Z"
        },
        {
            "id": 18,
            "user_id": "7",
            "provider": "GUO",
            "amount": "14000",
            "charged_amount": "13440",
            "status": "confirmed",
            "booking_number": "fe564148",
            "details": "{\"passengers\":[{\"fare\":\"6500.00\",\"title\":\"Mr\",\"age\":\"Adult\",\"sex\":\"M\",\"name\":\"Abijah Johnnie\",\"email\":\"abijahjohnnie@gmail.com\",\"phone\":\"07057568594\",\"next_of_kin\":\"Benjamin Johnnie\",\"next_of_kin_phone\":\"09000000000\",\"seat_number\":\"4\"},{\"fare\":\"6500.00\",\"title\":\"Mr\",\"age\":\"Child\",\"sex\":\"M\",\"name\":\"Barnabas Johnnie\",\"email\":\"bamanjab@gmail.com\",\"phone\":\"09057568594\",\"next_of_kin\":\"Miracle Johnnie\",\"next_of_kin_phone\":\"03000000000\",\"seat_number\":\"5\"}],\"narration\":\"UMUAHIA TO LAGOS - AJAH\",\"vehicle_no\":\"1st Bus (15)\",\"order_ticket_date\":\"2021-07-09\"}",
            "created_at": "2021-07-09T09:43:23.000000Z",
            "updated_at": "2021-07-09T09:43:23.000000Z"
        },
        {
            "id": 19,
            "user_id": "7",
            "provider": "GUO",
            "amount": "14000",
            "charged_amount": "13440",
            "status": "confirmed",
            "booking_number": "fe564148",
            "details": "{\"passengers\":[{\"fare\":\"6500.00\",\"title\":\"Mr\",\"age\":\"Adult\",\"sex\":\"M\",\"name\":\"Abijah Johnnie\",\"email\":\"abijahjohnnie@gmail.com\",\"phone\":\"07057568594\",\"next_of_kin\":\"Benjamin Johnnie\",\"next_of_kin_phone\":\"09000000000\",\"seat_number\":\"4\"},{\"fare\":\"6500.00\",\"title\":\"Mr\",\"age\":\"Child\",\"sex\":\"M\",\"name\":\"Barnabas Johnnie\",\"email\":\"bamanjab@gmail.com\",\"phone\":\"09057568594\",\"next_of_kin\":\"Miracle Johnnie\",\"next_of_kin_phone\":\"03000000000\",\"seat_number\":\"5\"}],\"narration\":\"UMUAHIA TO LAGOS - AJAH\",\"vehicle_no\":\"1st Bus (15)\",\"order_ticket_date\":\"2021-07-09\"}",
            "created_at": "2021-07-09T09:44:00.000000Z",
            "updated_at": "2021-07-09T09:44:00.000000Z"
        },
        {
            "id": 20,
            "user_id": "7",
            "provider": "GUO",
            "amount": "14000",
            "charged_amount": "13440",
            "status": "confirmed",
            "booking_number": "fe564148",
            "details": "{\"passengers\":[{\"fare\":\"6500.00\",\"title\":\"Mr\",\"age\":\"Adult\",\"sex\":\"M\",\"name\":\"Abijah Johnnie\",\"email\":\"abijahjohnnie@gmail.com\",\"phone\":\"07057568594\",\"next_of_kin\":\"Benjamin Johnnie\",\"next_of_kin_phone\":\"09000000000\",\"seat_number\":\"4\"},{\"fare\":\"6500.00\",\"title\":\"Mr\",\"age\":\"Child\",\"sex\":\"M\",\"name\":\"Barnabhas Johnnie\",\"email\":\"bamanjab@gmail.com\",\"phone\":\"09057568594\",\"next_of_kin\":\"Miracle Johnnie\",\"next_of_kin_phone\":\"03000000000\",\"seat_number\":\"14\"}],\"narration\":\"UMUAHIA TO LAGOS - AJAH\",\"vehicle_no\":\"1st Bus (15)\",\"order_ticket_date\":\"2021-07-09\"}",
            "created_at": "2021-07-09T10:00:29.000000Z",
            "updated_at": "2021-07-09T10:00:29.000000Z"
        }
    ]
}
```

{% hint style="info" %}
The "status" of a transaction could be confirmed, failed or canceled.
{% endhint %}

Reference to [Authentication](/auth) for possible authentication errors that might occur during this request.


# Response Codes

This section contains the response codes you will likely get from the MytripAPI. The “code” parameter would usually contain the following response.

| **Response Code**                   | Meaning                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | Note |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---- |
| 200 (OK)                            | The request succeeded.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |      |
| 401 (Unauthorized)                  | Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.                                                                                                                                                                                                                                                                                                                                                                                                        |      |
| 403 (Forbidden)                     | The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401 Unauthorized, the client's identity is known to the server.                                                                                                                                                                                                                                                                                                                                                                        |      |
| 404 (Not Found)                     | The server can not find the requested resource. In the browser, this means the URL is not recognized. In an API, this can also mean that the endpoint is valid but the resource itself does not exist. Servers may also send this response instead of 403 Forbidden to hide the existence of a resource from an unauthorized client. This response code is probably the most well known due to its frequent occurrence on the web.                                                                                                                                                          |      |
| 408 (Request Timeout)               | This response is sent on an idle connection by some servers, even without any previous request by the client. It means that the server would like to shut down this unused connection. This response is used much more since some browsers, like Chrome, Firefox 27+, or IE9, use HTTP pre-connection mechanisms to speed up surfing. Also note that some servers merely shut down the connection without sending this message.                                                                                                                                                             |      |
| 422 (Unprocessable Entity) (WebDAV) | The request was well-formed but was unable to be followed due to semantic errors. For example, in a case where a parameter receives an alphabet value instead of number.                                                                                                                                                                                                                                                                                                                                                                                                                    |      |
| 500 (Internal Server Error)         | The server has encountered a situation it does not know how to handle.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |      |
| 501 (Not Implemented)               | The request method is not supported by the server and cannot be handled. The only methods that servers are required to support (and therefore that must not return this code) are GET and HEAD.                                                                                                                                                                                                                                                                                                                                                                                             |      |
| 502 (Bad Gateway)                   | This error response means that the server, while working as a gateway to get a response needed to handle the request, got an invalid response.                                                                                                                                                                                                                                                                                                                                                                                                                                              |      |
| 503 (Service Unavailable)           | The server is not ready to handle the request. Common causes are a server that is down for maintenance or that is overloaded. Note that together with this response, a user-friendly page explaining the problem should be sent. This response should be used for temporary conditions and the Retry-After HTTP header should, if possible, contain the estimated time before the recovery of the service. The webmaster must also take care about the caching-related headers that are sent along with this response, as these temporary condition responses should usually not be cached. |      |
| 504 (Gateway Timeout)               | This error response is given when the server is acting as a gateway and cannot get a response in time.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |      |

In a case where you encounter other status codes that are not listed here, do well to check [**HERE** ](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)for possible meaning.


# Travu Terms & Policies

#### TERMS OF SERVICE & POLICIES

1. BUS/FLIGHT
   1. ROLE OF Travu Digital Services Ltd
      1. Travu Digital Services Ltd only provides a technology platform that connects intending travelers with BUS/FLIGHT operators. It doesn’t operate any BUS/FLIGHT or offer the service of transportation to the User. Mytrip.ng also doesn’t act as an agent of any BUS/FLIGHT operator in the process of providing the above-mentioned technology platform services.
      2. Travu Digital Services Ltd acts as a facilitator connecting intending customers to BUS/FLIGHT operators offering sale of tickets. Accordingly, the contract of sale of services on the App/Website/Bot/Other Platforms is strictly a bipartite contract between the User and the BUS/FLIGHT operator listed on the App/Website/Bot/Other Platforms.
      3. The BUS/FLIGHT ticket booking voucher which Travu Digital Services Ltd issues to a User is solely based on the information provided or updated by the BUS/FLIGHT operator regarding the seat availability.
      4. The amenities, services, routes, fares, schedule, BUS/FLIGHT type, seat availability and any other details pertaining to the BUS/FLIGHT service are provided by the respective BUS/FLIGHT operator and Travu Digital Services Ltd has no control over such information provided by the BUS/FLIGHT operator.
   2. LIMITATION OF LIABILITY OF Travu Digital Services Ltd\
      In its role as a technology platform to facilitate transactions between the BUS/FLIGHT operators and the Users, Travu Digital Services Ltd shall not be responsible for the operations of the BUS/FLIGHT operator including, but not limited to the following:
      1. Timely departure or arrival of the BUS/FLIGHT ;
      2. The conduct of BUS/FLIGHT operator's employees, representatives or agents;
      3. The condition of the BUS/FLIGHT , seats etc. not being up to the customer's expectation or as per the description provided by the BUS/FLIGHT operator;
      4. Cancellation of the trip due to any reasons;
      5. Loss or damage of the baggage of the customer;
      6. The BUS/FLIGHT operator changing a customer's seat for any reason whatsoever;
      7. BUS/FLIGHT operator informing a wrong boarding point for the issuance of the booking confirmation voucher, or changing such boarding point eventually with or without any notification to Travu.africa or the User;
      8. BUS/FLIGHT operator using a separate pick-up vehicle to transport the User from the designated boarding point to the actual place of departure of the BUS/FLIGHT .
   3. RESPONSIBILITIES OF THE USERS
      1. Users are advised to call Travu.africa or the BUS/FLIGHT operator to find out the exact boarding point, or any information which they may need for the purpose of boarding or travel in that trip.
      2. At the time of boarding the BUS/FLIGHT , Users shall furnish a copy of the ticket, and any valid identity proof like NIN card, passport, PAN card or voter identification card or any other identity proof issued by a government authority.
      3. Users are required to reach the boarding place at least 30 minutes before the scheduled departure time.
      4. All tickets issued shall be non-transferable.
   4. CANCELLATION OF TICKET
      1. Cancellation of tickets can be done by calling on the customer care number;
      2. Cancelations are made possible from operators and not Travu.africa
      3. Any cancellation is subject to such cancellation charges as mentioned on the ticket.
      4. User needs to compulsorily obtain a BUS/FLIGHT ticket at the regular fare in case a child above the age of 5 years is accompanied by them, unless otherwise a particular BUS/FLIGHT operator specifies otherwise in their terms and conditions.
2. REFUNDS
   1. Travu.africa is only a facilitator and any refund for any service(s) which are not delivered by the service provider/Independent Contractors or for any reason for which the User is entitled for a refund is subject to Travu.africa receiving the amount from the said service provider. User acknowledges that Travu.africa shall not be held liable for any delay in refund or non-refund of the amount from the respective service provider or Independent Contractors of Travu.africa. In such events the User shall directly approach the service provider for any claims.
   2. In case the User makes any changes in their reservation, Travu.africa shall not refund or pay compensation in any manner whatsoever. The User would also be liable to pay any additional sum that is required to be paid consequent to the aforesaid changes made in the reservation.
   3. In the event of any delay in the refund beyond the period specified herein, the entire liability of Travu.africa shall be refund of the said amount.
   4. PAYMENT FOR BOOKING AND ANY ADDITIONAL CHARGES
      1. FULL PAYMENT: Payment will be made in full amount to Travu.africa during the booking. Such total booking amount includes the main fare, applicable taxes including GST as may be applicable as per local laws, and any additional booking fee, service fee or convenience fee charged by Travu.africa.
      2. Expenses like toll charges, permit charges, extra package charge, parking charges, entry fees, Service Tax & any other Government Tax as per Government guidelines are to be borne by the User and paid directly to the driver.
      3. The excess Driver Bata wherever applicable has to be paid directly to the driver.
3. USER’S RESPONSIBILITY
   1. The BUS/FLIGHT operator shall solely be liable for compliance of all laws including but not limited to all applicable regulations, guidelines or directions enacted or issued by the Federal/State Government or relevant State Governments. Any prosecution arising out of the contravention of such laws, rules, regulations, guidelines including directives on fare control from respective regulators or directions including but not limited to fines or penalties shall be borne by the BUS/FLIGHT operator. The User agrees to take up any grievance resulting from cancellation or any deficiency in services due to any action of the enforcement agencies arising with the BUS/FLIGHT operator.
   2. Users are advised to check the description of the services and products carefully before making a booking. User(s) agree to be bound by all the conditions as contained in booking confirmation or as laid out in the confirmed booking voucher. These conditions are also to be read in consonance with the User Agreement.
   3. If a User intends to make a booking on behalf of another person, it shall be the responsibility of the User to inform such person about the terms of this Agreement, including all rules and restrictions applicable thereto.
   4. The User undertakes to abide by all procedures and guidelines, as modified from time to time, in connection with the use of the services available through Travu.africa. The User further undertakes to comply with all applicable laws, regulations, orders, directions etc. issued by either the Federal Government, State Government, LGA Authorities or any other statutory body empowered to do so w\.r.t use of services or for each transaction.
   5. The services are provided on an "as is" and "as available" basis. Travu.africa may change the features or functionality of the services being provided at any time, in its sole discretion, without any prior notice. Travu.africa expressly disclaims all warranties of any kind, whether express or implied, including, but not limited to the implied warranties of merchantability, reasonably fit for all purposes. No advice or information, whether oral or written, which the User obtains from Travu.africa or through the services opted shall create any warranty not expressly made herein or in the terms and conditions of the services.
   6. User also authorizes Travu.africa's representative to contact such user over phone, message and email. This consent shall supersede any preferences set by such User through national customer preference register (NCPR) or any other similar preferences.
4. SECURITY AND ACCOUNT RELATED INFORMATION:
   1. While registering on the App/Website/Bot/Other Platforms, the User will have to choose a password to access that User’s account and User shall be solely responsible for maintaining the confidentiality of both the password and the account as well as for all activities on the account. It is the duty of the User to notify Travu.africa immediately in writing of any unauthorized use of their password or account or any other breach of security. Travu.africa will not be liable for any loss that may be incurred by the User as a result of unauthorized use of the password or account, either with or without the User’s knowledge. The User shall not use anyone else's account at any time.
   2. User understands that any information that is provided to this Platform may be read or intercepted by others due to any breach of security at the User’s end.
   3. Travu.africa keeps all the data in relation to credit card, debit card, bank information etc. secured and in an encrypted form in compliance with the applicable laws and regulations. However, for cases of fraud detection, offering bookings on credit (finance) etc., Travu.africa may at times verify certain information of its Users like their credit score, as and when required
   4. Travu.africa adopts the best industry standard to secure the information as provided by the User. However, Mytrip.ng cannot guarantee that there will never be any security breach of its systems which may have an impact on User’s information too.
   5. The data of the User as available with Travu.africa may be shared with concerned law enforcement agencies for any lawful or investigation purpose without the consent of the User.
5. FEES AND PAYMENT
   1. In addition to the cost of booking as charged by the Service Providers, Travu.africa reserves the right to charge certain fees in the nature of convenience fees or service fees. Travu.africa further reserves the right to alter any and all fees from time to time. Any such additional fees, including fee towards any modifications thereof, will be displayed to the User before confirming the booking or collecting the payment from such User.
   2. In cases of short charging of the booking amount, taxes, statutory fee, convenience fee etc., owing to any technical error or other reason, Travu.africa shall reserve the right to deduct, charge or claim the balance amount from the User and the User shall pay such balance amount to Travu.africa. In cases where the short charge is claimed prior to the utilization of the booking, Travu.africa will be at liberty to cancel such bookings if the amount is not paid before the utilization date.
   3. Any increase in the price charged by Travu.africa on account of change in rate of taxes or imposition of new taxes, levies by Government shall have to be borne by the User. Such imposition of taxes, levies may be without prior notice and could also be retrospective but will always be as per applicable law.
   4. In the rare circumstance of a booking not getting confirmed for any reason whatsoever, Travu.africa will process the refund of the booking amount paid by the User and intimate the User about the same. Travu.africa is not under any obligation to provide an alternate booking in lieu of or to compensate or replace the unconfirmed booking. All subsequent bookings will be treated as new transactions. Any applicable refund will be processed as per the defined policies of the service provider and Travu.africa as the case may be.
   5. The User shall be completely responsible for all charges, fees, duties, taxes, and assessments arising out of the use of the service, as per the applicable laws
   6. The User agrees and understands that all payments shall only be made to bank accounts of Travu.africa. Travu.africa or its agents, representatives or employees shall never ask a customer to transfer money to any private account or to an account not held in the name of Travu.africa. The User agrees that if that user transfers any amount against any booking or transaction to any bank account that is not legitimately held by Mytrip.ng or to any personal account of any person, Travu.africa shall not be held liable for the same. User shall not hold any right to recover from Travu.africa any amount which is transferred by the User to any third party.
   7. The User will not share his personal sensitive information like credit/debit card number, CVV, OTP, card expiry date, user IDs, passwords etc. with any person including the agents, employees or representatives of Travu.africa. The User shall immediately inform Travu.africa if such details are demanded by any of its agents’ employees or representatives. Travu.africa shall not be liable for any loss that the User incurs for sharing the aforesaid details.
   8. Refunds, if any, on cancelled bookings will always be processed to the respective wallet, bank account or the banking instrument (credit card, wallet etc.) from which payment was made for that booking.
   9. Booking(s) made by the User through Travu.africa are subject to the applicable cancellation policy as set out on the booking page or as communicated to the customers in writing.
6. Travu.africa Wallet: Travu.africa may at its sole discretion, provide the facility to transact through an online Travu.africa wallet (“Wallet") to its registered users with the following features:
   1. Wrongfully debited amounts due to failed ticket booking attempts may be refunded back to the Wallet balance.
   2. The present form and format of the Wallet, issued by Travu.africa to its Customers, is modelled on a closed system prepaid payment instrument.
   3. By choosing the option to maintain the Wallet with the Company, you agree to comply with the aforesaid terms and conditions.
   4. The Company reserves the right to suspend/discontinue Wallet scheme to customers at any time, for any cause, including, but not limited to, for any violation of the Terms and Conditions mentioned herein by the Wallet user or to comply with any rules, regulations, orders, directions, notifications issued by any regulatory authority.
   5. The Company makes no express or implied warranty, guarantee, representation or undertaking whatsoever regarding the Services, which are not expressly mentioned herein.
   6. The Company may at its sole discretion change, by addition or deletion, these Terms and Conditions.
7. USAGE OF THE MOBILE NUMBER, COMMUNICATION DETAILS OF THE USER BY Travu.africa
   1. Travu.africa will send booking confirmation, itinerary information, cancellation, payment confirmation, refund status, schedule change or any such other information relevant for the transaction or booking made by the User, via SMS, internet-based messaging applications like WhatsApp, voice call, e-mail or any other alternate communication detail provided by the User at the time of booking.
   2. Travu.africa may also contact the User through the modes mentioned above for any pending or failed bookings, to know the preference of the User for concluding the booking and also to help the User for the same.
   3. The User hereby unconditionally consents that such communications via SMS, internet-based messaging applications like WhatsApp, voice call, email or any other mode by Travu.africa are:
      1. upon the request and authorization of the User;
      2. ‘transactional’ and not an ‘unsolicited commercial communication’ as per the guidelines of Nigerian Communications Commission (NCC).
   4. The User will indemnify Travu.africa against all types of losses and damages incurred by Travu.africa due to any action taken by NCC, Access Providers (as per NCC regulations) or any other authority due to any erroneous complaint raised by the User on Travu.africa with respect to the communications mentioned above or due to a wrong number or email id being provided by the User for any reason whatsoever.
8. INSURANCE
   1. Unless explicitly provided by Travu.africa in any specific service or deliverable, obtaining sufficient insurance coverage is the obligation of the User. In no case Mytrip.ng shall accept any claims arising out of such scenarios.
   2. Insurance, if any provided as a part of the service or product by Travu.africa shall be as per the terms and conditions of the third-party insurance company. Travu.africa merely acts as a facilitator in connecting the User with insurance company. The User shall contact the insurance company directly for any claims or disputes. Mytrip.ng shall not be held liable in case of partial acceptance or denial of the claims by the insurance company.
9. FORCE MAJEURE
   1. There can be exceptional circumstances where Travu.africa and / or the Service Providers may be unable to honor the confirmed bookings due to various reasons like act of God, labor unrest, insolvency, business exigencies, government decisions, terrorist activity, any operational and technical issues, route etc. or any other reason beyond the control of Travu.africa. If Travu.africa has advance knowledge of any such situations where dishonor of bookings may happen, it will make its best efforts to provide similar alternative to the User or refund the booking amount after deducting applicable service charges, if supported and refunded by that respective service operators. The User agrees that Mytrip.ng being merely a facilitator of the services and products booked, cannot be held responsible for any such Force Majeure circumstance. The User has to contact the Service Provider directly for any further resolutions and refunds.
   2. The User agrees that in the event of non-confirmation of booking due to any technical reasons (like network downtime, disconnection with third party platforms such as payment gateways, banks etc.) or any other similar failures, Travu.africa’s obligation shall be limited refunding the booking amount excluding payment fee if any, received from the customer. Such refund shall completely discharge Travu.africa from all liabilities with respect to that transaction. Additional liabilities, if any, shall be borne by the User.
   3. In no event shall Travu.africa and be liable for any direct, indirect, punitive, incidental, special or consequential damages, and any other damages like damages for loss of use, data or profits, arising out of or in any way connected with the use or performance of the App/Website/Bot/Other Platforms or any other Sales Channel.
10. ADVERTISERS ON Travu.africa, AND LINKED App/Website/Bot/Other PlatformsS
    1. The App/Website/Bot/Other Platforms may contain links to third party App/Website/Bot/Other Platforms. Travu.africa does not control such App/Website/Bot/Other Platforms and is not responsible for its contents. If a User accesses any third-party App/Website/Bot/Other Platforms, the same shall be done entirely at the User’s risk and Mytrip.ng shall assume no liability for the same.
    2. Travu.africa is not responsible for any errors, omissions or representations on any of its pages, links or any linked App/Website/Bot/Other Platforms pages to the extent such information is updated or provided directly by the Service Providers or the advertisers.
    3. Travu.africa does not endorse any advertisers on its App/Website/Bot/Other Platforms, or any linked sites in any manner. The Users are requested to verify the accuracy of all information provided on the third-party web pages.
    4. The linked sites are not under the control of Travu.africa and hence Mytrip.ng is not responsible for the contents of any linked site(s) or any further links on such site(s), or any changes or updates to such sites. Mytrip.ng is providing these links to the Users only as a convenience.
11. RIGHT TO REFUSE
    1. Right to Refusal by Mytrip.ng:
       1. Mytrip.ng at its sole discretion reserves the right to not accept any booking without assigning any reason thereof.
       2. Mytrip.ng will not provide any service or share confirmed booking details till such time the complete consideration is received from the User
       3. In addition to other remedies and recourse available to Mytrip.ng under this User Agreement or under applicable law, Mytrip.ng may limit the User's activity, warn other users of the User's actions, immediately suspend or terminate the User's registration, or refuse to provide the User with access to the App/Website/Bot/Other Platforms if:
          1. The User is in breach of this User Agreement; or
          2. Mytrip.ng is unable to verify or authenticate any information provided by the User, or
          3. Mytrip.ng believes that the User's actions may infringe on any third-party rights or breach any applicable law or otherwise result in any liability for the User, other users of Mytrip.ng, or Mytrip.ng itself.
       4. Once a User has been suspended or terminated, such User shall not register or attempt to register with Mytrip.ng with different credentials, or use the App/Website/Bot/Other Platforms in any manner whatsoever until such User is reinstated by Mytrip.ng. Mytrip.ng may at any time in its sole discretion reinstate suspended users.
       5. If a User breaches this User Agreement, Mytrip.ng reserves the right to recover any amounts due to be paid by the User to Mytrip.ng, and to take appropriate legal action as it deems necessary.
       6. The User shall not write or send any content to Mytrip.ng which is, or communicate with Mytrip.ng using language or content which is:
          1. abusive, threatening, offensive, defamatory, coercive, obscene, belligerent, glorifying violence, vulgar, sexually explicit, pornographic, illicit or otherwise objectionable;
          2. contrary to any applicable law;
          3. violates third parties' intellectual property rights;
          4. a spam; or
          5. in breach of any other part of these terms and conditions of use.
       7. If the User violates any of the aforesaid terms, Mytrip.ng shall be at liberty to take appropriate legal action against the User.
    2. Right to Refusal by the Service Provider
       1. User agrees that the end service provider may refuse to provide the service(s), agreed to be provided to the User, for any booking made through Mytrip.ng with/without assigning any reasons or owing to reasons including but not limited to behavioural issues, public safety, health hazards, infectious diseases, government orders/notification etc. In such scenarios of refusal, the liability that may ensue shall solely vest with the end service provider as it is outside the purview of Mytrip.ng and the User agrees that any claim, refund or damages against such refusal shall lie solely against the end service provider and not Mytrip.ng.
12. RIGHT TO CANCEL
    1. The User expressly undertakes to provide Mytrip.ng with correct and valid information while making use of the App/Website/Bot/Other Platforms under this User Agreement, and not to make any misrepresentation of facts. Any default on part of the User would disentitle the User from availing the services from Mytrip.ng.
    2. In case Mytrip.ng discovers or has reasons to believe at any time during or after receiving a request for services from the User that the request for services is either unauthorized or the information provided by the User or any of the travelers is not correct or that any fact has been misrepresented by that User, Mytrip.ng shall be entitled to appropriate legal remedies against the User, including cancellation of the bookings, without any prior intimation to the User. In such an event, Mytrip.ng shall not be responsible or liable for any loss or damage that may be caused to the User or any other person in the booking, as a consequence of such cancellation of booking or services.
    3. If any judicial, quasi-judicial, investigation agency, government authority approaches Mytrip.ng to cancel any booking, Mytrip.ng will cancel the same without approaching the concerned User whose booking has been cancelled.
    4. The User shall not hold Mytrip.ng responsible for any loss or damage arising out of measures taken by Mytrip.ng for safeguarding its own interest and that of its genuine customers. This would also include Mytrip.ng denying or cancelling any bookings on account of suspected fraud transactions.
13. FAKE CALLS AND OTHER SIMILAR PHISHING, SPAMMING OR FRAUDULENT ACTIVITIES
    1. Mytrip.ng’s employees or authorized representatives will never contact a User asking for his/ her credit or debit card number, expiry date, CVV, net banking login, passwords, OTP etc. nor will they ever request for a fund transfer to a personal or an individual bank account. Further, they will also not ask a User to install any third-party applications that enable them to view a User’s mobile or computer screen.
    2. Acting on any of these requests may make you a victim of fraud, and may potentially lead to loss of your valuable money or information.
14. INDEMNIFICATION
    1. The User agrees to indemnify, defend and hold harmless Mytrip.ng, its affiliates and their respective officers, directors, lawful successors and assigns from and against any and all losses, liabilities, claims, damages, costs and expenses (including legal fees and disbursements in connection therewith and interest chargeable thereon) asserted against or incurred by such indemnified persons, that arise out of, result from, or may be payable by virtue of, any breach of any representation or warranty provided by the User, or non-performance of any covenant by the User.
    2. The User shall be solely liable for any breach of any country specific rules and regulations or general code of conduct and Mytrip.ng cannot be held responsible for the same.
15. COVID-19 RELATED TERMS & CONDITIONS
    1. User agrees that due to recent outbreak of COVID-19 pandemic, which has been declared as a national disaster by the Government of Nigeria, there may be instances, where the end service provider either cancels the booking or refuses to provide the services, as agreed with the User, by assigning or not assigning any specific reason for such refusal. Refusal of service may be due to the reasons including but not limited to the User:
       1. exhibiting any symptoms associated with COVID 19.
       2. refusing to comply with safety advisories, like wearing protective gear, complying with social distancing norms etc.
       3. suffering of any ailment making the User vulnerable to the virus
       4. posing a threat to the health and safety of others
    2. In such cases Mytrip.ng will assume no liability for the refusal of service by the end service provider. The User also agrees that refund, if any, for such bookings will be processed by Mytrip.ng to the User subject to receipt of the same from the end service provider.
    3. User further understands that due to the outbreak of COVID-19, the Federal Government through its ministries, State Governments and statutory bodies have/may come up with detailed set of guidelines or standard operating procedure (SOP) that a traveler will have to follow in order to undertake the travel.
    4. The User agrees to abide with all such guidelines/SOP while undertaking any travel. Failure to abide by such detailed set of guidelines/SOP, may lead to a situation where the service provider or any person authorized by the Federal Government, State Government or statutory body may disallow the User to undertake the travel. In such circumstances, Travu Digital Services Ltd will not be held liable for such refusal to travel and refund, if any, shall be strictly as per the terms of the service provider.
    5. User undertakes that all bookings are subject to certain minimum medical wellbeing criteria specified by the Govt. / appropriate authority from time to time. User should have no medical history of the COVID-19 virus 28 days before the date of scheduled travel, especially in case of inbound travel. In this regard the User may be required to furnish a medical proof or health declaration in a applicable format.
16. MISCELLANEOUS
    1. SEVERABILITY: If any provision of this User Agreement is determined to be invalid or unenforceable in whole or in part, such invalidity or unenforceability shall attach only to such provision or part of such provision and the remaining part of such provision and all other provisions of this User Agreement shall continue to be in full force and effect.
    2. JURISDICTION: This Agreement is subject to interpretation as per the laws of Nigeria, and the parties shall refer any unresolved disputes to the exclusive jurisdiction of courts in Abuja.
    3. AMENDMENT TO THE USER AGREEMENT: Travu Digital Services Ltd reserves the right to change the User Agreement from time to time. The User is responsible for regularly reviewing the User Agreement.
    4. CONFIDENTIALITY: Any information which is specifically mentioned by Travu Digital Services Ltd as confidential shall be maintained confidentially by the User and shall not be disclosed unless as required by law or to serve the purpose of this User Agreement and the obligations of both the parties herein.
    5. FEEDBACK FROM CUSTOMER: Travu Digital Services Ltd would like to know the feedback of the Users for improving its services. The User hereby authorizes Travu Digital Services Ltd to contact the User for their feedback on various services offered by Travu Digital Services Ltd. Such feedback may be collected through emails, telephone calls, SMS or any other medium from time to time. In case the User chooses not to be contacted, such User shall write to Travu Digital Services Ltd for specific exclusion at <support@travu.africa>.
    6. PRIVACY POLICY: User shall also refer to Travu Digital Services Ltd’s Privacy Policy available on Travu Digital Services Ltd’s App/Website/Bot/Other Platforms which governs use of the App/Website/Bot/Other Platforms. By using the App/Website/Bot/Other Platforms, User agrees to the terms of the Privacy Policy and accordingly consents to the use of the User’s personal information by Travu Digital Services Ltd and its affiliates in accordance with the terms of the Privacy Policy.


# Use Policy


# Frequently asked Questions (FAQ)

## Can I become who I want to be?

That's a tough question but thankfully, our team is on it. Please bear with us while we're investigating.

## Have you had a chance to answer the previous question?

Yes, after a few months we finally found the answer. Sadly, Mike is on vacations right now so I'm afraid we are not able to provide the answer at this point.


