Privacy Policy

Effective November 7, 2026

This policy explains how ID Scanner for StarRez handles information in the mobile app and on this website. The app is published by Nathan Fredericks. Questions can be sent to nathan@fredericks.dev.

What the app processes

When you scan an ID card, the app takes a photo and reads its text on your device. It sends only the recognized student number to StarRez to find a matching record. The card photo and any other recognized text, including date of birth, stay on your device and are never sent to StarRez. You can also type a student number or search by name or room. The app may display names, dates of birth, ages, room assignments, portraits, and other details returned by StarRez. If StarRez does not return a date of birth or age, the app may use the date of birth recognized from the card locally to calculate age. It also displays your signed-in StarRez profile.

The card photo stays on your device and is deleted immediately after each scan attempt, before any sign-in prompt or network request. Recognized card text is held only in the app's working memory during the lookup and is not saved as a separate record. The publisher does not receive your card photo, recognized text, searches, or StarRez results when you use your organization's StarRez instance.

Sign-in and StarRez requests

When the app connects to the configured organization's StarRez instance, the app opens its sign-in page in an in-app browser. Sign-in details go to that organization's sign-in provider and StarRez service, not to the publisher. The app sends the searches you request directly to that StarRez instance over HTTPS using native WebView cookies and anti-forgery tokens. Your organization and its service providers may keep account, request, and security logs under their own privacy policies. Contact your organization about the records and account it manages.

The in-app browser keeps session cookies according to the sign-in provider's settings so you can stay signed in. The app does not capture your institution password. Signing out clears the app's cookies, browser storage, cache, and native website data. Using your organization's instance does not create a separate account with the publisher.

Information saved on your device

Successful scans are saved in an encrypted database on your device so you can review recent results. A saved result can include a student number, name, date of birth, age, room assignment, portrait, scan time, and a flag you add. Saved results expire after 24 hours. Flagging a record does not extend that expiry. The app removes expired results while it is running or the next time it opens; a closed app cannot delete them until it runs again. You can delete one result, delete all history, or sign out to delete all saved results, portraits, and flags immediately.

After sign-in, the app fetches a minimal index of permitted residents with In Room status so that name searches are fast and tolerant of nicknames or spelling errors. This index contains entry and student IDs, recorded, preferred, and last names, In Room status, and room information when available. It does not contain dates of birth, ages, contact details, or portraits. The index is encrypted, scoped to the StarRez server and staff account, and expires 24 hours after fetching starts. Searches do not extend its expiry, and signing out deletes it. All name matching runs on the device without any cloud or generative AI service.

The selected StarRez instance is saved on your device. The encrypted database is excluded from device backups. Android backup is disabled. Uninstalling the app removes its local data, subject to your device's operating system. Deleting app data does not delete records held by your organization's StarRez service.

Text recognition and other services

The iOS app uses Apple Vision and the Android app uses Google ML Kit to read text on the device. Card photos and recognized text are not sent to Apple or Google for text recognition.

Google states that its Android ML Kit SDK collects generic device and app information, a per-installation identifier, performance metrics, API configuration data, feature input and output sizes, event types, and error codes for diagnostics and usage analytics. No StarRez account information, student or resident information, room information, card image, or recognized card text is supplied to ML Kit for these metrics. See Google's ML Kit data disclosure at https://developers.google.com/ml-kit/android-data-disclosure.

The app uses Statsig to provide migration and service notices, select the configured StarRez server, and enable or disable app features. Statsig receives an anonymous installation identifier, app version, platform, build number, the running Shorebird patch number when available, SDK metadata, and configuration check and diagnostic traffic. As with other network services, Statsig can receive connection information such as the requesting IP address. The app does not send Statsig your StarRez identity or credentials, resident information, searches, card images, or recognized text. Configuration settings and notice history are cached in secure storage on your device and remain effective offline. Apart from the staff usage information described below, the app does not log usage analytics. It does not include advertising, advertising tracking, or remote crash reporting. The publisher does not sell personal information.

The app also uses Shorebird to download eligible app code updates in the background and apply them on a later app launch. Shorebird receives app, release and patch metadata, platform and processor architecture, and an anonymous identifier for the app installation. Its network infrastructure may process connection information such as IP addresses. The app does not send Shorebird staff identities or credentials, resident records, searches, card images, or recognized text. Updates do not extend local data retention. See Shorebird's privacy policy at https://shorebird.dev/privacy.

Staff usage information

The app automatically records how signed-in staff use it, to understand who uses the app and how well it works. Collection starts once your signed-in staff profile has loaded, without an acknowledgement step in the app. It applies only to the Acadia University StarRez instance and is never used with the demo service.

The app sends your StarRez sign-in email, your name and your residence building. For each app session it sends when the session started, when the app was last open, how long the app was in the foreground, how many residents you opened by camera, typed ID, name search and room lookup, and how many flags you added and removed. For each name search it sends when you submitted it, how it ended (for example, whether you opened a result) and how many seconds it took to open a result. Each record also includes a staff identifier derived from your email, a random record identifier, the app version, build and patch number, the platform, and whether it came from a production build.

The app never sends resident names, student numbers, rooms, dates of birth, ages, portraits, card photos, recognized text, or what you type in a search.

This information goes to a collection service operated by the publisher on Amazon Web Services in Canada. It is kept for one year and then deleted automatically. The service keeps operational logs of record counts and error codes, without the records themselves, for 14 days. As with other network services, the collection service can receive connection information such as your IP address. The publisher uses it to produce reports about how the app is used, and those reports stay with the publisher. The publisher views them in a private dashboard, hosted on Amazon Web Services in Canada, that only the publisher can sign in to.

The app has no setting to turn off staff usage collection. To ask about your usage information or request its deletion, contact nathan@fredericks.dev.

Screen and device protections

Android prevents screenshots and screen recording at the operating-system level. On iOS, the app covers its content when it leaves the foreground so resident information is not shown in the app switcher. The signed-in staff profile portrait stays in app memory only and is not added to history.

This website

This website provides app information and does not have an account or contact form. It is hosted by AWS Amplify, which may process IP addresses and browser request information to serve and protect the site. If you email the publisher, your message and email address are used to respond to you and are retained in the publisher's email service. Do not send ID card photos or resident records by email.

Your choices and questions

You can deny camera permission, although scanning then will not work. You can remove local scan history at any time in the app and clear the session by signing out. Institutions and sign-in providers govern their own server logs and account deletion; removing data from this app does not remove institutional records.

To ask about information handled by the publisher or an email you sent, contact nathan@fredericks.dev. For access to, correction of, or deletion of institutional StarRez records, contact the organization that manages those records.

Changes to this policy

This page will be updated when the app's data practices change. The effective date at the top shows when this version took effect.