Automate the work.
Keep the judgment.

We build AI engines that take over the repetitive work of finance teams — close, reconciliation, partnership tax — and return it drafted, tied out, and cited to source. Independent verification checks every run. Your people approve every output.

Watch this first

It’s the work, not the people.

Just over a minute on why we build finance engines — and what stays human.

None of this is a criticism of accountants — we are accountants. The engines absorb the mechanical month; your people keep the judgment and the final signature.
Figures in the film: APQC · Ventana Research / ISG · FloQast / Dimensional Research · FloQast / Univ. of Georgia · WSJ / BLS · engine runtime measured 2026-07-20 (time python -m close_engine)
KPMG-trained · ex–Big Four Fortune 100 & 500 experience International finance & accounting Public engineering on GitHub · LinkedIn

Flagship engines

Three engines carry most of the load.

Working systems, not proposals — the same architecture runs publicly on GitHub against fictional data. What each takes in, what it does, and what your team keeps control of.

The recurring close, drafted under ten deterministic controls Full engine details →
Diagram: GL export, bank statements, and the prior close feed the close engine, which sits inside a ring of ten controls including shadow recompute; one out-of-tie entry is rejected and will not post, while checked journal entries, close checklist, and close package come out

You provide

General ledger export
Bank statements
Last month's close package

The engine does

Drafts recurring entries, rolls schedules, ties to GL
Runs a ten-control sentinel: completeness, intercompany mirroring, shadow recompute, period lock
Refuses to post any entry that doesn't tie

You receive

Journal entries, drafted and balanced
Close checklist with tie-outs
Close package for the controller
Controls Ten sentinel controls, fault-injection proven · out-of-tie entries cannot post Human gate: your controller approves each entry before it posts.
The full population of accounts — not a sample — matched and explained Full engine details →
Diagram: bank records and general ledger cards are paired line by line through the match engine; one amber card is flagged as an exception and explained, and a checked evidence log covers every account in the full population

You provide

Bank statements & registers
Trial balance

The engine does

Matches GL to bank and lender records, account by account
Classifies every exception by materiality
Traces cash out of closed and migrated accounts

You receive

Reconciliation for every account
Exceptions classified and explained
Evidence log behind every figure
Controls Full population, never a sample · materiality-gated exceptions Human gate: your team signs off on every exception.
Returns and K-1s, prepared for your CPA's review Full engine details →
Diagram: trial balance, prior-year return, and partner data flow into the 1065 engine and come out as a checked Form 1065 draft, K-1s per partner, and an evidence binder — passing a gate labeled CPA reviews and files

You provide

Trial balance & income statements
Prior-year return
Partner & ownership information

The engine does

Normalizes the trial balance, P&L, and partner data
Computes allocations, rolls capital accounts
Drafts the return and every K-1, tied to the ledger

You receive

Draft Form 1065, review-ready
K-1 drafts for every partner
Evidence binder — every number sourced
Controls Allocations recomputed independently · capital accounts must roll Human gate: your CPA reviews and files. Nothing files itself.

The full portfolio

Fifty-one engines. One standard: evidence.

Every engine is public, runnable, and tested — the same control pattern in each: computed work, cited evidence, independent validation, and a human verdict at the end.

Diagram: a finished workbook passes under a read-only validation scanner that never writes, exiting unchanged with PASS, REVIEW, or FAIL verdict chips
04

Validation Engine

Read-only workbook review: formula integrity, lineage, PASS / REVIEW / FAIL verdicts — with a byte-identical guarantee that it never modifies what it inspects.

python run.py
Diagram: yearly filings 2021 through 2024 thread through the surplus engine into layered tax pools carried forward, with foreign exchange per layer and a check traced to source
05

Tax Surplus / ACB

Multi-year tax pools and adjusted cost basis carried forward by rule — foreign exchange per layer, every figure traceable to source.

python -m surplus_engine --start 2021 --end 2024
Diagram: two reviewers, a specialist, and a deterministic auditor all examine the same work; consensus is required, and the check appears only where their beams agree — no consensus, no sign-off
06

Triangulate

Separation of duties for AI work: independent reviewer roles plus a deterministic auditor. Disagreement stops the line — no consensus, no sign-off.

View datasheet →

python -m triangulate
Diagram: meeting transcripts and SOPs fill a glass knowledge archive; a question card goes in and an answer comes out cited verbatim with a timestamp — no source, no answer
07

Knowledge Brain

Institutional knowledge as a citation-governed base: every answer quotes its source verbatim with a timestamp — no source, no answer.

python -m brain_engine ask "..."
Diagram: an isometric map connecting entities, bank accounts, and systems, with the canonical source checked and a stale copy flagged in gray
08

Finance Operations Atlas

A living map of your finance operation: entities, bank accounts, systems, and canonical sources of truth — with stale copies flagged.

python generate.py
Diagram: a bank statement and a general ledger joined by a reconciliation bridge with a green verified check reading should-be equals bank; below, three cash-manager controls — outstanding-check aging, a wire needing two distinct approvals, and sub-accounts sweeping into one concentration account
09

Cash Management

The cash manager's monthly double-check: bank-to-GL reconciliation, outstanding/stale checks, wire dual-approval, register continuity, and concentration sweeps — five read-only controls, every one human-gated.

python -m cash_engine --demo
Diagram: a posting report and a ledger recap joined by a green verified check reading debits equals credits and proof zero; below, four payment release gates — a taxpayer certificate on file, lien waivers from the subcontractor and its lower tiers, current insurance, and confirmed funding — each ticked green
10

Accounts Payable

The payables cycle proved rather than assumed: posting integrity, the payment release gate, approver routing with duties segregated, information reporting, and commitment hygiene — thirty read-only controls that flag exceptions and never post or pay.

python -m ap_engine ./samples
Diagram: four blocks labelled A fundings to date, B this draw requested, C draws to date and D costs net of retention, arranged as A plus B equals C minus D; below, a banded assertion that C minus D must equal zero exactly, and a row of the eight control families with their counts
11

Project Draw

The construction loan draw proved before it reaches the lender: the reconciliation identity, the form tied to its own working papers, contingency held to percent complete, cutoff, and supporting documentation — thirty-four read-only controls that flag exceptions and never bill or fund.

python -m draw_engine ./samples
Diagram: three blocks reading deposit, close of escrow and revenue connected left to right by arrows, with close of escrow marked as the only trigger; below, a banded assertion that four schedules must carry one number, and a row of the seven control families with their counts
12

Buyer Upgrades

A buyer’s upgrade money is a liability until the unit closes — and the same figure has to move in four schedules at once. Deferred revenue released only on close of escrow, the closing entry balanced, sales tax held as a liability, four-way agreement — twenty read-only controls that flag exceptions and never post.

python -m upgrade_engine ./samples
Diagram: a derivation chain reading construction cost, premium, coverage limit; below it a meter showing claimed to date against coverage left; below that three cards reading every claim must be inside the policy period, inside its own quarter, and after close of escrow
13

Warranty Reimbursement

A warranty policy is bought once and drawn down for years in amounts too small to attract review — so the failure is the running total, not any one claim. A coverage limit re-derived from construction cost, cumulative claims held inside a finite pool, every claim tested against its quarter, the policy period and close of escrow — twenty-two read-only controls that flag exceptions and never file or pay.

python -m warranty_engine ./samples
Diagram: an ownership tree of eight legal entities on the left; on the right two facing ledger cards, a due-from schedule and a due-to schedule of its exact negatives, joined by an equals sign, showing the balances eliminate to zero
14

Intercompany Reciprocity

A development group is a tree of entities, and cash moving between them lands two entries on two sets of books — so the break lives between them and only surfaces at consolidation. Every due-from reconciled to the due-to that faces it, each closing rolled forward from the ledger, funding traced to the protocol-correct entity — twenty-three read-only controls that flag exceptions and never fund or sweep.

python -m intercompany_engine ./samples
Corporate obligation-matrix architecture for Property Tax: entity and document records pass through jurisdiction and policy controls to verified reporting evidence.
15

Property Tax

A parent parcel is platted into lots that close one at a time, while the tax roll keeps billing the account it always has — so the bill is genuine and increasingly for somebody else’s house. Each jurisdiction’s own statutory calendar, the assessment and the charge that follows it, ownership through every closing, and the accrual behind it — twenty-six read-only controls that flag exceptions and never pay or file.

python -m proptax_engine ./samples
Corporate obligation-matrix architecture for Surety Bond & Collateral: entity and document records pass through jurisdiction and policy controls to verified reporting evidence.
16

Surety Bond & Collateral

A developer posts surety to pull permits and record plats, and some bonds are collateralised with its own cash — so the quiet failure is cash that never comes back. Each bond’s lifecycle, the collateral behind it, premium earned to the day, and aggregate exposure against the facility — twenty-nine read-only controls that flag exceptions and never release or pay.

python -m bond_engine ./samples
Corporate allocation-network architecture for Insurance Cost Allocation: a governed source pool passes through a deterministic control and branches to recipient entities before tying to verified reporting evidence.
17

Insurance Cost Allocation

A developer buys a programme, not a policy per project, and one premium has to become a number on each project’s job cost that sums back to what was paid. Every share re-derived from its declared basis to the cent, the builder’s-risk term and value, and the carrier audit true-up returned to the projects that bore the deposit — twenty-four read-only controls that flag exceptions and never pay.

python -m insurance_engine ./samples
Corporate obligation-matrix architecture for Insurance Compliance: entity and document records pass through jurisdiction and policy controls to verified reporting evidence.
18

Insurance Compliance

A developer requires its consultants and subcontractors to carry insurance per contract — so the exposure is a certificate that lapsed or came in a limit short, invisible until a claim lands on cover nobody had. Coverage types and limits held against the requirement matrix, additional-insured and waiver-of-subrogation endorsements, no uninsured day between certificates, nothing expired — twenty-two read-only controls that flag exceptions and never pay or bind.

python -m coi_engine ./samples
Corporate reconciliation-bridge architecture for Expense & P-Card: parallel source documents and ledger records converge at a tie-out control, with exceptions separated from verified evidence.
19

Expense & P-Card

Company-card spending proved rather than trusted: every charge carries a receipt and a business purpose, the report reconciles to the bank statement to the cent, the coding is valid, nothing is a duplicate, and the approver is not the cardholder — twenty-three read-only controls that flag exceptions and never post.

python -m expense_engine ./samples
Corporate control-gate architecture for Project Labor Charge: a transaction passes through authorization, rule validation, evidence matching, and human release before verified reporting.
20

Project Labor Charge

Employee labor charged to a project only through an advance authorization: noticed ahead, on a real cost code, budget-confirmed, the monthly charge re-derived to the cent, nothing charged before the start date, cumulative labor held inside the budget, and each monthly invoice footing to its charges — twenty-six read-only controls that flag exceptions and never bill.

python -m labor_engine ./samples
Corporate control-gate architecture for Lien Waiver Tracking: a transaction passes through authorization, rule validation, evidence matching, and human release before verified reporting.
21

Lien Waiver Tracking

Every progress payment covered by a lien waiver through its paid-through date, conditional waivers converting to unconditional once the payment clears, lower-tier subs and suppliers waived, and the unwaived exposure re-derived per project — the difference between a project a title company will close over and one it will not. Twenty-five read-only controls that flag exceptions and never pay or release.

python -m lien_engine ./samples
Corporate allocation-network architecture for Equity Waterfall & JV Promote: a governed source pool passes through a deterministic control and branches to recipient entities before tying to verified reporting evidence.
22

Equity Waterfall & JV Promote

A real-estate partnership pays its investors and sponsor through a waterfall — a chain of dependent steps where a mis-compounded month of preferred return or a tier paid out of order travels silently to the bottom line. Every distributed dollar rebuilt from the executed operating agreement and the contribution history: preferred-return accrual, capital-account roll-forward, hurdle-IRR tiers, and the promote split, each recomputed to the cent and tied back to the stated IRR and equity multiple — thirty read-only controls that flag exceptions and never pay or file.

python -m waterfall_engine ./samples
Corporate comparison architecture for Project Proforma Integrity: declared inputs feed a deterministic calculation, computed and stated results are compared, and the final output is verified.
23

Project Proforma Integrity

A quarterly project proforma is internally consistent the day a formula last recalculated, and it drifts when cells are overtyped or tabs are rolled forward without their precedents — the error-check tab still shows zeros because the zeros were typed. Sources tied to uses, hard plus soft to total cost, net profit re-derived from revenue and cost, the waterfall’s distributed profit to the budgeted split, every margin and variance rebuilt from the base ledger, and each active project’s report proved filed on time — twenty-six read-only controls that flag exceptions and never post.

python -m proforma_engine ./samples
Corporate obligation-matrix architecture for Gross-Receipts & Excise Tax: entity and document records pass through jurisdiction and policy controls to verified reporting evidence.
24

Gross-Receipts & Excise Tax

A developer managing projects across several jurisdictions owes a gross-receipts or excise tax in each — a state B&O tax, a city excise, a territorial general-excise tax — each with its own rate, cadence, deductions and due dates, and each rate can change mid-year. Every worksheet’s tax re-derived from the general-ledger revenue pull times the classification rate actually in force, tied to the filed number, deductions and thresholds checked, and the filing calendar proved complete, timely and approved — twenty-seven read-only controls that flag exceptions and never file.

python -m grt_engine ./samples
Corporate obligation-matrix architecture for Filing Obligation Calendar: entity and document records pass through jurisdiction and policy controls to verified reporting evidence.
25

Filing Obligation Calendar

A filing calendar is a matrix of dates that was correct the day someone typed it, and it goes wrong in ways nobody watches until a notice arrives — a due date a day off, a deadline that quietly passed, a row marked filed with no voucher behind it. Every entity and jurisdiction proved obligation by obligation to have filed or validly extended before its statutory due date, each fixed-amount voucher paid to the exact statutory amount, and the register tied to the filed evidence with nothing missing and nothing orphaned — twenty-two read-only controls that flag exceptions and never file.

python -m filing_engine ./samples
Corporate obligation-matrix architecture for Energy-Efficient Home Credit: entity and document records pass through jurisdiction and policy controls to verified reporting evidence.
26

Energy-Efficient Home Credit

The §45L homebuilder credit is a per-unit credit: a fixed statutory amount for each newly built dwelling sold, but only for a unit that closed inside the fiscal-year window and holds an energy certificate from a certified rater. Every claimed unit re-derived from its close-of-escrow date, its RESNET/HERS certification and the dated per-unit amount, checked for out-of-period and duplicate claims, then rolled up per project, region and fiscal year with the net benefit and partner split tied across every artifact — twenty-six read-only controls that flag exceptions and never file.

python -m energy_engine ./samples
Corporate roll-forward architecture for Interest Accrual & Loan Amortization: opening state and period activity pass through deterministic controls to ending balances and an independent reporting tie-out.
27

Interest Accrual & Loan Amortization

A note’s stated interest is right the day it’s drawn and drifts as balances amortize, rates step and prepayments land. Every accrual re-derived as balance times rate times days, each period’s ending balance rolled into the next, and the maturity, rate-step, prepayment and subordination gates enforced — with the reciprocal receivable, payable and interest journal tied back to the schedule. Twenty-eight read-only controls that flag exceptions and never post or file.

python -m interest_engine ./samples
Corporate roll-forward architecture for Financing Execution & Schedule Variance: opening state and period activity pass through deterministic controls to ending balances and an independent reporting tie-out.
28

Financing Execution & Schedule Variance

A developer’s monthly upcoming-financings report is a schedule of moving milestones, and it goes wrong quietly — a variance typed instead of computed, a prior-month figure that no longer ties, a baseline overwritten. Every milestone variance re-derived as Current minus Prior, each Prior tied to last month’s Current, the original baseline held frozen, the playbook proved complete and every Gantt bar seated in its closing month. Twenty-one read-only controls that flag exceptions and never post or fund.

python -m financing_engine ./samples
Corporate control-gate architecture for Wire & Transfer Release Control: a transaction passes through authorization, rule validation, evidence matching, and human release before verified reporting.
29

Wire & Transfer Release Control

An outbound payment is only as safe as the gates in front of it. Every wire, ACH and book transfer proved to carry two distinct authorized signers within their limits, a beneficiary on an approved template or cleared by callback, a routing number that resolves to the named bank, and a funded source account — before a dollar leaves. Twenty-three read-only controls that flag exceptions and never release or pay.

python -m wire_engine ./samples
Corporate reconciliation-bridge architecture for Payroll & Benefit Reconciliation: parallel source documents and ledger records converge at a tie-out control, with exceptions separated from verified evidence.
30

Payroll & Benefit Reconciliation

The benefit money a payroll register withholds has to arrive somewhere — a recordkeeper, a custodian, the ledger, the bank — intact and on time. Every 401(k), HSA and FSA deduction proved to reach the provider, the ledger liability and cash to the cent, the employer match and statutory limits recomputed, and each deposit checked against its DOL deadline. Twenty-nine read-only controls that flag exceptions and never post or pay.

python -m benefit_engine ./samples
Corporate comparison architecture for Non-Resident Withholding & 1042-S: declared inputs feed a deterministic calculation, computed and stated results are compared, and the final output is verified.
31

Non-Resident Withholding & 1042-S

Withholding on a cross-border payment turns on the payee’s status and the paper behind it, and the rate is where it breaks. Every FDAP withholding rate recomputed from FATCA status, portfolio-interest exemption, a treaty reduction gated on a valid W-8, then the statutory default — with the tax withheld, the deposits and the Form 1042 all tied back to the 1042-S slips. Twenty-eight read-only controls that flag exceptions and never file or remit.

python -m withholding_engine ./samples
Corporate reconciliation-bridge architecture for Home Sale Closing & Settlement Tie-Out: parallel source documents and ledger records converge at a tie-out control, with exceptions separated from verified evidence.
32

Home Sale Closing & Settlement Tie-Out

A home-sale closing package has to agree with itself — the settlement statement, the closing entry, the revenue line, the loan release and the cost-of-sale relief all describing one transaction. Every closed home’s figures recomputed from the base facts and proforma rates, the closing entry proved to balance, and the rollup’s closed count, net-to-seller total and per-unit tie-out rebuilt from the units beneath. Twenty-five read-only controls that flag exceptions and never post or record.

python -m closing_engine ./samples
Corporate obligation-matrix architecture for Entity Good-Standing: entity and document records pass through jurisdiction and policy controls to verified reporting evidence.
33

Entity Good-Standing

An entity’s good standing is a matrix of small obligations across every state it’s registered in, and any one lapsing is a lien or a lost deal waiting to happen. Every entity proved, state by state, to have filed its annual report on time, paid the flat franchise tax, held an ACTIVE Secretary-of-State status and a current registered agent and license — with the compliance rollup rebuilt from the underlying records. Twenty-six read-only controls that flag exceptions and never file or renew.

python -m standing_engine ./samples
Corporate control-gate architecture for Subcontract SOV & Change Orders: a transaction passes through authorization, rule validation, evidence matching, and human release before verified reporting.
34

Subcontract SOV & Change Orders

A subcontract only moves on approved paper, and every billed figure has to trace back to it. The schedule of values proved to foot, only approved change orders allowed to move the revised contract, each pay-application column re-derived, retention and tax recomputed, the commitment rolled forward, and the conditional release tied to the certified payment due. Twenty-nine read-only controls that flag exceptions and never pay or release.

python -m sov_engine ./samples
Corporate allocation-network architecture for Equity-Method Pickup & Eliminations: a governed source pool passes through a deterministic control and branches to recipient entities before tying to verified reporting evidence.
35

Equity-Method Pickup & Eliminations

Equity-method accounting is a chain of dependent figures, and a pickup struck off the wrong ownership or an elimination that doesn’t fully extinguish carrying value travels straight into consolidated equity. Every pickup re-derived as ownership times the investee’s result, the investment roll-forward and preferred-return accrual recomputed, each intercompany elimination paired to net to zero, and the whole tied to the trial balance. Twenty-five read-only controls that flag exceptions and never post or eliminate.

python -m pickup_engine ./samples
Corporate roll-forward architecture for Depreciation & Prepaid Amortization: opening state and period activity pass through deterministic controls to ending balances and an independent reporting tie-out.
36

Depreciation & Prepaid Amortization

Depreciation and prepaid amortization are pure arithmetic on cost, life and a service window — which is exactly why a hand-kept register drifts from the ledger it’s meant to feed. Every fixed-asset depreciation and prepaid amortization figure re-derived from cost, useful life and in-service window, both roll-forwards rebuilt, and the register totals tied to the GL control accounts and the posted recurring entry. Thirty read-only controls that flag exceptions and never post.

python -m depreciation_engine ./samples
Corporate reconciliation-bridge architecture for Earnest-Money Deposit Trust: parallel source documents and ledger records converge at a tie-out control, with exceptions separated from verified evidence.
37

Earnest-Money Deposit Trust

Earnest money sits in trust before a home closes, and three parties each keep a record of it — the deposit ledger, the escrow agent’s statement and the construction loan. Every unit’s deposit tied three ways to zero variance, cancellations split correctly between forfeited and refunded, and the reconciliation summary recomputed from the units beneath. Twenty-seven read-only controls that flag exceptions and never move or release.

python -m deposit_engine ./samples
Corporate control-gate architecture for Capital Spending Request Gate: a transaction passes through authorization, rule validation, evidence matching, and human release before verified reporting.
38

Capital Spending Request Gate

Capital gets committed on a Spending Request, and the discipline is entirely in the sequence — the right approval before the dollar, the phase gates in order, the standards recomputed. Every request proved to fire its dollar triggers only after approval, clear its five phase gates in sequence, and carry a contingency floor, fee, total and gate summary that each re-derive and tie. Twenty-nine read-only controls that flag exceptions and never approve or commit.

python -m spending_engine ./samples
Corporate allocation-network architecture for Section 263A Interest Capitalization: a governed source pool passes through a deterministic control and branches to recipient entities before tying to verified reporting evidence.
39

Section 263A Interest Capitalization

Interest tied to production has to be capitalized into project basis, not deducted, and the avoided-cost calculation is a grid: every active project across every quarter, rebuilt each tax year, with a comparison tab that is supposed to tie to last year’s file. Every project row footed across its quarters, total interest proved to equal capitalized plus deducted with nothing leaking, every project on the trial balance present in the schedule, and the year-over-year comparison tied rather than typed. Nineteen read-only controls that flag exceptions and never file.

python -m capitalize_engine ./samples
Corporate obligation-matrix architecture for Franchise Tax Combined Apportionment: entity and document records pass through jurisdiction and policy controls to verified reporting evidence.
40

Franchise Tax Combined Apportionment

A combined return starts with a list of entities, and the roster changes every year as affiliates are formed, merged and dissolved. The current group proved to equal the prior-year members plus additions less removals, every affiliate registered, the entities deliberately excluded enumerated rather than merely absent, group revenue tied to the consolidated tax trial balance, the receipts factor bounded and recomputed, and the tax re-derived as margin times apportionment times rate. Twenty-one read-only controls that flag exceptions and never file.

python -m franchise_engine ./samples
Corporate comparison architecture for Debt Term-Sheet Sizing & Loan Terms: declared inputs feed a deterministic calculation, computed and stated results are compared, and the final output is verified.
41

Debt Term-Sheet Sizing & Loan Terms

A term sheet is a handful of equalities that nobody recomputes while the deal is moving: the maximum loan is the advance rate times the cost basis, the all-in rate is the greater of index plus spread or the floor, each fee is a rate on a base that is not always the same base, and maturity is the base term plus the extensions actually exercised. Every one re-derived before close, over-advances flagged, fees checked against the correct base, and the portfolio rollup footed. Twenty-one read-only controls that flag exceptions and never fund.

python -m sizing_engine ./samples
Corporate comparison architecture for Unit Sales & Commission Tie-Out: declared inputs feed a deterministic calculation, computed and stated results are compared, and the final output is verified.
42

Unit Sales & Commission Tie-Out

A for-sale housing project runs on one weekly workbook, and the commission log drifts from the matrix the moment a price changes after the offer. Revenue per square foot recomputed from price and plan size, net proceeds proved as price less concession less closing costs, total commission struck on the actual sales price, every agent split added back to exactly that commission, each sold unit reconciled one-for-one to the closings tab, and the date sequence held in order. Twenty-one read-only controls that flag exceptions and never pay.

python -m sales_engine ./samples
Corporate allocation-network architecture for G&A Expense Allocation: a governed source pool passes through a deterministic control and branches to recipient entities before tying to verified reporting evidence.
43

G&A Expense Allocation

A holding entity pushes its overhead out across a dozen operating entities every month, and the allocation stops adding up the moment a driver count changes or an entity is added to the schedule but not to the percentages. Driver shares proved to total exactly one hundred percent, allocated dollars proved to total exactly the pool with the residual cent landing deterministically, the resulting journal entry balanced and netted to zero at consolidation, and the postage allocation reconciled to the meter-reading delta. Twenty-two read-only controls that flag exceptions and never post.

python -m gaalloc_engine ./samples
Corporate roll-forward architecture for Outstanding Check Aging & Escheatment: opening state and period activity pass through deterministic controls to ending balances and an independent reporting tie-out.
44

Outstanding Check Aging & Escheatment

A check that never cleared is a stale payable until the dormancy period runs, and then it is unclaimed property that belongs to the state. The outstanding set rebuilt from cleared amounts and cleared dates rather than trusting the column that says outstanding, every item aged from check date to the as-of date, the total tied to the outstanding-checks line on the bank reconciliation, voided and stop-paid items proved absent from the outstanding population, and stale-dating separated from dormancy so the follow-up list is not confused with the escheatment list. Twenty read-only controls that flag exceptions and never void or reissue.

python -m checkage_engine ./samples
Corporate comparison architecture for Project Variance & Business-Plan Compare: declared inputs feed a deterministic calculation, computed and stated results are compared, and the final output is verified.
45

Project Variance & Business-Plan Compare

A variance column is the most-read number in a project report and the one nobody re-adds. Cost to Complete struck as Total Budget less Cost to Date rather than maintained beside it, net revenue and profit and margin on cost re-derived from their own inputs, every variance cell proved equal to the difference of the two columns it sits between in cents and in basis points alike, both comparative columns proved to foot inside themselves so a variance is never measured against a column that never added up, and the Business Plan column proved against the version each project was actually approved under. Twenty-two read-only controls that flag exceptions and never re-forecast.

python -m variance_engine ./samples
Corporate roll-forward architecture for Contingency Rollforward & Adequacy: opening state and period activity pass through deterministic controls to ending balances and an independent reporting tie-out.
46

Contingency Rollforward & Adequacy

Adequate is a comparison, and it gets stored as a label. Both contingency rollforwards re-derived from the period before them, the allocated-this-period total footed to the draw detail it summarises rather than maintained beside it, every bucket reconciled to the contingency line the project budget funded, each draw walked against the balance earlier draws actually left rather than against the opening balance, and the word adequate rebuilt from the balance remaining against the projected potential use so a label carried forward cannot outlive the period it stopped being true. Twenty-two read-only controls that flag exceptions and never post or approve a draw.

python -m contingency_engine ./samples
Corporate obligation-matrix architecture for Information Return Issuance: entity and document records pass through jurisdiction and policy controls to verified reporting evidence.
47

Information Return Issuance

Once a year the group rebuilds a payee population it never maintained, and a payee who should have been reported and was not leaves nothing behind to notice. Every box amount footed back to the entity's own payment lines rather than re-keyed from a summary, a form proved to exist exactly where the box threshold met at the cent obliges one, the same test run in reverse so a form issued to a payee who was not reportable is caught too, withheld tax obliging a form the threshold alone would not have, backup withholding recomputed at the statutory rate in both directions, and every transmittal recounted from the forms behind it. Twenty-two read-only controls that flag exceptions and never issue or file.

python -m inforeturn_engine ./samples
Trial-Balance Roll-Forward engine tile: an isometric line drawing of a wide workpaper grid. Last year's column structure enters at the left; three station marks along the top edge show a column retired, a column renamed and a column added. Beneath the grid a flat backup tab runs its full width, with fine cobalt tie-lines rising from it to individual cells. Two source columns feed the grid from the right, one drawn solid and one drawn dashed and unused, and a single cobalt path traces the route a balance takes from the extract to its cell.
48

Trial-Balance Roll-Forward

Every failure mode of an annual roll-forward shares one property: the workpaper still balances. A column populated from the extract's monthly-activity column foots to zero exactly the way a real one does, so the footing check passes while the column carries movement instead of balances. Every cell re-derived from the balance column located by its declared role rather than its position, completeness swept in both directions so a balance riding a dropped chart equivalence cannot vanish silently, each dual-chart row summed through the equivalence map, the eliminations range proved to reach the columns added this year, and every figure linked to a backup row that agrees with it. Twenty-four read-only controls that flag exceptions and never populate or file.

python -m rollforward_engine ./samples
JV Investor Reporting Package engine tile: an isometric line drawing of a monthly reporting package drawn as three exploded statement sheets. Five source slabs at the left converge on a single node and feed the stack. On the top sheet a cobalt path runs across one row through the member columns into the Total column. Below the stack a dashed boundary marks the released print area, with a tie-out check row struck out beneath it. At the right a closed gate holds the package, and the partner's copy waits beyond it drawn dashed and unissued.
49

JV Investor Reporting Package

A package that foots, balances and reads plausibly can still be wrong, because the arithmetic that would expose the error is the arithmetic that produced the figure. Every balance agreed to the ledger by account number rather than row position, so a trial balance pasted beside an extract in a different sort order is caught and named as a positional paste. A credit intercompany balance reclassified rather than netted against assets. Every member column footed, cross-footed and rolled forward, with the Total column proved to sum the row it sits on. The job cost bridge closed exactly, with no tolerance, and any difference carried without being disclosed failing on its own account. Contributions agreed per member to the executed equity draw schedule the partner also holds. Each caption tested against its schedule's type, the cover held consistent with the notes, and the reviewer's own tie-out rows kept out of the released print area. Twenty-five read-only controls, and one open exception holds the package. No materiality gate.

python -m investor_engine ./samples
Tax Workpaper Build & Carry-Down engine tile: an isometric line drawing of a workpaper package under construction. Six source slabs at the left converge on a single node and feed the build. Three prior-year sheets sit frozen inside a bracket, and a newly constructed sheet is lifted clear above them, its year caption drawn in cobalt and cobalt carry-down arrows rising from the frozen layers into it. On the new sheet a cobalt path runs across one row through the member columns. At the right an evidence tab carries its citation lines and a subtotal rule closing on a cobalt zero, and beneath it a build register grid names one constructed cell. A dashed line runs from the pre-build image at the left along the base of the drawing to that register.
50

Tax Workpaper Build & Carry-Down

Nobody rolls a workpaper package; somebody opens last year's file, saves it under a new name and edits it — and every failure mode that follows shares one property: the package still foots. This engine builds the new year instead, from a locked ledger extract and the signed prior year. Every prior-year layer carried up byte-equal and compared byte-equal, so history cannot quietly acquire a new value because a sort was applied or a formula was left live in a frozen row. Every rolling caption advanced by exactly one year and checked arithmetically, so a current-year column is never reconciled against a prior-year heading. Each current-year contribution and distribution derived as the movement in its own account rather than typed, so an inception-to-date balance cannot be restated as this year's activity and still agree with the total footed from it. The member allocation splits carried down in integer basis points, the new member-capital and earnings-and-profits year blocks appended, and the evidence tab constructed with its citation block and a subtotal that has to close on zero. Every constructed cell named in a build register beside the derivation that produced it, and anything touched outside that register caught against the image taken before the build ran. Twenty-four controls then prove what it built. No materiality gate.

python -m workpaper_engine samples --build out
Premium Audit Response engine tile: an isometric line drawing of a fixed-width job-cost print report feeding a reconciliation gate. On the left sheet, cost lines run beneath a job heading and a printed total sits boxed at the foot of the column. A cobalt path carries the parsed lines into a gate drawn as a narrow arch; beneath the arch an equals sign ties the parsed sum to the printed total. Beyond the gate the lines fan into seven labeled triage bins, one row highlighted in cobalt where a certificate expiration reaches the audit window's end. At the right a bound package carries a JSON brace and a window bracket marked inclusive on both ends.
51

Premium Audit Response

Once a year the general-liability carrier audits the policy: what did the covered work actually cost? The honest answer lives in fixed-width job-cost prints, and the traditional workpaper is somebody re-keying them — checked by the person who typed it, against the file they typed. This engine reads the print instead and keeps the one safeguard a re-key destroys: the report’s own printed totals. Every parsed job must tie its printed total to the cent, over the union of jobs parsed and jobs printed, or the engine refuses to produce a workpaper at all — the refusal names each failing job and its cent delta. What survives is cut to the policy window, inclusive on both boundary dates, cross-referenced against the certificate-of-insurance listing, and triaged line by line under a fixed precedence — journal entries that never had a vendor, clearing accounts in both their costumes, wrap-enrolled vendors, materials-only and professional exemptions, coverage current at the window end, and the remainder marked for chase. Byte-stable JSON and Markdown out; integer cents throughout; no tolerance parameter to widen.

python -m premaudit_engine --seed 7
51+

Your engine

The portfolio grows by one pattern: find the recurring work, build the engine, attach the evidence, keep the human gate.

Tell us what to build next

Inside the close engine

One engine. 29 deterministic controls.

The month-end close isn't a single script — it's a library of recurring workpapers, each with its own arithmetic. The close engine drafts or validates every one under the same rule: recompute it independently, tie it to the ledger, and refuse to post anything a person hasn't approved.

Amortization & depreciation

M-01 · 4

Accruals & interest

M-02 · 4

Reporting packages

M-03 · 5

Balances & continuity

M-04 · 4

Allocations & fees

M-05 · 5

Construction

M-06 · 2

Audit & support

M-07 · 5

Auto Verification System

The engines run the control loop themselves.

Each engine watches its own output, corrects routine drift from source data, re-verifies every correction against an independent recomputation, and escalates the judgment calls to a person. Nothing self-certifies.

Control loop diagram: source documents — general ledger, bank statements, schedules — flow into the finance engine, which runs a continuous feedback loop against an independent recompute and re-verifies each result with a green check before it counts.
  1. SourceGL · bank · schedules
  2. ComputeFinance engine
  3. RecomputeIndependent, separate logic
  4. Tie-outDecision gate
ENGINE RECOMPUTE TIE POSTS EVIDENCE ATTACHED

Ties → posts with evidence

When the independent check confirms the work, it posts with a written audit trail.

! BREAK FIX FROM SOURCE RE-VERIFIED

Routine break → fixed from source

A mis-keyed cell or dropped intercompany leg is corrected, then re-verified before it counts.

UNPROVEN QUARANTINED A PERSON DECIDES

Judgment call → a person

What the loop cannot prove is quarantined and flagged — never rubber-stamped.

You set the policy: full autonomy in approved environments, or a human sign-off on every post — the controls and audit trail are identical either way. Live today on five engines; every loop writes its own run report, with sample reports committed on GitHub.

The engineering is public

Don't take the website's word for it.

The entire engine portfolio is on GitHub — code, tests, controls, and documentation. Your technical reviewers can judge the work before you spend anything.

verify-it-yourself — bash● suite passing

504,712 tests, honestly tiered

A curated suite gates CI; an opt-in sweep asserts arithmetic invariants across ~1.65M generated cases. A separate 57-test site-tooling suite guards the public datasheets and is excluded from the 504,712 engine total. The tiers are documented, not blended into one inflated number. See the per-engine breakdown →

Fictional data, by rule

Every public example runs on invented data. Client information never appears in public code — backed by a deny-list confidentiality linter in the test suite.

Read it, run it, or both

Engineers can inspect the repository, open it in Codespaces, and run any engine in minutes.

Worldwide · every scale

One standard of rigor — from a family to a group.

The same engines run for a two-person family office and a multi-entity corporate close. What changes is scope — never rigor.

Businesses, small to enterprise

Close, recon, tax, and cash controls under your month. No rip-and-replace — your ledger stays the system of record.

Families & individuals

Every account and entity tied out; K-1s that trace to the agreement. Discretion by design — fewer hands on the data, full evidence of who approved what.

Training & consulting

We come to you — on site or remote — and train your team or your family to run and challenge the engines. Runbooks included.

STEP 1 — MAP

Show us where the hours go

One conversation. We tell you plainly what an engine can take over — and what it can’t.

STEP 2 — RUN

Watch the engines run

Your data, in a sandbox, while your team watches the checks fire. Nothing touches your systems of record.

STEP 3 — APPROVE

Your team keeps the gate

Your people review and sign. We hand over the capability and train the team that owns it.

You don’t get a login. You get a finished, governed capability — and the people who built it on call.

  • The engines configured and running on your data, inside your approval gates
  • The complete evidence pack for every run — inputs, outputs, checks, and approvals, re-runnable at any time
  • Your staff trained on site or remote, with the runbooks to own the system
  • A standing support line, 24/7 — month-end doesn’t respect time zones, so when it’s day 3 of your close, it’s day 3 of ours

Start the conversation

Show us where the hours go.

One conversation. You describe the work that consumes your team's — or your family's — month; we tell you plainly what an engine can take over, what it can't, and what a scoped first phase would cost.

No software purchase · fixed-scope pricing after observation · your people keep approval authority

Book a free consultation