PDF Liquid Template
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Manrope:wght@400;600&display=swap" rel="stylesheet">
<html>
<head>
<title>{{ subject }}</title>
</head>
<body>
<div class="image-container">
{% if agencyLogo %}
<img src="{{ agencyLogo }}"/>
{% endif %}
{% if agencyLogo == '' and bookingpadLogo %}
<img src="{{ bookingpadLogo }}"/>
{% endif %}
</div>
<header style="background-color: {{ agencyData.brandColor }};">
<div class="flex-container align-items-center">
<div class="header-column trip-column font-weight-600 col-50">Your trip</div>
<div class="header-column col-25">
<div>Booking ref:</div>
{% if issuedAtDate %}
<div>Document Issue Date:</div>
{% endif %}
</div>
<div class="header-column col-25">
<div class="font-weight-600 text-end">{{ pnr }}</div>
{% if issuedAtDate %}
<div class="font-weight-600 text-end">{{ issuedAtDate | date: "%d %b %Y" }}</div>
{% endif %}
</div>
</div>
</header>
<div class="traveler-details-container">
<div class="flex-container">
<div class="traveler-details-column col-15">Travelers</div>
<div class="traveler-details-column col-35">
{% for item in passengers %}
<div class="font-weight-600">{{ item.data.title | capitalize }} {{ item.data.name }} {{ item.data.surname }} </div>
{% endfor %}
</div>
<div class="traveler-details-column col-15">
<div>Agency</div>
{% if agencyData.address and (agencyData.address.street or agencyData.address.city) %}
<div class="empty-div"></div>
{% endif %}
<div>Email</div>
{% if agencyData.phoneContact %}
<div>Phone Contact</div>
{% endif %}
{% if agentEmail %}
<div>Agent</div>
{% endif %}
</div>
<div class="traveler-details-column col-35 text-end">
<div class="font-weight-600">{{ agencyData.name }}</div>
{% if agencyData.address and (agencyData.address.street or agencyData.address.city) %}
<div class="font-weight-600">{{ agencyData.address.street }} {{ agencyData.address.city }}</div>
{% endif %}
<div class="font-weight-600 text-decoration-underline">{{ agencyData.email }}</div>
{% if agencyData.phoneContact %}
<div class="font-weight-600">{{ agencyData.phoneContact }}</div>
{% else %}
-
{% endif %}
{% if agentEmail %}
<div class="font-weight-600">{{ agentEmail }}</div>
{% endif %}
</div>
</div>
</div>
<div class="flex-container bordered-div-top align-items-left marketing-logo-container">
{% if marketingProviderData %}
<img class="marketing-logo" src="https://web.bookingpad.work/assets/img/providers/jpg/{{ marketingProviderData.id }}.jpg"/>
<span class="marketing-logo-name font-weight-700">{{ marketingProviderData.name }}</span>
{% endif %}
</div>
<div class="flight-details-container">
{% for flight in flights %}
{% for segment in flight.segments %}
<div class="flight-details-header mt-30 mb-5">
<span class="font-weight-600">{{ flight.departure.date | date: "%d %b %Y" }}</span>
</div>
<div class="flight-details-body">
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Flight Number</div>
</div>
<div class="flight-details-column col-19">
</div>
<div class="flight-details-column col-35">
<div class="flex-container font-weight-600">
{% if segment.marketingCarrier.flightNumber and segment.marketingCarrier.flightNumber != "" %}
{{ segment.marketingCarrier.airlineID }}{{ segment.marketingCarrier.flightNumber }}
{% else %}
-
{% endif %}
</div>
</div>
<div class="flight-details-column col-15"></div>
</div>
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Operated by</div>
</div>
<div class="flight-details-column col-19">
</div>
<div class="flight-details-column col-35">
<div class="flex-container font-weight-600">
{{ segment.operatingCarrier.name }}
<img class="provider-logo" src="https://web.bookingpad.work/assets/img/providers/jpg/{{ segment.operatingCarrier.airlineID }}.jpg">
{% if segment.operatingCarrier.flightNumber and segment.operatingCarrier.flightNumber != "" %}
{{ segment.operatingCarrier.airlineID }}{{ segment.operatingCarrier.flightNumber }}
{% endif %}
<!--{% if segment.equipment.aircraftCode == 'BUS' %}
(Bus)
{% elsif segment.equipment.aircraftCode == 'TRS' %}
(Train)
{% else %}
(Plane: {{ segment.equipment.aircraftCode }})
{% endif %}
-->
</div>
</div>
<div class="flight-details-column col-15"></div>
</div>
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Departure</div>
</div>
<div class="flight-details-column col-19">
<div class="font-weight-600 text-end mr-5">
{{ segment.originDestination.departure.date | date: "%d %b" }} {{ segment.originDestination.departure.time }}
</div>
</div>
<div class="flight-details-column col-35">
<div class="font-weight-600">
{{segment.originDestination.departure.city}} ({{ segment.originDestination.departure.airportName }})
</div>
</div>
<div class="flight-details-column col-15">
<div class="font-weight-600 text-end mr-10">
{% if segment.originDestination.departure.terminalName %}
{% if segment.originDestination.departure.terminalName == segment.originDestination.departure.city %}
Terminal: -
{% else %}
Terminal: {{segment.originDestination.departure.terminalName | default: "-" }}
{% endif %}
{% endif %}
</div>
</div>
</div>
{% for stop in segment.detail.stopLocations %}
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
{% assign position = forloop.index0 %}
{% if position == 0 %}
<div class="dark-red-color">
{% if segment.detail.stopLocations.size > 1 %}
Stops
{% else %}
Stop
{% endif %}
</div>
{% endif %}
</div>
<div class="flight-details-column col-19">
<div class="font-weight-600 text-end mr-5">
{{ stop.arrivalDate | date: "%d %b" }} {{ stop.arrivalTime }}
</div>
</div>
<div class="flight-details-column col-35">
<div class="font-weight-600">
{{stop.city}} ({{ stop.airportName }})
</div>
</div>
<div class="flight-details-column col-15"></div>
</div>
{% endfor %}
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Arrival</div>
</div>
<div class="flight-details-column col-19">
<div class="font-weight-600 text-end mr-5">
{{ segment.originDestination.arrival.date | date: "%d %b" }} {{ segment.originDestination.arrival.time }}
</div>
</div>
<div class="flight-details-column col-35">
<div class="font-weight-600">
{{segment.originDestination.arrival.city}} ({{ segment.originDestination.arrival.airportName }})
</div>
</div>
<div class="flight-details-column col-15">
<div class="font-weight-600 text-end mr-10">
{% if segment.originDestination.arrival.terminalName %}
{% if segment.originDestination.arrival.terminalName == segment.originDestination.arrival.airportCode %}
Terminal: -
{% else %}
Terminal: {{segment.originDestination.arrival.terminalName | default: "-" }}
{% endif %}
{% endif %}
</div>
</div>
</div>
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Duration</div>
</div>
<div class="flight-details-column col-19"></div>
<div class="flight-details-column col-35">
{% if segment.detail.duration and segment.detail.duration != '' %}
<div class="font-weight-600">
{{ segment.detail.duration }}
{% assign stopQuantity = segment.detail.stopQuantity %}
{% if stopQuantity and stopQuantity != '' %}
<span>
{% if stopQuantity == '0' %}
(Non stop)
{% elsif stopQuantity == '1' %}
(1 Stop)
{% else %}
(2 Stops or More)
{% endif %}
</span>
{% endif %}
</div>
{% else %}
-
{% endif %}
</div>
<div class="flight-details-column col-15"></div>
</div>
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Booking status</div>
</div>
<div class="flight-details-column col-19"></div>
<div class="flight-details-column col-35">
<div class="font-weight-600">{{ status }}</div>
</div>
<div class="flight-details-column col-15"></div>
</div>
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Class</div>
</div>
<div class="flight-details-column col-19"></div>
<div class="flight-details-column col-35">
<div class="font-weight-600">
{{ segment.detail.classOfService.code }}, {{ segment.detail.classOfService.cabinDesignator }}
</div>
</div>
<div class="flight-details-column col-15"></div>
</div>
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Fare</div>
</div>
<div class="flight-details-column col-19"></div>
<div class="flight-details-column col-35">
<div class="font-weight-600">
{{ segment.detail.classOfService.fare.marketingName }}
</div>
</div>
<div class="flight-details-column col-15"></div>
</div>
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Baggage allowance</div>
</div>
<div class="flight-details-column col-19">
<div class="text-end mr-5">
CARRYON:
</div>
</div>
<div class="flight-details-column col-35">
{% assign passengerFound = false %}
{% if flight.baggageAllowance.carryOn.size > 0 %}
{% for passenger in passengers %}
{% for item in flight.baggageAllowance.carryOn %}
{% assign position = forloop.index0 %}
{% if position == 0 %}
{% if item.passengerRefs contains passenger.travelerReference %}
<div class="font-weight-600">
{{ item.options[0].quantity }} Piece(s) for {{ passenger.data.title | capitalize}} {{ passenger.data.name }} {{ passenger.data.surname }}
{% assign passengerFound = true %}
</div>
{% endif %}
{% endif %}
{% endfor %}
{% endfor %}
{% endif %}
{% unless passengerFound %}
<div class="font-weight-600"> - </div>
{% endunless %}
</div>
<div class="flight-details-column col-15"></div>
</div>
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
</div>
<div class="flight-details-column col-19">
<div class="text-end mr-5">
CHECKED:
</div>
</div>
<div class="flight-details-column col-35">
{% assign passengerFound = false %}
{% if flight.baggageAllowance.checked.size > 0 %}
{% for passenger in passengers %}
{% for item in flight.baggageAllowance.checked %}
{% assign position = forloop.index0 %}
{% if position == 0 %}
{% if item.passengerRefs contains passenger.travelerReference %}
<div class="font-weight-600">
{{ item.options[0].quantity }} Piece(s) for {{ passenger.data.title | capitalize}} {{ passenger.data.name }} {{ passenger.data.surname }}
{% assign passengerFound = true %}
</div>
{% endif %}
{% endif %}
{% endfor %}
{% endfor %}
{% endif %}
{% unless passengerFound %}
<div class="font-weight-600"> - </div>
{% endunless %}
</div>
<div class="flight-details-column col-15"></div>
</div>
{% if seats.size > 0 %}
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Seats</div>
</div>
<div class="flight-details-column col-19"></div>
<div class="flight-details-column col-35">
{% assign seatsFound = false %}
{% for passenger in passengers %}
{% for seat in seats %}
{% if seat.segment == segment.segmentID and seat.passengerRefs == passenger.travelerReference %}
<div class="font-weight-600">
{{seat.location.row}}{{seat.location.column}}
for {{ passenger.data.title | capitalize}} {{ passenger.data.name }} {{ passenger.data.surname }}
{% assign seatsFound = true %}
</div>
{% endif %}
{% endfor %}
{% endfor %}
{% unless seatsFound %}
<div class="font-weight-600"> - </div>
{% endunless %}
</div>
<div class="flight-details-column col-15"></div>
</div>
{% endif %}
{% if services.size > 0 %}
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Services</div>
</div>
<div class="flight-details-column col-19"></div>
<div class="flight-details-column col-35">
{% assign servicesFound = false %}
{% for passenger in passengers %}
{% for service in services %}
{% if service.segmentReferences contains segment.segmentID and service.travelerReferences contains passenger.travelerReference and service.isSSR == false %}
<div class="font-weight-600">
{{service.name}} for {{ passenger.data.title | capitalize}} {{ passenger.data.name }} {{ passenger.data.surname }}
{% assign servicesFound = true %}
</div>
{% endif %}
{% endfor %}
{% endfor %}
{% unless servicesFound %}
<div class="font-weight-600"> - </div>
{% endunless %}
</div>
<div class="flight-details-column col-15"></div>
</div>
{% endif %}
{% if segment %}
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Equipment</div>
</div>
<div class="flight-details-column col-19"></div>
<div class="flight-details-column col-35">
<div class="font-weight-600">
{% if segment.equipment.name and segment.equipment.name != "" %}
{{ segment.equipment.name }}
{% else %}
-
{% endif %}
</div>
</div>
<div class="flight-details-column col-15"></div>
</div>
{% endif %}
{% if disclosures %}
{% assign mealFound = false %}
{% for dsc in disclosures %}
{% assign meals = dsc.descriptions | where: 'category', 'MEALS' %}
{% for item in meals %}
{% if item.originDestinationReference == flight.key %}
{% assign mealFound = true %}
{% endif %}
{% endfor %}
{% endfor %}
{% if mealFound %}
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div>Flight meal</div>
</div>
<div class="flight-details-column col-19"></div>
<div class="flight-details-column col-35">
<div class="font-weight-600">
{% assign mealFound = false %}
{% for dsc in disclosures %}
{% assign meals = dsc.descriptions | where: 'category', 'MEALS' %}
{% if meals.size > 0 %}
<span>{{item}}</span>
{% for item in meals %}
{% if item.originDestinationReference == flight.key %}
{% assign mealFound = true %}
{{item.text}}{% if forloop.index < meals.size %},{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% endfor %}
{% unless mealFound %}
<div class="font-weight-600"> - </div>
{% endunless %}
</div>
</div>
<div class="flight-details-column col-15"></div>
</div>
{% endif %}
{% endif %}
<div class="row flex-container">
<div class="flight-details-column col-15"></div>
<div class="flight-details-column col-16">
<div class="text-nowrap">Frequent Flyer Number</div>
</div>
<div class="flight-details-column col-19"></div>
<div class="flight-details-column col-35">
{% assign ffnFound = false %}
{% for passenger in passengers %}
{% if passenger.data.fqtvInfo and passenger.data.fqtvInfo.airlineID %}
<div class="font-weight-600">
{{passenger.data.fqtvInfo.airlineID}} {{passenger.data.fqtvInfo.account.number}}
for {{ passenger.data.title | capitalize}} {{ passenger.data.name }} {{ passenger.data.surname }}
{% assign ffnFound = true %}
</div>
{% endif %}
{% endfor %}
{% unless ffnFound %}
<div class="font-weight-600"> - </div>
{% endunless %}
</div>
<div class="flight-details-column col-15"></div>
</div>
</div>
{% endfor %}
{% endfor %}
</div>
{% if tickets.size > 0 %}
<div class="mt-30">
<div class="bordered-div">
<span class="font-weight-600">Ticket details</span>
</div>
<div class="pl-10">
{% for item in tickets %}
{% assign passenger = passengers | where: 'travelerReference', item.travelerReference | first %}
<div>
E-ticket {{ item.number }}
{% if passenger %}
for <span class="font-weight-600">{{ passenger.data.title | capitalize }} {{ passenger.data.name }} {{ passenger.data.surname }}</span>
{% endif %}
</div>
{% endfor %}
</div>
</div>
{% endif %}
{% if comments and comments.size > 0 %}
<div class="mt-30">
<div class="bordered-div">
<span class="font-weight-600">Comments</span>
</div>
<div class="pl-10 text-pre-line">
{{ comments }}
</div>
</div>
{% endif %}
{% if agencyData.alert %}
<div class="mt-30">
<div class="bordered-div">
<span class="font-weight-600">Alert</span>
</div>
<div class="pl-10 text-pre-line">
{{ agencyData.alert }}
</div>
</div>
{% endif %}
</body>
</html>
Updated on: 03/07/2024
Thank you!