Period-limit reset

period-limit-reset · /api/jobs/period-limit-reset · every 5 minutes (*/5 * * * *)

Rolls over every customer whose daily or monthly payment-limit period has ENDED: the period's accounting — what was used, over how many payments, against which cap — is archived to the period history for reporting, and the live counter is removed so the new period starts at zero. A period that is still open is never touched, so spend booked today is never discarded.

Why running it twice is safe: Only counters whose period end has already passed are ever in the work list, so a live period is structurally invisible to the job. Each period is closed under a lock on the customer row, and the history row is UNIQUE on (customer, scope, period): a second run in the same period finds nothing left to close and reports it, and a counter that accrued after an archive is merged into that archive rather than overwriting it.

Not polling: nothing on screen can change status any more. Showing state as of .

Elapsed, awaiting rollover

0

USD 0.00 of usage the next run would archive and zero

Live counters (untouchable)

0

USD 0.00 booked in periods that have not ended — never touched by the job

Next period ends

No live counter exists, so nothing is due to roll over

Closed periods on record

0

USD 0.00 of historical usage retained for reporting

Closed period history (0 recorded)

What the reset preserved. Each row is one customer's completed daily or monthly period: what they consumed, over how many payments, against the cap that was in force at the moment it closed. The live counter for that period is gone — the customer's new period started at zero — but the accounting is not lost.

No limit period has been closed yet. A period is archived here the first time the reset runs after its UTC end.

Run it now (for testing)

Optional: the platform triggers this job on its own schedule whether or not anybody presses this. A hand-run does exactly the same work under exactly the same idempotency guarantee and is recorded below as a manual run with the staff user against it.

No period has ended, so a run would roll nothing over — which is the honest outcome, and it is still recorded.

Run history (29 recorded)

Newest first. Hover a count for exactly what it counts.

Runs of Period-limit reset with their outcome, counts, duration and errors
Started (UTC)TriggerStatusDurationExaminedRolled overMergedSkippedOutcome
2026-08-19 06:20:59 UTCslot 2026-08-19 06:20:00 UTC · attempt 1platform schedulesucceeded7 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 06:15:48 UTCslot 2026-08-19 06:15:00 UTC · attempt 1platform schedulesucceeded6 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 06:10:57 UTCslot 2026-08-19 06:10:00 UTC · attempt 1platform schedulesucceeded6 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 06:05:48 UTCslot 2026-08-19 06:05:00 UTC · attempt 1platform schedulesucceeded5 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 06:00:55 UTCslot 2026-08-19 06:00:00 UTC · attempt 1platform schedulesucceeded7 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 05:55:48 UTCslot 2026-08-19 05:55:00 UTC · attempt 1platform schedulesucceeded5 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 05:50:53 UTCslot 2026-08-19 05:50:00 UTC · attempt 1platform schedulesucceeded6 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 05:45:48 UTCslot 2026-08-19 05:45:00 UTC · attempt 1platform schedulesucceeded6 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 05:40:51 UTCslot 2026-08-19 05:40:00 UTC · attempt 1platform schedulesucceeded7 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 05:35:48 UTCslot 2026-08-19 05:35:00 UTC · attempt 1platform schedulesucceeded6 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 05:30:48 UTCslot 2026-08-19 05:30:00 UTC · attempt 1platform schedulesucceeded7 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 05:25:47 UTCslot 2026-08-19 05:25:00 UTC · attempt 1platform schedulesucceeded8 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 05:20:45 UTCslot 2026-08-19 05:20:00 UTC · attempt 1platform schedulesucceeded7 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 05:15:44 UTCslot 2026-08-19 05:15:00 UTC · attempt 1platform schedulesucceeded6 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 05:10:43 UTCslot 2026-08-19 05:10:00 UTC · attempt 1platform schedulesucceeded7 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 05:05:41 UTCslot 2026-08-19 05:05:00 UTC · attempt 1platform schedulesucceeded6 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 05:00:40 UTCslot 2026-08-19 05:00:00 UTC · attempt 1platform schedulesucceeded10 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 04:55:39 UTCslot 2026-08-19 04:55:00 UTC · attempt 1platform schedulesucceeded7 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 04:50:37 UTCslot 2026-08-19 04:50:00 UTC · attempt 1platform schedulesucceeded6 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 04:45:36 UTCslot 2026-08-19 04:45:00 UTC · attempt 1platform schedulesucceeded6 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 04:40:34 UTCslot 2026-08-19 04:40:00 UTC · attempt 1platform schedulesucceeded7 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 04:35:33 UTCslot 2026-08-19 04:35:00 UTC · attempt 1platform schedulesucceeded7 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 04:30:32 UTCslot 2026-08-19 04:30:00 UTC · attempt 1platform schedulesucceeded7 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 04:25:30 UTCslot 2026-08-19 04:25:00 UTC · attempt 1platform schedulesucceeded7 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

2026-08-19 04:20:29 UTCslot 2026-08-19 04:20:00 UTC · attempt 1platform schedulesucceeded7 ms0000

No customer's daily or monthly period had ended, so no limit counter was reset. Every live period keeps the spend already booked against it.

USD 0.00 carried to history

Sample book disclosure: the customer accounts, staff users and sanctions watchlist in this environment are seeded demonstration data created by this module — there is no connection to a real core banking system, payment scheme or sanctions feed. Batch (ACH-style) clearing and high-value wire settlement both run through this module's own SIMULATED settlement engine, never a real scheme or wire network.