High-value step-up authorization

A payment at or above the configured threshold is captured and then HELD: nothing posts until the user who initiated it re-confirms it with their own personal approval code. The threshold is a module-wide setting held in integer cents, and changing it is restricted to administrators — the change is written to the audit trail with the old and new values.

A new threshold applies to the NEXT payment captured. A payment already held for step-up keeps the threshold that was in force when it was captured, so the rule that decided it and the rule recorded on it can never disagree. With no configured row the module defaults apply (USD 50,000.00, 5 attempts, 15 minute lock-out), so a threshold is always in force.

Threshold in force

Module default
Step-up triggers at
USD 50,000.00 or more
Wrong attempts allowed
5
Lock-out
15 min

Never configured — the module defaults are in force.

Change the threshold

Amounts are entered in major units and stored as exact integer cents. The attempt allowance and lock-out are the rate limit applied to a user's approval code: once the allowance is spent the code is locked for the configured minutes, and while it is locked even the correct code is refused. Every change is role-gated to administrators and recorded on the audit trail.

Payments at or above this amount need step-up. Stored as integer cents.

1–20 before the code locks.

1–1440 minutes. Nothing succeeds while locked.

Will be stored as USD 50,000.00 or more · 5 attempts · 15 min lock-out — integer cents, exactly.

Payments waiting for step-up authorization

No payment is currently held for step-up. A payment at or above USD 50,000.00 will appear here until its initiating user confirms it with their approval code.

4 of 4 active staff users have no personal approval code set (including Daniel Silva, Mei Chen, Rachel Okafor, Sola Adeyemi). They cannot confirm a high-value payment they initiate until they set one on the approval-code page. No code is ever seeded — a published secret would not be a control.

Sample book disclosure: the staff users and accounts in this environment are seeded demonstration data created by this module. Approval codes are never seeded and never stored in a recoverable form — only a salted scrypt hash is kept.