Skip to main content

Lounge

The Lounge DPApp provides airport lounge access functionality, allowing users to search, browse, and access airport lounges worldwide directly within your host app.

User flow

The Lounge journey is shown from left to right.

Landing
Landing
Location search
Location search
Resource list
Resource list
Resource detail
Resource detail
Booking
Booking
Contact details
Contact details
Checkout
Checkout
Payment
Payment
3DS authentication
3DS authentication
Order result
Order result

Routes & Parameters

Pages are opened by the host app via DPSDK.open(appId: "lounge", ...) (iOS) or DPSDK.getDPApp("lounge").open(...) (Android), or navigated internally. Only the pages below can be opened via the SDK — other pages (e.g. Time slot, Order summary) are internal flow pages reached from within the app.

PAGE NAMEPATHQuery parametersDescription
Landinglounge/landingresource_id, transport_hub_id, transport_hub_name, iata_code, city_id, city_name, country_or_region, station_nameHome page for discovering airport lounges worldwide
Location searchcommon/searchkeyword, iata_code, city_id, city_name, country_or_region, station_nameSearch page to find lounges by city or airport — type a keyword or pick a nearby location; deeplink parameters (iata_code, city_id, city_name, country_or_region, station_name) pre-fill the search. Selecting a station opens the Resource list page
Resource listcommon/search-resulttransport_hub_id, transport_hub_name, iata_codeSearch result page listing lounges at the selected airport — filter the list by area, route type, terminal or category. transport_hub_id / transport_hub_name jump straight to a specific transport hub's results; iata_code pre-filters by airport. Tapping a result opens the Resource detail page
Resource detaillounge/detailresource_idLounge details — amenities, opening hours, directions
Order detaillounge/order-detailorder_noOrder details & management
Lounge verifylounge/verifyQR code verification page for lounge access — shows the member's QR code, entitlements and order list (no page parameter needed)

Parameters

System parameters

These parameters are required and must always be included when opening the Lounge DPApp.

ParameterTypeRequiredDescriptionExample
languagestringtrueUI language of the app; supported values: ar-SA (Arabic, Saudi Arabia), en-US (English, United States), zh-CN (Chinese, China), fr-CA (French, Canada), zh-HK (Chinese, Hong Kong), th-TH (Thai, Thailand), vi-VN (Vietnamese, Vietnam), es-AR (Spanish, Argentina), tr-TR (Turkish, Türkiye), ja-JP (Japanese, Japan), ko-KR (Korean, South Korea), id-ID (Indonesian, Indonesia), zh-TW (Chinese, Taiwan), it-IT (Italian, Italy), uk-UA (Ukrainian, Ukraine), ru-RU (Russian, Russia), sl-SI (Slovenian, Slovenia), nl-NL (Dutch, Netherlands), el-GR (Greek, Greece), hr-HR (Croatian, Croatia), sr-SP (Serbian, Serbia), bs-BA (Bosnian, Bosnia and Herzegovina), sr-ME (Serbian, Montenegro), ro-RO (Romanian, Romania), pl-PL (Polish, Poland), cs-CZ (Czech, Czechia), kk-KZ (Kazakh, Kazakhstan), az-AZ (Azerbaijani, Azerbaijan), ka-GE (Georgian, Georgia), fr-FR (French, France), de-DE (German, Germany), pt-PT (Portuguese, Portugal), en (English) (default: en-US)en-US
tenant_codestringtrueTenant code used for tenant isolation and validating the tenant configuration on the DP Platform0494
action_typestringtrueAccess mode of the session; supported values: view, operate, visitor (default: operate)operate
channelstringfalseDistribution channel identifier of the host app, used for channel-level configuration and analytics, e.g. standard, eBridge (default: standard)standard
verify_purchase_pro_codestringfalseProduct code for purchase verification — only required when the product is a verification (Walk-in redemption) productIL0494000002
pro_codestringtrueProduct code used by the Premium Lounge and non-Walk-in booking flows (IL product)IL0494000001
modulestringtrueBusiness module identifier used for module-level routing and configuration (1 for Lounge)1

ℹ️ Parameter naming varies by category. This app uses verify_purchase_pro_code for the Walk-in booking flow and pro_code for Premium Lounge / non-Walk-in flows — both are read from the URL (see System parameters for the full list).

Page parameters

These parameters are only needed when the corresponding page is opened directly.

Landing (lounge/landing)

When opening the Landing page with deeplink parameters, the jump priority is: resource_id (jumps to Resource detail) > transport_hub_id (jumps to the transport hub search result) > search filters (iata_code / city_id / city_name / country_or_region / station_name).

ParameterTypeRequiredDescriptionExample
resource_idstringfalseResource ID of the lounge, passed when opening the Landing page to jump directly to the lounge detail pageN01878
transport_hub_idstringfalseJumps to the search result page of a specific transport hub
transport_hub_namestringfalseName of the transport hub to jump to
iata_codestringfalseAirport IATA code to pre-filter the search result pageMAN
city_idstringfalseCity ID to pre-filter the search pageE239
city_namestringfalseCity name to pre-filter the search pageManchester
country_or_regionstringfalseCountry or region name to pre-filter the search pageUnited Kingdom
station_namestringfalseStation name to pre-filter the search pageManchester Airport

Location search (common/search)

ParameterTypeRequiredDescriptionExample
keywordstringfalseSearch keyword used to pre-fill the search box, e.g. a city name or airport name — the page searches as you typeManchester
iata_codestringfalseAirport IATA code used to pre-fill and filter the search results, e.g. MAN for Manchester AirportMAN
city_idstringfalseCity ID used to pre-fill the search, narrowing results to the given cityE239
city_namestringfalseCity name used to pre-fill the search box, narrowing results to the given cityManchester
country_or_regionstringfalseCountry or region name used to pre-fill the search, narrowing results to the given country or regionUnited Kingdom
station_namestringfalseStation (airport) name used to pre-fill the search, narrowing results to the given stationManchester Airport

Resource list (common/search-result)

ParameterTypeRequiredDescriptionExample
transport_hub_idstringfalseTransport hub ID that loads the search result list of a specific hub directly, skipping the search step
transport_hub_namestringfalseName of the transport hub displayed at the top of the result page, usually paired with transport_hub_id
iata_codestringfalseAirport IATA code used to pre-filter the result list, showing only lounges at the given airportMAN

Resource detail (lounge/detail)

ParameterTypeRequiredDescriptionExample
resource_idstringtrueResource ID of the lounge, required to load the lounge details when the page is opened directlyN01878

Order detail (lounge/order-detail)

ParameterTypeRequiredDescriptionExample
order_nostringtrueOrder number of the lounge reservation, required to load the order details when the page is opened directlySL20260730BMIUPFB

Prerequisites

  • A registered clientId from the DP Platform dashboard
  • The lounge appId configured under your client
  • DP Hybrid SDK integrated into your host app

iOS

Open the Lounge DPApp from any UIViewController:

Swift
// From any UIViewController
DPSDK.open(appId: "lounge", from: self)

To open a specific page directly (e.g. landing or order detail), pass the page path and its query parameters in the params dictionary:

Swift
// Open the landing page (default)
DPSDK.open(appId: "lounge", from: self)

// Open the landing page directly
DPSDK.open(
appId: "lounge",
params: [
"path": "lounge/landing",
"tenant_code": "0494",
"action_type": "operate",
"module": "1",
"language": "en-US",
"verify_purchase_pro_code": "IL0494000002",
],
from: self
)

// Open the order detail page directly
DPSDK.open(
appId: "lounge",
params: [
"path": "lounge/order-detail",
"tenant_code": "0494",
"action_type": "operate",
"module": "1",
"language": "en-US",
"verify_purchase_pro_code": "IL0494000002",
"order_no": "SL20260730BMIUPFB",
],
from: self
)

Note: the system parameters above are required whenever a page is opened directly. Page-specific parameters (e.g. order_no, resource_id, iata_code) are appended only for the pages that need them (see Page parameters).

Android

Open the Lounge DPApp from any Activity or Fragment:

Kotlin
// From any Activity or Fragment
DPSDK.getDPApp("lounge").open(this)

To open a specific page directly (e.g. landing or order detail), pass the page path to open() and set the query parameters via setExtraUrlParams:

Kotlin
// Open the landing page (default)
DPSDK.getDPApp("lounge").open(this)

// Open the landing page directly
val dpApp = DPSDK.getDPApp("lounge")
dpApp.setDPAppConfig(
DPAppConfig.Builder()
.setExtraUrlParams(
hashMapOf(
"tenant_code" to "0494",
"action_type" to "operate",
"module" to "1",
"language" to "en-US",
"verify_purchase_pro_code" to "IL0494000002",
)
)
.build()
).open(this, "lounge/landing")

// Open the order detail page directly
val orderDpApp = DPSDK.getDPApp("lounge")
orderDpApp.setDPAppConfig(
DPAppConfig.Builder()
.setExtraUrlParams(
hashMapOf(
"tenant_code" to "0494",
"action_type" to "operate",
"module" to "1",
"language" to "en-US",
"verify_purchase_pro_code" to "IL0494000002",
"order_no" to "SL20260730BMIUPFB",
)
)
.build()
).open(this, "lounge/order-detail")

Note: the system parameters above are required whenever a page is opened directly. Page-specific parameters (e.g. order_no, resource_id, iata_code) are appended only for the pages that need them (see Page parameters).

Handling order results

When a booking is placed or an order detail is opened, the host app can listen for URL changes to react to the result (e.g. refresh its own order list after a successful booking). See DPApp URL Listener for the full API.

Swift
// iOS
DPApp.delegate = self

extension ViewController: DPAppCustomDelegate {
func didDPAppChangeUrlEvent(DPApp: DPApp, url: URL) {
// url.path contains the DPApp page path, e.g. "lounge/order-detail"
}
}
Kotlin
// Android
val dpApp = DPSDK.getDPApp("lounge")
dpApp.setUrlChangeListener { activity, url ->
// url?.path contains the DPApp page path, e.g. "lounge/order-detail"
}.open(this)

Reference