The article summarizes the use cases supported by the Midoco/TripBuilder integration and the mapping used between the two systems.

1. Introduction

2. TripBuilder and Midoco Integration 

3. Supported Use Cases

4. Data Model Mappings

5. Frequently Asked Questions

6. Feature Limitations


1. Introduction

Midoco is a mid-office specialized system, specifically optimized for the travel industry (www.midoco.de). Nezasa has partnered with Midoco to provide a complete offering, from the sales/distribution of your product to the accounting.

 

2. TripBuilder and Midoco Integration 

The connector to Midoco is a paid add-on of TripBuilder which comes with a setup and a monthly license fee. To get the connector configured for your setup, please contact our support team for more details. 

 

3. Supported Use Cases

Automated submission to Midoco upon a booking or a booking change is supported, as well as triggering the submission manually in Cockpit.

Submission History

In Customer Care, the executed submissions are visible:

60d2f2431f9ce.png

Manual Submission

Manual submissions can be triggered anytime from within the menu in Customer Care:

60d2f243c03a6.png

Status Changes on Ad-Hoc Components

These are the remarks referring to the status change on Ad-Hoc components of an itinerary. Please note that in this case, the system doesn't trigger an automatic submission to Midoco. However, you can trigger a new submission anytime manually as shown above.

 

4. Data Model Mappings

Please find below the mappings between the two systems, Nezasa's TripBuilder and Midoco. The mapping applies if the information already exists in Nezasa's TripBuilder.

Midoco Documentation

The article is using the technical attribute names of Midoco. Please consult the Midoco documentation for further details about these attributes.

List of Mappings

The mapping tables below are kept up-to-date and cover the core mappings. Additional data might be submitted to Midoco that is not documented. The connector generally tries to pass as much information as possible. 

Midoco Booking Message

The Midoco Booking Message is the root object submitted by TripBuilder to Midoco. It holds all relevant information. The following attributes of that object are populated by Nezasa:

  • Package Info
    General package information about the booking. Also contains the list of PAX.
  • Agency Identity
    The underlying information of the agency for the booking.
  • Customer
    Contact details of the booking customer.
  • Payment Info
    The payment information, i.e., the payment transactions known to Nezasa's TripBuilder. Please note that, as not all payments might be handled via the TripBuilder, the information registered here might not be complete.
  • Booking
    Contains details of the booked components. Note that some pricing information is passed as well, but the main price information is passed on "Prices". The exact information depends on the component type (Nezasa terminology) resp. the service type (Midoco terminology).
  • Prices
    Contains an entry for each booked component to pass the sales and net price of that component. Additionally, the prices array contains one price entry passing the package price information (total booking price of the package). See "Midoco Booking Price" for the mappings.
  • Internal Treatment
    The information on this attribute makes sure that repeating calls to Midoco for the same booking update the existing entries in Midoco, and don't create new ones.

Midoco PackageInfo

Nezasa TripBuilder Midoco
Itinerary ID attrPackageId

Tour Operator ID

(converted to uppercase letters or ID configured on Midoco configuration)

attrPackageSupplierId
The PAX Info person

 

Midoco AgencyIdentity

It is recommended to use the agency features in Midoco in combination of setting the Midoco agency ID on the agency in TripBuilder as so-called "external reference" (go to Travel Agency Management in Cockpit Settings, then open "Travel Agency Settings", and there define a external reference of type Midoco holding the agency ID from your Midoco). 

 

Nezasa TripBuilder Midoco
Agency Short Name AgencyInfo.shortName
Agency Legal Name AgencyInfo.name
Street Line 1 AgencyInfo.street
Street Line 2 AgencyInfo.streetNo
City AgencyInfo.city
Postal Code AgencyInfo.zipCode
Phone AgencyInfo.phone
Email AgencyInfo.email
Distribution Channel Ref ID

agent

(The ID needs to exist in Midoco, otherwise Midoco will show a warning. This may also called "Broker ID/Info".)

Agency External Ref ID of Type Midoco

(If the agency defines a Midoco external reference, this maps to its external reference ID)

agency_no

(The ID needs to exist in Midoco, otherwise Midoco will show a warning.)

 

Midoco Customer

The main contact/billing contact of Nezasa is mapped on the Midoco Customer.

Nezasa TripBuilder Midoco
First Name privateData.forename
Last Name privateData.name
Gender mapped into a salutation privateData.salutation
Street1 street
City city
Country country ISO Code
Postal Code postalCode
Phone communication[ attrType = PHONE]
Email communication[ attrType = EMAIL]
Language language

 

Language is sent as 2-letter ISO code as lowercase with the exception of nl which is sent as "nl_NL".

Midoco External Payment

The payment information from Nezasa's TripBuilder is mapped to the respective Midoco objects ccPayment, debitPayment or advisedPayment.

Nezasa TripBuilder Midoco
Transaction Id transactionNumber

Date of the transaction

paymentDate

Transaction type. CCCAPTURE, PAYPAL

transactionType

 

Transaction amount

amount

 

Transaction currency

currency

The payment network.

( MASTERCARD is used as fallback when the value could not be retrieved )

medium

Sent as a warning when MASTERCARD is used as fallback.

comment

 

Midoco Booking Price

Nezasa TripBuilder Midoco

Supplier ID

(For components, if the component defines a supplier contact with a Midoco external reference, this maps to its external reference ID)

supplier

Booking ID of itinerary on package level.

On component level, it's either the booking reference of the third-party supplier or if not available, the Nezasa component ID

bookingId

Net/Sales Price - Amount

(For components, the net price. For the package info the sales price.)

totalPrice

 

Sales Price - Currency

(The sales currency. In case of components, the net price value is converted.)

currency

 

Net Price - Amount

(Not set for package info. For components, this is the price as received from the supplier.)

original_price

 

Net Price - Currency

(Not set for package info. For components, this is the price as received from the supplier.)

original_currency

 

Sales price of the package

( Only set fo package info. )

sale_price

"false" vatIncluded
The exchange rate from net to sales currency. Only set for components. buyCurrencyRate

 

Booking Status

The mapping of the Nezasa status to the Midoco status.

Nezasa TripBuilder Midoco
on request RQ
cancelled XX
all other statuses OK

 

Accommodation

Nezasa AccommodationComponent - Midoco Booking[AccommodationServiceType]

The generic information of the accommodation booking. 

Nezasa TripBuilder Midoco
Supplier ID attrSupplier

Either the booking reference of the third-party supplier or if not available, the Nezasa component ID.

attrBookingId
Nezasa Component ID attrReferenceBookingId
"Nezasa" attrReferenceType
Product Name serviceDescription
Room Code accommodationCode
Room Name accommodationDescription
Room Name roomDescription
Product City area_description
Product City location_description
Product Country countryDescription
Amenities AdditionalServices
true if Component is in status "cancelled" attrPreventPrinting
one of AccommodationServiceType accommodationService
externally paid charges remarks

 

Midoco AccommodationServiceType

Nezasa TripBuilder Midoco
Hotel - Name (Product - Name) serviceDescription
Room Category - Code accommodation
Room Category - Name accommodationDescription
Meal Amenity - External ID catering
Meal Amenity - Name cateringDescription
PAX Assigned to Component personAssignment
Component Status serviceStatus
Net Price - Amount

totalPrice

(converted into sales currency)

Sales Price - Currency

currency

"false" vatIncluded
Start Date startDate
End Date endDate
Street Name address_line1
City address_line2
Country address_line3
Postal Code address_line4
Country country_description
City locationDescription
Hotel contact number emergency-Number

 

Activity

Nezasa Component - Midoco Booking[EventServiceType]

The generic information of the accommodation booking. 

Nezasa TripBuilder Midoco
Supplier ID attrSupplier
Either the booking reference of the third-party supplier or if not available, the Nezasa component ID. attrBookingId
Nezasa Component ID attrReferenceBookingId
"Nezasa" attrReferenceType
Product Name serviceDescription
Amenities AdditionalService
true if Component is in status "cancelled" attrPreventPrinting
Product City area_description
Product Country countryDescription
one of GenericServiceType eventService

 

Midoco EventServiceType

Nezasa TripBuilder Midoco
Product Name serviceDescription
Component Status serviceStatus

PAX Assigned to Component

(if available on Nezasa component, otherwise not set)

personAssignment
Net Price - Amount

price

(converted into sales currency)

Sales Price - Currency currency
Street Name locationAddress1
City locationAddress2
Country locationAddress3
Postal Code locationAddress4
"false" vatIncluded

Start Date

startDate

End Date

endDate

Start Time

startTime

End Time

endTime
Nezasa service category ticketCategory

 

Upsell Item, Insurance, Ad-Hoc Components, Base Service

Upsell items, insurances, ad-hoc components, and base services are mapped on the generic service type of Midoco. 

Nezasa Component - Midoco Booking[GenericServiceType]

Nezasa TripBuilder Midoco
Supplier ID attrSupplier
Either the booking reference of the third-party supplier or if not available, the Nezasa component ID. attrBookingId
Nezasa Component ID attrReferenceBookingId
"Nezasa" attrReferenceType
Product Name serviceDescription
Amenities AdditionalService
true if Component is in status "cancelled" attrPreventPrinting
Product City area_description
Product Country countryDescription
one of GenericServiceType genericService

 

Midoco GenericServiceType

Nezasa TripBuilder Midoco
Product Name and Service Category serviceDescription
Component Status serviceStatus

PAX Assigned to Component

(if available on Nezasa component, otherwise not set)

personAssignment
Net Price - Amount

servicePrice

(converted into sales currency)

Sales Price - Currency serviceCurrency
"false" vatIncluded

Start Date

(if available on Nezasa component, otherwise set to start/end date of the itinerary because mandatory in Midoco)

startDate

End Date

(if available on Nezasa component, otherwise set to start/end date of the itinerary because mandatory in Midoco)

endDate

 

Rental Car

Nezasa RentalCarComponent - Midoco Booking[CarServiceType]

Nezasa TripBuilder Midoco
Supplier attrSupplier
Either the booking reference of the third-party supplier or if not available, the Nezasa component ID. attrBookingId
Nezasa Component ID attrReferenceBookingId
"Nezasa" attrReferenceType
Product Name serviceDescription
true if Component is in status "cancelled" attrPreventPrinting
one of CarServiceType carService

 

Midoco CarServiceType

Nezasa TripBuilder Midoco
Supplier carSupplier
Component Status serviceStatus
ACRISS Description - Category Code category
ACRISS Description - Type Code carType
Product Name carDescription
Net Price - Amount

servicePrice

(converted into sales currency)

Sales Price - Currency currency
"false" vatIncluded
Pickup - Location Code (IATA) or Coordinates pickupCode
Pickup - Location Name pickupDescription
Pickup - Country Code countryCode
Pickup - Country Name countryDescription
Pickup - Date pickupDate
Pickup - Time pickupTime
Drop-off - Location Code (IATA) or Coordinates returnCode
Drop-off - Location Name returnDescription
Drop-off - Country Code returnCountryCode
Drop-off - Country Name returnCountryDescription
Drop-off - Date returnDate
Drop-off - Time returnTime

 

Transfer

Nezasa TransferComponent - Midoco Booking[TransferServiceType]

Nezasa TripBuilder Midoco
Supplier attrSupplier
Either the booking reference of the third-party supplier or if not available, the Nezasa component ID. attrBookingId
Nezasa Component ID attrReferenceBookingId
"Nezasa" attrReferenceType

Concatenation of the name of the start and end location:

Start Location Name - End Location Name

serviceDescription
true if Component is in status "cancelled" attrPreventPrinting
one of TransferServiceType transferService

 

Midoco TransferServiceType

Nezasa TripBuilder Midoco

Concatenation of the ID of the start and end location:

Start Location ID - End Location ID

serviceCode
Component Status serviceStatus

Concatenation of the name of the start and end location:

Start Location Name - End Location Name

serviceDescription
Start Date startDate
End Date endDate
Start Location - ID departureCode
Start Location - Name departureDescription
End Location - ID destinationCode
End Location - Name destinationDescription

 

Transport

Nezasa TransportComponent - Midoco Booking[TransferServiceType, FlightServiceType, RailServiceType]

Nezasa TripBuilder Midoco
Supplier attrSupplier
Either the booking reference of the third-party supplier or if not available, the Nezasa component ID. attrBookingId
Nezasa Component ID attrReferenceBookingId
"Nezasa" attrReferenceType

Concatenation of the name of the start and end location:

Start Location Name - End Location Name

serviceDescription
true if Component is in status "cancelled" attrPreventPrinting
list of TransferServiceType (see below) transferService
list of FlightServiceType (see below) flightService
list of RailServiceType (see below) railService

 

Nezasa TransportBusSegment - Midoco TransferServiceType

Nezasa TripBuilder Midoco
Component Status serviceStatus

Concatenation of the name of the start and end location and service category:

Start Location Name - End Location Name ; Service category

serviceDescription

Concatenation of the ID of the start and end location:

Start Location ID - End Location ID

serviceCode
Departure Location - IATA Code departureCode
Departure Location - Name departureDescription
Departure Location - Date startDate
Arrival Location - IATA Code destinationCode
Arrival Location - Name destinationDescription
Arrival Location - Date endDate

 

Nezasa TransportTrainSegment - Midoco RailServiceType

Nezasa TripBuilder Midoco
Component Status serviceStatus

Concatenation of the name of the start and end location:

Start Location Name - End Location Name

serviceDescription
Transport Number serviceCode
"STANDARD_ONLINE" ticketCategory
Transport Class bookingClass
Departure Location - IATA Code departureCode
Departure Location - Name departureDescription
Departure Location - Date departureDate
Arrival Location - IATA Code arrivalCode
Arrival Location - Name arrivalDescription
Arrival Location - Date arrivalDate

 

Nezasa TransportFlightSegment - Midoco FlightServiceType

Nezasa TripBuilder Midoco
Component Status serviceStatus
Airline Code carrier
Flight Number flightNo
Booking Class Code bookingClass
Transport Class cabinClass
Departure Location - IATA Code departureCode
Departure Location - Name departureDescription
Departure Location - Date departureDate
Departure Location - Time departureTime
Arrival Location - IATA Code destinationCode
Arrival Location - Name destinationDescription
Arrival Location - Date arrivalDate
Arrival Location - Time arrivalTime

 

5. Frequently Asked Questions

Are all Midoco setups compatible with the Nezasa Midoco Connector?

Generally yes. Note however, the Nezasa Midoco Connector always submits package information. Your Midoco configuration might not be yet ready for all use cases within Midoco. Please get in touch with your Midoco project manager therefore.

The supplier IDs of Nezasa and the ones we already have set up in Midoco are different. Can this be mapped? 

Yes, in Midoco. Midoco has an option to map the supplier IDs. Please contact your Midoco project manager for details. For what is considered the "tour operator" in TripBuilder and which is used as the default supplier in Midoco on components, the ID to be used towards Midoco can be configured on the Midoco connector. 

Does the Midoco Connector pass the gender of PAX?

No, this is currently not supported by the Midoco API.

However, the Midoco Connector maps the gender to the salutation attribute of Midoco. Setting the salutation attribute takes into account the preferred language of the itinerary (e.g. for English: male -> Mister, female -> Miss). 

Also note that the preferred language stored on the itinerary is passed as well to Midoco. In Midoco, in the section to manage the CRM master data, you'll find advanced mapping options for salutations. For detailed questions about that mapping, please contact your Midoco project manager.

The sales price of the package in Midoco is 0. Why?

The cause of this might be another error. Generally, Midoco doesn't show the package sales price if there is an error within the package. Another possible cause can be that the package was cancelled and there were no cancellation fees. In that case, the sales price is supposed to be 0. That would be correct.

Does a rest payment confirmation automatically trigger a submission?

Currently, no. A manual submission can be triggered in these cases to update the payment status on Midoco’s side. Only the main booking actions such as book, cancel, booking change trigger an automatic transmission to Midoco. 

Can I see what the Midoco Connector sends to the Midoco API?

Yes, this is indeed possible via the Nezasa Cockpit UI and can be very helpful to investigate on a more technical level. The XML requests sent to Midoco can be found in the system events.

 

6. Feature Limitations

Not all data available in TripBuilder is submitted to Midoco, nor is TripBuilder having an equivalent feature for the wide set of options Midoco supports. Please find below a list of functionality that were mentioned to Nezasa before but are currently not supported.

Promo Codes

The promo code feature of TripBuilder is currently not supported by the Midoco Connector. The total price submitted to Midoco is the total price before the promo code is applied.

Agency Commissions

The TripBuilder has currently no support for agency commissions in general.

User ID

Every order in Midoco can be assigned to a user ID. The Midoco Connector currently doesn't support this. The submission is always in the name of the main Midoco user for the integration.

 

 

Comments

0 comments

Please sign in to leave a comment.