Skip to main content

Create Boarding Pass

Issue a boarding pass

Danny Allen avatar
Written by Danny Allen
Updated over a week ago

The boarding pass contains the passenger information and other data found on a physical boarding pass.


Terminology

Boarding pass

Contains passenger information and other data for a flight.

Operating carrier PNR

A Passenger Name Record (PNR) number assigned by the airline operating the flight.

Boarding point

The airport where the passenger boards the flight.

Deplaning point

The airport where the passenger gets off the flight.

Carrier code

A two-character code representing the airline.

Flight number

A specific number assigned to a particular flight route.

Passenger details

Includes the passenger's salutation (e.g., Mr.), surname, and forename.

Identity details

Information about the passenger's identification document, such as passport number and nationality.

Frequent flyer info

Details about the passenger's frequent flyer program, including airline designator, number, and tier level.

Class

The cabin class of the ticket (e.g., Economy).

Seat number

The specific seat assigned to the passenger.

Sequence number

A unique number assigned to a passenger within a flight, often used for boarding order.

Free baggage allowance

The weight or number of bags a passenger can check-in for free.

Carry-on allowance

The weight or number of bags a passenger can take with them into the cabin.

SSR codes

Special Service Request (SSR) codes, which are used to indicate specific services or needs for a passenger, such as medical assistance (e.g., WCHR for wheelchair) or dietary requirements.

Barcode payload

The data encoded within the boarding pass barcode.

Pass ID

A unique identifier that the PassKit system assigns to a boarding pass.


Create a Boarding Pass

Example Payload

{
"operatingCarrierPNR": "PFR166",
"boardingPoint": "BKK",
"deplaningPoint": "HKG",
"carrierCode": "PK",
"flightNumber": "321",
"departureDate": {
"year": 2025,
"month": 10,
"day": 25
},
"passenger": {
"passengerDetails": {
"salutation": "Mr.",
"surname": "PassKit",
"forename": "Percy",
"suffix": ""
},
"identityDetails": {
"identityDocument": "PASSPORT",
"nationality": "BR",
"documentNumber": "ABC1234567",
"expiryDate": {
"year": 2030,
"month": 12,
"day": 31
}
},
"frequentFlyerInfo": {
"airlineDesignator": "PK",
"number": "8302829",
"tier": "Silver"
},
"withInfant": false,
"securityImage": "",
"footerImage": "",
"barcodePayload": ""
},
"class": "Economy",
"seatNumber": "27B",
"sequenceNumber": 14,
"freeBaggageAllowance": "30K",
"carryOnAllowance": "7K",
"ssrCodes": [
"INFT",
"STRT",
"TIG",
"WCES",
"WCII"
],
"barcodePayload": "",
"securityImage": "",
"footerImage": ""
}

Edit the Payload

Edit the payload with the relevant information for your Flight.

Note:

  • boardingPoint and deplaningPoint must have been already created (Create Airport)

  • carrierCode must be created (Create Carrier)

  • flightNumber must be created (Create Flight)

  • sequenceNumber must be unique within a flight

Using the Postman Collection

You can find the Create boarding pass endpoint with an example in the Postman Collection.

PassKit v4 SDK/Flights/Create Boarding Pass

Edit the payload as explained above, and click Invoke to run the request.

The Response

{
"boardingPasses": [
{
"id": "5cB0ujKRWncsPLqENaVZK",
"url": "https://pub1.pskt.io/5cB0ujKRWncsPLqENaVZK",
"googlePayURL": "https://pub1.pskt.io/5cB0ujKRWncsPLqENaVZK.gpay",
"applePassBytes": "",
"multiplePassesURL": "https://pub1.pskt.io/ggdxmlEB6U5ZnSWXthr2KE09n1"
}
]
}

  • id - This is the Pass ID, the unique identifier PassKit assigns the boarding pass.

  • url - This is the pass URL, used to add the pass to the users digital wallet

  • googlePayURL - This URL leads to install the pass directly to Google Wallet, bypassing the PassKit landing page

  • multiplePassesURL - This will display all boarding passes linked to this boarding pass.

applePassBytes

To get the Apple Pass Bytes, use this method PassKit v4 SDK/Flights/Create Boarding Pass with the passId returned from the create call and specify “APPLE_BASS_BUNDLE” as the format.

Did this answer your question?