Skip to content
Kokai
Language
Sections of this page
Open the app

How it works

Offline travel documents: tickets, bookings and passport on your phone

In Kokai, every ticket, booking, entry ticket or insurance policy is a document with its details (booking reference, dates, holder) and its files: the PDF or photo is stored on your device and opens offline. Your passport, ID card and anything valid for every trip go in the wallet, which reminds you 30 days before they expire, and 60 days before a trip if your passport won’t last six months after you’re back. Files are never uploaded to the Kokai server.

Reviewed on 14 min read

In a nutshell

Document types
10: passport, identity document, visa, insurance, ticket, booking, entry ticket, car and driving, health and vaccines, and other. Five of them can go in the wallet.
Files
PDFs and photos, several per document. They’re stored on your device and open offline.
Expiry reminders
At 10:00 on the day that is 30 days before any document with an expiry date expires.
Passport cutting it close
If it expires less than 180 days (6 × 30) after you’re back, you get a reminder 60 days before you leave, at 10:00.
Day before
«Mañana:» (“Tomorrow:”) and the title of the ticket, booking, entry ticket or car, at 18:00 the day before.
Reading the PDF
On your device, without AI: the first 6 pages of a PDF of up to 20 MB.
Copy in your account
Ticket and booking details, yes. Files, never. For passports, ID cards and health documents, not even the details: only their type.
Google Drive
Soon: a “Kokai” folder with one folder per trip and another for the wallet.

What a document holds

A document in Kokai isn’t just a file: it’s a record with the details you look for in the boarding queue or at a hotel front desk, with the PDF or photo attached. Each trip has its Documentos (“Documents”) screen, and each document holds:

FieldWhat goes in itDetails
TypeTicket, booking, passport…One of the 10 types in the next table. It sets the icon and how the list is grouped.
Title“Madrid – Lisbon flight”, “Hotel in Alfama”If you leave it empty, the name of the type is used.
Booking referenceThe booking codeThe field is «Referencia o localizador» (“Reference or booking code”); for passports and identity documents it’s called «Número» (“Number”). It’s shown in a monospaced font.
HolderWhose name it’s inUseful when several of you travel and each has their own ticket.
From and ToThe document’s datesOn a ticket, «Fecha de salida» (“Departure date”); on a booking, «Entrada» and «Salida» (“Check-in” and “Check-out”).
ExpiresThe expiry dateIt’s what triggers the expiry reminders.
FilesPDFs and photosStored on your device, with their name and size.
Related placeA place on the trip’s mapThe hotel booking on the hotel: you see it from the place’s card.
Notes and tagsAnything you want to jot downTags let you filter the list.

Fields save themselves half a second after you stop typing: there’s no save button on the card.

The 10 document types, and which go in the wallet

Travel papers come in two kinds: those for one trip (the outbound ticket, the booking for those nights) and those that go with you on every trip (your passport, your driving licence). The second kind goes in the wallet, and only five types can go there:

TypeIn the walletWhat for
PassportYesWith its number and expiry date. It’s the only type that triggers the “passport cutting it close” warning.
Identity documentYesNational ID card or identity card.
InsuranceYesAnnual travel insurance in the wallet; single-trip insurance, in that trip.
Car and drivingYesDriving licence, international driving permit or a car rental on a trip.
Health and vaccinesYesHealth card, vaccination record, prescriptions.
VisaNoIt goes with the trip it was issued for.
TicketNoFlights, trains, buses and boats.
BookingNoAccommodation and other dated bookings.
Entry ticketNoMuseums, concerts, excursions.
OtherNoAnything that doesn’t fit the above.

Inside a trip you can create a document of any of the 10 types; in the wallet, only those five.

The wallet: what’s valid for every trip

The wallet gathers the documents that don’t belong to any trip. You open it from the account menu, under «Cartera» (“Wallet”), and it keeps what makes no sense to add again every time you plan a trip.

  • Whatever is in the wallet also shows in the documents of each trip, under «De tu cartera» (“From your wallet”), with the label «de la cartera» (“from the wallet”) on its card.
  • A passport in the wallet is checked against the dates of all your trips to warn you if its validity is cutting it close.
  • Expiry reminders for the wallet work just like a trip’s: 30 days before, at 10:00.
  • PDFs aren’t read when added to the wallet: reading is for bookings, which belong to a trip.
  • A wallet document isn’t linked to places on the map, because it doesn’t belong to any trip.

Files that open offline

When you create a document you pick its «Ficheros (PDF o fotos)» (“Files (PDF or photos)”), one or several. Later, on the card, «Añadir» (“Add”) adds more. On your phone you can take the photo right then.

Files are stored inside your device, in the app’s storage (IndexedDB in the browser), apart from the card so the document list loads fast. Nothing is downloaded when you open them: that’s why they open just the same on a plane, in a country with no data or on a platform with no signal.

Viewer
Tap a file on the card and it opens inside the app: photos as images and PDFs in their viewer. «Abrir aparte» (“Open separately”) opens it outside the app, for example to zoom in on a QR code.
Removing a file
The cross button next to each file removes it from the document and deletes it from the device.
Out of space
If storage is full (a video instead of a photo, a browser in private mode), the app says so: «No se ha podido guardar» (“It couldn’t be saved”).
On another device
If you sign in to your account on another device, the card arrives but the file doesn’t: you see «Se añadió en otro dispositivo y no está en este.» (“It was added on another device and isn’t on this one.”)

In the browser, how much space the app gets and when it may be cleared is up to each browser. If a document is essential, open it once before you leave to check it’s there.

Booking references you can read without mixing up letters

A six-character booking reference read out at a desk leaves no room for doubt between a zero and an O. The «Referencia o localizador» field (and «Número» on a passport) uses Atkinson Hyperlegible Mono, a typeface designed by the Braille Institute so that look-alike characters stand apart: 0 and O, 1, l and I.

  • Your phone’s keyboard suggests capitals in that field, and spell-check is off: a booking reference isn’t a word.
  • In the document list, under each title, you see the booking reference, the date and the holder, without opening the card.

Expiry and reminders

In the list, a document with an expiry date shows «Caduca pronto» (“Expires soon”) if there are fewer than 60 days left and «Caducado» (“Expired”) once it has passed. On top of that, your device schedules local reminders: it works them out itself, without a server, and they arrive even when you’re offline.

ReminderWhen it arrivesCondition
«(Tipo) a punto de caducar» (“(Type) about to expire”)30 days before the expiry date, at 10:00Any document, from a trip or the wallet, with a date in «Caduca» (“Expires”).
«Revisa tu pasaporte para (viaje)» (“Check your passport for (trip)”)60 days before the trip starts, at 10:00A passport in the wallet that expires less than 180 days after the trip ends.
«Mañana: (título)» (“Tomorrow: (title)”)The day before the «Desde» (“From”) date, at 18:00A trip’s ticket, booking, entry ticket or car. It includes the booking reference if there is one.
«Mañana empieza (viaje)» (“(Trip) starts tomorrow”)The day before the start, at 19:00A trip with a start date.
«Queda una semana para (viaje)» (“One week to (trip)”)7 days before the start, at 10:00A trip with a start date.
«Puedes cancelar gratis (alojamiento) hasta el…» (“You can cancel (stay) for free until…”)2 days before the deadline, at 10:00A booked stay with a free cancellation date.
«Hoy es el último día para cancelar gratis…» (“Today is the last day to cancel for free…”)On the deadline day itself, at 10:00The same stay.
«Mañana duermes en (alojamiento)» (“Tomorrow you sleep at (stay)”)The day before check-in, at 18:00A booked stay. It replaces the «Mañana:» reminder for its booking.
«Hoy dejas (alojamiento)» (“Today you leave (stay)”)On check-out day, 2 hours before check-out time, between 6:00 and 9:00; with no time set, at 8:00A booked stay.

Times follow your device’s clock, wherever you are. Only reminders that haven’t passed yet are scheduled, they’re recalculated every time you change a trip or a document, and there are at most 60 at once, soonest first: iOS keeps no more than 64 scheduled notifications per app.

Kokai doesn’t know each country’s entry requirements and doesn’t tell you whether you can travel: it reminds you so you can check. The requirements for each destination are in the travel advice of the Spanish Ministry of Foreign Affairs and at the country’s embassy.

Documents linked to places, and tags

On the card of a trip document, «Sitio relacionado» (“Related place”) links it to a place on the map: the booking to the hotel, the entry ticket to the museum. From the place’s card you then see its documents, and deleting the place doesn’t delete the linked documents.

Tags belong to your account, not to the trip, and have no colour. Above the document list there’s a filter: with several tags chosen, you see the documents that have all of them. When a booking PDF is read, two are added on their own, the provider’s and the class’s («Booking.com» and «Alojamiento», “Accommodation”).

A booking PDF is read on your device

When you add a PDF to a trip document, Kokai reads it on the device itself, without AI and without sending it to any server. Meanwhile it says «Leyendo el PDF en este dispositivo…» (“Reading the PDF on this device…”), and when it’s done it shows what it found: the provider, what it is, the dates, the booking reference, the price and the free cancellation deadline.

  • It only fills in what’s empty: anything you typed is left alone.
  • If it’s an accommodation booking with dates, its nights appear in Accommodation.
  • It recognises 65 brands (Booking.com, Airbnb, Ryanair, Renfe, Europcar…) and labels in seven languages.
  • A photo or a scanned PDF has no text and isn’t read.

All the details, with the list of brands, the labels by language and a full example, are in the guide which booking confirmation PDFs Kokai reads.

A copy in your Google Drive (soon)

Files live on your device. If you lose it, they’re lost with it, and they aren’t on your other devices. That’s what the copy in your own Google Drive is for: it’s built and can’t be turned on yet, because the setup with Google isn’t finished.

Once it’s available you’ll turn it on in Settings, with «Guardar los documentos en Google Drive» (“Save documents to Google Drive”), and it will work like this:

  • It creates a “Kokai” folder in your Drive, with a folder per trip inside and another called «Cartera» (“Wallet”).
  • Each file is uploaded with the document’s title in front: “Tren a Oporto · billete.pdf” instead of “IMG_2041.jpg”.
  • It asks for Google’s drive.file permission: Kokai only sees what it created in your Drive, not the rest of your files.
  • It never duplicates: every file and folder carries a mark with its identifier, and before uploading anything it searches by that mark.
  • Removing a file, deleting a document or deleting a trip sends its copy to the Drive trash, where you can recover it for 30 days. Renaming a trip renames its folder.
  • Copying happens with the app open; anything you add offline is uploaded when the connection returns. In the list, «En Drive» (“In Drive”) marks documents with all their files copied.
  • Files go from your device straight to Google, without passing through the Kokai server.

If you turn it on, Drive receives the files of all your documents, including the passport photo in your wallet. It’s your Google account, but it’s worth knowing before you switch it on.

What doesn’t leave your device

Your trips have a copy in your Kokai account so you can see them on all your devices (you turn it off in Settings → Account, and turning it off deletes it from the server). Documents go into that copy with limits:

WhatOn your deviceCopy in your accountAI
Files of any document (the PDF, the photo)YesNeverNever
Details of tickets, bookings, entry tickets, visas, insurance, car and other (title, booking reference, dates, notes, file names and sizes)YesYes, unless you turn the copy offNever
Passport, identity document, health and vaccinesYesNot even the details: only a mark with their typeNever

The card of a passport, identity document or health document says so: «Este documento no se copia en tu cuenta de Kokai: se queda solo en este dispositivo.» (“This document isn’t copied to your Kokai account: it stays only on this device.”) If you use AI, it never receives your documents: neither your passport nor your bookings with their reference. All the details are in Your data.

Deleting a document deletes its files

With «Borrar el documento» (“Delete the document”) on the card, Kokai asks for confirmation («Se borran también sus ficheros de este dispositivo. No se puede deshacer.», “Its files are also deleted from this device. This can’t be undone.”) and then:

  1. The contents of its files are deleted from the device right away. A passport photo isn’t kept after you delete it.
  2. The document is marked as deleted, and that mark reaches your other devices through the account copy.
  3. If it was an accommodation booking, its nights stay booked in Accommodation, without the link to the document.
  4. If you had the Google Drive copy on, its files go to the Drive trash.

Deleting a trip also deletes its documents (not those in the wallet), and deleting your account from Settings deletes the copy of your trips from the server.

Check it yourself

You don’t have to take any of this on trust: these are the steps to see it in the app with your own eyes.

  1. Open a trip and go to «Documentos» (“Documents”) (on your phone, from «Más», “More”).
  2. Tap «Añadir documento» (“Add document”), choose the type «Billete» (“Ticket”), type a title and, under «Ficheros (PDF o fotos)», pick a PDF or a photo. Tap «Guardar» (“Save”).
  3. On the card, type a booking reference in «Referencia o localizador» and set a date in «Desde» (“From”): the title and the reference show in the list.
  4. Turn on airplane mode and tap the file again: it opens just the same.
  5. Tap «Abrir la cartera» (“Open the wallet”) and add your passport with its date in «Caduca» (“Expires”). Go back to the trip’s documents: if it’s cutting it close for the trip’s dates, the warning appears.
  6. To finish, open the test document and tap «Borrar el documento» (“Delete the document”).

Open the app

Frequently asked questions

Can I open my tickets offline?

Yes. The PDF or photo is stored on your device when you add it, and opening it needs no connection. Open them once before you leave to check they’re on that device, especially if you added them from another one.

Why can’t I see on my phone the PDF I added on my computer?

Because files aren’t uploaded to the Kokai server: the document’s card reaches your other devices through the account copy, but the file stays where you added it. Add it on your phone too. The Google Drive copy, coming soon, will let you have them everywhere.

Is the photo of my passport stored on any server?

Not on the Kokai one: neither the photo nor the passport details leave your device. Only if you turn on the copy to your Google Drive (soon) would the file be copied there, in your own Google account.

When does it remind me that a document is expiring?

At 10:00 on the day that is 30 days before the date set in «Caduca» (“Expires”). For passports there’s a second reminder, 60 days before a trip, if it expires less than six months (180 days) after you’re back.

Does Kokai read photos of a ticket?

Not yet. It reads the text in PDFs, but a photo or a scanned PDF has no text, and reading them would take recognising letters in the image. They’re still stored and open offline, but you fill in the details by hand.

Sources and references

The original documentation for what is cited here, checked on this page’s review date.

  1. Travel advice by country Spanish Ministry of Foreign Affairs
  2. IndexedDB API MDN Web Docs
  3. Storage quotas and eviction criteria MDN Web Docs
  4. Atkinson Hyperlegible Font Braille Institute of America
  5. Choose Google Drive API scopes (drive.file) Google for Developers
  6. Delete files in Google Drive (30-day trash) Google Drive Help
  7. PDF.js Mozilla

Keep reading

This page in Markdown, to read it with other programs