Skip to content
U-Dispatch

Security

The claims below are ones the code can be held to. Each is enforced somewhere specific rather than promised in general.

One operator never sees another

Every record belongs to exactly one workspace, and every query is scoped to the one asking. A record that arrives from the wrong workspace raises an error rather than being returned — the check runs in production, not only in tests.

Panels are separated, and access is checked twice

Sessions do not cross hosts. Whether somebody may open a panel is decided by their account, and what they may do inside it by their role and their workspace’s grants — two independent gates, not one.

A second factor on every staff account

Authenticator apps with recovery codes, plus emailed codes. It is part of the sign-in itself rather than a setting somebody remembers to switch on.

A financial record that cannot be edited

Ledger entries are immutable. A mistake is corrected by a reversal that is itself recorded, so the history of a correction survives it — and one component is the only thing in the system allowed to write an entry at all.

Money is never a floating-point number

Amounts are stored in minor units as integers throughout — there is no rounding drift between what a customer was charged and what a restaurant is paid.

Payments and orders survive a retry

Any request that moves money or places an order carries an idempotency key, so a dropped connection or a double tap replays the original answer instead of charging twice.

Found something? Tell us directly at hello@u-dispatch.com