Documentation menu
Getting started

Choosing a factor

Two ways to prove the same thing, with very different mechanics.

Both factors answer "is the person at the keyboard really this user?". TOTP answers it with arithmetic both sides can do independently. Push answers it by reaching a specific device the user has already registered. Most products end up offering both — TOTP as the universal fallback, push as the one people actually enjoy using.

TOTP codesPush approvals
What the person doesOpens any authenticator app, reads six digits, types themGets a notification and taps the matching number
Needs the U2 Secured app?No — any RFC 6238 authenticator app the user already hasYes, paired to your app with a pairing code
Works offlineYes, entirelyNo — the device has to be reachable
What we storeNothing. The secret lives in your database and reaches us only inside each verification requestThe device registry, the pending approval, and the link between your user identifier and that device
Enrolment list in the portalNone — we have no record of a TOTP enrolment to show youYes — paired devices are listed and can be revoked
What counts toward your planVerifications you makeApprovals you request

Reach for TOTP when

  • You want every user covered on day one, without asking anyone to install your choice of app.
  • Your users may be offline, on aeroplanes, or behind restrictive networks.
  • You are comfortable storing a secret per user and encrypting it at rest.
  • You need a fallback for when push cannot be delivered.

Reach for push when

  • You want a one-tap sign-in rather than a retyped code.
  • You want to show the user what they are approving — "Login from Chrome on macOS" — so a phished prompt looks wrong.
  • You want to see who is enrolled, on what device, and revoke it centrally.

Offering both is the common case

Nothing prevents a user having both. A typical setup enrols TOTP during signup so nobody is locked out, then offers push as an upgrade once they install the app — falling back to TOTP whenever a push cannot be delivered.