Velocity ERP tracks restricted funds, releases them automatically as you spend, and produces a restriction rollforward that ties to the ledger without a single adjusting entry.
Post a program expense against a purpose-restricted award. The engine finds the eligible restriction, emits the paired reclassification in the same transaction, and explains in plain language what it did and why.
Release moves the funding, not the expense. Recording program cost inside the restricted class produces a Statement of Functional Expenses no auditor will accept, so the ledger will not let it happen.
When several restrictions could fund the same cost, the choice follows a fixed order: earliest period of performance, then earliest award date, then lowest remaining balance. An auditor asking "why this one" gets the same answer every time.
When the remaining restricted balance is smaller than the expense, the engine releases what is there, closes the restriction, and writes a sentence saying why the release was less than the cost. That sentence is what you show the funder.
Hard-stop cost categories refuse an over-budget posting from every path, including imports and integrations, because the rule lives in the database rather than in a form. Soft stops block until an approver records a reason, and that approval is spent on one posting rather than raising the ceiling forever.
A purchase order reduces what you may spend the moment it is issued, without touching the general ledger. No more grants that look funded while three unpaid orders are already committed against them.
Every line carries a fund. Entries balance within their net asset class. Perpetual corpus never releases. Board designations never leave the unrestricted class. These are assertions the system runs against itself, not promises in a manual.
Posted entries are immutable; corrections are reversing entries. Every write emits a hash-chained audit record in the same transaction, so a silently altered history becomes detectable rather than merely discouraged.
Awards issued before and after a Uniform Guidance revision follow different thresholds at the same time. Each award resolves to the parameter set that governed it, by award date — so a report run today reproduces the rate that applied two years ago.
Computed from posted activity rather than a spreadsheet kept beside the system. Equipment, participant support, and the portion of each subaward past the exclusion threshold come out automatically.
Cash received against an unmet barrier is a refundable advance, not revenue. As allowable expenditure overcomes the barrier, the liability relieves and revenue recognises — in the same transaction as the release.
Plans differ by capacity and convenience — seats, storage, integrations. No plan withholds an accounting capability, because selling a smaller plan should never mean selling books that are less correct.
Compare plans