Trust and security

Built so it cannot lie to you.

Your payment records and family data deserve safeguards you can verify, not reassurance. Here is how each one works.

Honesty is built in

Three honesty decisions, enforced by code.

Any product can claim transparency. These three decisions enforce it.

  1. No parent can accuse you of hiding a fee.

    When you waive a fee, the family’s statement shows waived, not paid. The ledger records a waiver as a waiver.

  2. Every number you quote a parent is correct.

    The assistant checks each figure and name against your records before you see it. Anything it cannot verify is removed.

  3. Every number on screen is one you can defend.

    We removed a dashboard tile because its counts could not be reconciled with the rest of the app. An unverifiable number is worse than none.

Your centre, walled off

No other centre can read your data.

Application-level isolation is a promise. Database-level isolation is a rule. ShowUp enforces it in the database.

27

tables that hold your centre’s data 0 readable from any other centre

27 tables · isolation enforced by the database, not by the application code

Under the hood

Built for a security review.

Six pillars. Each lists proofs you can verify or ask us to demonstrate. Hand this section to your IT reviewer.

Security by design

Your data cannot leak between centres or to an attacker.

  • Row-level security on all 27 tenant tables, enforced by Postgres. The table list is derived from the schema, so it cannot fall out of date.
  • The operator console requires an authenticator app on top of an emailed code. Recovery codes are stored hashed.
  • The sign-in page returns an identical response for known and unknown email addresses, so it cannot reveal who is enrolled.

Data integrity

Your financial records cannot change after the fact.

  • Collected amounts are frozen at the moment of payment. History is immutable.
  • A database constraint allows exactly one live settlement per cycle.
  • Every CSV and Excel export is escaped against formula injection. A repo-wide scan fails the build if an unescaped writer appears.

Resilience

A failure on our side does not stop your centre.

  • Backups are restore-tested, with row counts verified table by table against the source.
  • The full product can boot from a backup on a laptop. We run this as a drill.

Observability

You hear about a failure from us, not from a parent.

  • A failed message appears on your screen in plain language, with a retry button.
  • Failures alert a person, not a log file.

The quality gate

No change reaches your centre until every gate passes.

The operator console enrolling an authenticator app: the QR code and one-time recovery codes that lock down the people who run ShowUp itself

We lock ourselves out too. Operator sign-in requires an authenticator app on top of an emailed code.

≈ 3,250 automated tests

Seven gates, in order. A deploy happens automatically, only after all seven pass.

The governed assistant

The assistant acts for you only with your confirmation.

  • Every figure in an answer is verified against your records before you see it, in about one millisecond.
  • It proposes an action and waits for your confirmation. It never acts on its own.
  • Usage is budgeted per plan, so it can never run up a bill behind your back.

Questions

Questions careful owners ask.

Who can see my centre’s data?

You, the teachers you invite (classes only, never money), and the families you enrol (their own records only). No centre can read another centre’s data. Every record carries its centre, and the database rejects rows from any other.

Is my data used to train anything?

No. Your data is never used for training. The assistant reads your records only to answer your questions, and checks its answers against those same records before you see them.

What happens to my data if I leave?

You can export your full ledger and register at any time, in formats that open in Excel or Google Sheets. There is no lock-in.

How do you handle payments?

Card details never reach ShowUp. Checkout runs on Stripe. ShowUp records only that a payment happened, never a card number.

How much testing sits between a change and my centre?

Every release runs seven gates: roughly 3,250 automated tests across the API, the web app, integration, tenant isolation, and a real database, plus type checking and a full build. Nothing deploys until all seven pass.

From S$19 a month · 60-day money-back promise

Move your centre across with confidence.

See a full working day inside the app, then decide. Every plan includes a 60-day money-back guarantee.