Trust center

Everything your reviewer will ask for, in one place.

Including the parts that are unfinished. A trust page that only lists strengths is a marketing page wearing a security page's clothes.

02 · System architecture

Three surfaces, one writer.

The public site, the operational portal, and the verifier fleet all talk to one API, which is the only writer to the database. Shared contract schemas define every boundary — including the device boundary, which is where the privacy guarantee is enforced rather than asserted.

Component Role
Verifier fleet Android verifiers; local decision, durable outbox
API The only writer; serves both frontends and the fleet
Portal Authenticated operational dashboard
Public site Static content with four reviewed, disclosed public API dataflows
Database Operational data only; no patron entity exists

03 · Public-site dataflows

Every browser-to-API call.

The public site has no visitor account, analytics cookie, or hidden visitor identifier. These are the complete reviewed network flows initiated by its JavaScript.

GET /public/mobile-id-support

mobileIdSupport

Trigger: A visitor opens a mobile-ID support directory or state page.

Fields: registry and schema versions; public jurisdiction and wallet identifiers; closed operational support labels.

Browser policy: credentials omit; referrer no-referrer.

Client storage: Memory for the current page only; no cookie or visitor ID.

Server retention: No visitor record is created by this read.

POST /contact

contact

Trigger: A visitor deliberately submits the contact or pilot form.

Fields: work email and organization; contact message, or closed pilot-qualification answers; server-generated support reference.

Browser policy: credentials omit; referrer no-referrer.

Client storage: None; the form is cleared only after an accepted response.

Server retention: Contact messages follow the customer-contact process in the transactional-email system. Pilot inquiries are staff/business records in the platform database and are subject to the documented customer-contact deletion process; they are never verification telemetry.

POST /public/mobile-id-support/tester-interest

testerInterest

Trigger: A visitor deliberately registers for controlled mobile-ID qualification.

Fields: contact email and affirmative consent; public jurisdiction and wallet family; coarse device type and in-person availability.

Browser policy: credentials omit; referrer no-referrer.

Client storage: None.

Server retention: Delivered to the dedicated contact inbox under the customer-contact retention process; not inserted into platform verification or qualification tables.

POST /public/conversion-events

conversionEvents

Trigger: A visitor activates one of four enumerated public calls to action.

Fields: closed call-to-action type; optional public jurisdiction and wallet family.

Browser policy: credentials omit; referrer no-referrer.

Client storage: None; delivery is best-effort and has no retry identifier.

Server retention: Daily aggregate counts only. No IP address, user agent, cookie, visitor ID, event row, or contact linkage is retained.

04 · Data inventory, in one line

What the platform can never hold.

  • Name
  • Date of birth
  • Address
  • Portrait or photo
  • Document number
  • Wallet identifier
  • Mobile-ID payload
  • Session transcript
  • Patron identifier
  • Repeat-visitor identifier

The full inventory — including the operational records that do exist and their retention windows — is on data and retention.

05 · Release posture

How software reaches a device.

Signed releases

Verifier releases are signed with the permanent LaurelID certificate. Signing identity is verified as part of deployment; a build that does not match is not a LaurelID release.

Artifact evidence

Each release directory carries generated metadata — identity, size, hashes, signer, SDK values — derived from the exact validated artifact rather than hand-authored. Absence of that metadata means the candidate was never packaged.

Physical acceptance gates

A packaged release is not an accepted release. Acceptance requires a physical run on real hardware with a real credential. We treat packaging and acceptance as separate facts because conflating them is how fleets get hurt.

06 · Current limitations

Stated by us, up front.

No third-party certification

No SOC 2, ISO 27001, or PCI attestation. No completed independent security audit. No regulatory approval or government endorsement of any kind.

Completed-evidence candidates

The checked-in registry records physical evidence for 15 jurisdictions in both Apple Wallet and Google Wallet on Elo M51; 14 have also passed the canonical production gates. Arkansas is physically qualified in Apple Wallet and Google Wallet, but official issuing-authority certificate binding remains pending; it is not production enabled. Current support still requires live operational confirmation; every pair is listed with a fail-closed status on the compatibility page.

No published availability figure

We do not publish an uptime percentage, an accuracy rate or a public status page, because we have no measurement we would defend yet. Verification does not depend on the platform: the check runs on the verifier, and during a platform incident checks continue while setup, changes and reporting wait. Incident communication is a named responsibility in every pilot agreement.

One known reporting edge case

A process kill in the narrow window after a result is shown but before the outbox commit can lose that one aggregate event. Described in full on offline reliability.

Next step

Run a security review before you run a pilot.

We would rather your reviewer finds our limits than your rollout does.