Product

An age decision at the door. No identity in the platform.

Laurel Secure is for age-gated businesses. The check happens on-device, identity data stays there, and only pass, fail, or unable to verify crosses into aggregate reporting.

01 · The modules

Each part has one narrow job.

The reader makes the age decision locally. The boundary carries a closed outcome. The platform operates on aggregates rather than patron records.

On device

The verification check

The identity interaction and age check remain on-device. Identity fields are not sent to the Laurel Secure platform.

At the boundary

The three-outcome interface

Only pass, fail, or unable to verify crosses from the check. The platform does not need a name, birth date, portrait, or document identifier to use the result.

In storage

Aggregate counters

Outcome storage is aggregate-only. There is no patron entity and no persistent patron profile behind the counts.

In reports

Suppressed small buckets

Day-level buckets remain hidden until they reach the k=3 threshold, with suppression applied before a report renders.

02 · The portal

Operations without a patron lookup.

The portal brings reader status and aggregate outcome counts into one operational view. It has no patron list to search and no persistent patron profile to open.

The interface shown here is illustrative. Its numbers are examples, not customer or patron data.

03 · The complete output

Three answers are enough.

Staff get a clear next step. The platform gets a countable result. Identity remains on the device where the check happened.

pass

The mobile credential proves the requested age threshold.

fail

The credential answers that the requested age threshold is not met.

unable_to_verify

The reader cannot complete a trustworthy check, so staff use the normal fallback.

04 · What is absent

No patron record is hiding behind the interface.

The product stays useful by retaining less: aggregate operating signals without a system of record for the people being checked.

No entity

No patron object

The platform data model does not create an entity for the person being checked.

No profile

No persistent identity

There is no patron profile for the portal to retrieve, display, or build over time.

No event history

Counts, not patron rows

Aggregate counters replace a list of individual, patron-level verification events.

See the boundary in your workflow.

Tell us where the age check happens and what your team needs from the result.