---
title: "The Boarding Pass Problem: Documents in a Chat-First App"
description: "Travelers need instant access to boarding passes, confirmations, and insurance docs. In a chat-first app, document access must be one tap away — not buried in history."
canonical: https://nowah.xyz/blog/boarding-pass-problem-documents-chat
lastModified: "2026-08-07T07:58:38.999Z"
---

# The Boarding Pass Problem: Documents in a Chat-First App

Travelers need instant access to boarding passes, confirmations, and insurance docs. In a chat-first app, document access must be one tap away — not buried in history.

You are at the boarding gate. The line is moving. You need your boarding pass. You open the app and start scrolling through your [chat history](/blog/chat-history-ux-revisiting-conversations) because that is where the booking confirmation was. Scroll. Scroll. Scroll. You passed it. Scroll back. The gate agent is looking at you. You are holding up the line.

This is the boarding pass problem, and it is the most acute example of a broader challenge in chat-first apps: documents that were generated during a conversation need to be accessible outside that conversation, instantly, [under stress](/blog/designing-for-airports-ux-under-stress).

## Where documents live

![Illustration for this section](https://pics.nowah.xyz/website-media/design-017-img-1.webp)

In a chat-first app, there are three possible homes for documents: buried in chat history, organized in a dedicated tab, or surfaced via quick-access patterns. Each has different tradeoffs, and the right answer is all three working together.

Chat history is where documents originate. When a booking is confirmed, the confirmation message includes the reference number and links to associated documents. This is the natural context — the document emerged from a conversation. But chat history is chronological, not organized by type or urgency. Finding a specific document means scrolling through potentially hundreds of messages.

The Documents tab in the [trip detail view](/blog/designing-trip-detail-view) is the organized home. Documents are sorted by type (boarding passes, confirmations, insurance, visas) and associated with their relevant trip. Each document has a clear card with a type icon, title, date, and action buttons. This is where users go when they have time to browse.

Quick-access patterns are the solution for the boarding gate moment. A prominent button or shortcut that surfaces the most relevant document for the current context without any scrolling or navigation. The user opens the app, and the document they most likely need right now is one tap away.

## PDF rendering on mobile

Most travel documents are PDFs. Boarding passes, confirmation letters, insurance certificates, visa printouts. Rendering PDFs on mobile is a solved problem technically, but the UX around it requires attention.

The PDF viewer needs to open fast — under one second from tap to visible document. It needs to support zoom for reading fine print (fare conditions, insurance exclusions). It needs to handle both portrait and landscape orientations because boarding passes are often landscape. And it needs to work offline, because 72 percent of document access happens in transit — airports, airplanes, train stations — where connectivity is unreliable.

We cache all trip documents locally after they are first downloaded. The cache persists through app restarts and airplane mode. When the user opens a document, it loads from the local cache instantly, with a background refresh from the server if connectivity is available.

## Share and export

![Supporting diagram](https://pics.nowah.xyz/website-media/design-017-img-2.webp)

Documents need to move beyond the app. Users share boarding passes with travel companions, email hotel confirmations to expense departments, and add boarding passes to their device's wallet app.

The share action on each document card opens the platform's native share sheet — the same one used for photos, links, and files across the operating system. This gives users access to every sharing channel their device supports: messaging apps, email, AirDrop, saving to files, and wallet apps.

For boarding passes specifically, we support export to the device wallet (Apple Wallet on iOS, Google Wallet on Android) where supported. This puts the boarding pass in the most accessible location possible — the lock screen widget that appears when the user arrives at the airport.

## Document types

Four document categories cover the majority of travel paperwork:

Boarding passes are the most time-critical. They need to be accessible within seconds, work offline, and be exportable to device wallets. They are associated with specific flight segments.

Confirmation emails document the booking details — what was booked, for how much, with what cancellation terms. They serve as receipts and reference documents.

Travel insurance certificates prove coverage and contain emergency contact numbers. They are most needed during emergencies — the worst possible time to be searching through chat history.

Visa documents include approvals, invitation letters, and supporting paperwork. They are needed at border crossings and immigration checkpoints, again under time pressure with limited connectivity.

Each type has different urgency patterns. Boarding passes peak in urgency at the gate. Insurance peaks during medical emergencies. Visa documents peak at immigration. Confirmations are steady-state reference documents with lower urgency. The UI can use these patterns to surface the right document at the right time.

## Designing quick-access

The quick-access pattern surfaces the most relevant document based on context. The logic considers the user's current trip status, time proximity to events, and location.

If the user has a flight departing in the next 6 hours, the boarding pass for that flight is the quick-access document. If the user is checking into a hotel today, the hotel confirmation is surfaced. If no immediate event is pending, the quick-access shows the next upcoming document.

On the trip overview, this manifests as part of the "Next Up" component: "Boarding pass ready — tap to view." One tap opens the document. No scrolling through chat, no navigating through tabs, no searching. The critical document is always within reach.

[Document management](/blog/launching-document-management-boarding-passes) is the least glamorous part of a travel app and the most appreciated [under pressure](/blog/connection-pooling-under-pressure). When the gate agent is waiting and the line is growing, the user does not care about AI conversations or beautiful animations. They care about getting their boarding pass on screen within a couple of seconds. Design for that moment.

---

Nowah is an AI travel agent that searches and books real flights and hotels through conversation — no filters, no thirty open tabs. [Plan your next trip](https://app.nowah.xyz).
