Passmagic

Privacy Policy

How Passmagic handles the tickets you share and the passes you make.

Last updated 5 October 2026

At a glance

  • You do not need an account. Passmagic does not use advertising or cross-app tracking, and we do not sell your personal data.
  • Your original tickets and saved passes are kept on your iPhone. They may also be included in your device backups, depending on your backup settings.
  • With your permission, ticket text is sent to our server and to AI services to make a pass. Some photos and scanned PDFs also send a resized image.
  • The pass details are sent to our server again for signing so Apple Wallet can accept the pass.
  • We keep installation verification records, daily usage counts and technical diagnostics to protect and operate the service. These are separate from your locally saved tickets and passes.

Who is responsible

Passmagic is operated by Harris Jose, an independent developer based in India ("we", "us"). This policy covers the Passmagic iPhone app and passmagic.app. Contact us at hello@passmagic.app.

Information on your iPhone

When you choose or share a screenshot, photo, PDF, email text or message, Passmagic keeps a local copy and uses Apple's on-device tools to read text and barcodes. Originals remain in your library until you delete them, including when you cancel or a pass cannot be made. Saved pass details and signed passes are also kept locally so you can view or share them later.

Photos access is optional. If you allow it, Passmagic shows thumbnails of recent photos and screenshots; only the item you select is processed to make a pass. You can also choose an item through Apple's system photo picker without granting photo-library access.

You can delete an unconverted original, or delete a saved pass and its associated original from the app. Deleting the app removes its local data, but copies you added to Apple Wallet, shared elsewhere or kept in a device backup are managed separately.

Information sent to make a pass

Before sending ticket contents to AI, the app asks for your permission. If you agree, it sends the text and barcode information read from the item you selected to our server. A ticket may contain your name, contact details, booking reference, travel or event details, and the barcode value. The app also sends your local calendar date to help interpret tickets without a year.

For a camera photo, a scanned PDF or an image with very little readable text, the app may send an image of the selected ticket too. It resizes and re-encodes that image without camera or location metadata before sending it. A normal screenshot or a PDF with readable text usually sends only the extracted information.

Our server sends this information to OpenRouter, which routes it to Google or OpenAI models through eligible hosting providers. Our requests require zero data retention at the inference endpoint and disallow provider data collection. OpenRouter input/output logging and use for product improvement are disabled for our account. Ticket contents are processed to return pass details, without being saved in a ticket database or used for model training. Technical metadata is handled separately, as described below.

If you choose “Not now,” that pass is not made and its contents are not sent to the AI service. You can withdraw permission for future passes in the app under Settings → Use AI to create passes. This does not undo processing that already happened.

Pass signing and Apple services

To create an Apple Wallet pass, the app sends its finished pass fields, including any personal details shown on the pass and its barcode, to our Cloudflare-hosted server for signing. The server returns the signed pass without storing a copy in a pass database. If you add it to Apple Wallet, Apple handles that copy under Apple's Privacy Policy.

For some event tickets, the app may send a venue name or address to Apple Maps to find its time zone. Apple may also give us TestFlight feedback, crash information and limited app analytics according to your Apple settings. If you contact us directly, we receive the information you choose to send.

Security and usage records

To verify app installations and prevent replayed requests, we store an installation identifier, its public verification key, a verification counter and a registration timestamp. These records identify an installation, rather than a named account, and do not contain ticket contents.

We also keep daily counts of requests to create and sign passes, associated with that installation. These counts enforce usage limits. Short-term rate limits use your IP address or verified installation identifier to protect the API against excessive requests.

Technical diagnostics can include request outcomes, a shortened hash of the installation identifier, response times, the model used, pass category, whether an image was needed and error details. We use them to troubleshoot failures and operate the service. We do not intentionally log ticket text or images, but unexpected-error diagnostics can contain information from failed requests or provider responses.

App analytics

We use PostHog, hosted in the EU, to understand feature usage and improve reliability. Events describe importing an original, starting or completing pass creation, failure categories, completing review, adding a pass to Wallet and saving edits. They can include the import source, file type, pass category, processing duration, app version, build and operating-system version.

Events use a random installation identifier separate from our server verification identifier. We do not send ticket text, images, barcode values, names, filenames, issuer or venue details. We do not record screens or sessions, create named user profiles, or use location enrichment. Like other network services, PostHog receives connection information such as your IP address.

You can turn off future collection under Settings → Share usage data. This does not automatically erase events already received. Analytics records are retained under our PostHog project's retention settings. Contact us if you want to request deletion.

Website and connection information

passmagic.app is hosted by Cloudflare. We do not add advertising cookies or website analytics. Cloudflare processes connection information, including IP addresses, to deliver and protect the website and API. OpenRouter and inference hosting providers also process operational metadata, such as token counts, timing and billing information, separately from ticket contents.

Who receives information

We use Cloudflare to host the website and API; OpenRouter and its selected inference hosting providers to process tickets using Google or OpenAI models; PostHog for app analytics; and Apple for app distribution, optional Wallet storage, Photos access and Maps lookups. A model’s hosting provider can differ from the company that developed it. We share information as needed for these functions and may disclose it when legally required. We do not share it for advertising.

Retention and international processing

Originals and passes stay in the app until you delete them or the app. Our server handles ticket and pass contents while fulfilling a request and does not keep them in a ticket or pass database.

Daily usage counts are kept for the current UTC day and the previous 29 days, with older counts removed by daily cleanup. Installation verification records do not currently expire automatically.

Technical logs, infrastructure metadata and database recovery copies are subject to the relevant service provider’s retention settings and policies. The daily usage cleanup does not erase these separate records. Support emails and optional TestFlight feedback or diagnostics are retained as needed to handle support and investigate issues.

Cloudflare, OpenRouter and inference hosting providers may process information outside your country, including in the United States.

Your choices and rights

You can choose what to share, control Photos permission in iOS Settings, turn off future AI processing or usage analytics in Passmagic Settings, and delete originals or passes in the app. Deleting local items or uninstalling the app does not automatically delete server verification or usage records, Apple Wallet copies or device backups. Depending on where you live, you may also have rights to access, correct or delete personal data, object to or restrict processing, withdraw consent, or make a complaint to a privacy authority.

Email hello@passmagic.app to make a request or raise a privacy concern. We do not have named accounts or a ticket database. Server verification and usage records are associated with installations, so we may need further information to locate a record and verify that a request is yours. We will respond as required by applicable law.

Children and security

Passmagic is not directed at children under 13. If you are a minor, use it with a parent or guardian's permission. Data is sent to our server over an encrypted connection. We limit the ticket information we retain, but no service can promise absolute security.

Changes and contact

We will update this page and its date if our practices change. If we change what the app shares with third-party AI, we will seek any consent required before that sharing. For privacy questions or complaints, email Harris Jose at hello@passmagic.app.