Concept Enterprise Scale 2026 Self-Initiated Concept

Arbor One

A cash-monitoring console for private lenders — because the cash a borrower reports and the cash you can actually reach are two different numbers.

Role Product Design & Front-End (concept)
Industry Private Credit / FinTech
Client Self-Initiated Concept
Context Concept
Arbor One

A Balance Sheet That Tells You the Wrong Number

A lender asks one question about a borrower before a payment date: can they pay?

The obvious way to answer it is to look at cash on hand. For a company operating across several emerging markets, that answer is close to useless. Money held in a jurisdiction with capital controls cannot be moved on a two-week horizon. Money held at a non-bank financial institution carries a recovery risk a commercial bank deposit does not. Both still show up on the balance sheet at 100 cents.

The result is a monitoring blind spot with a specific shape: the numbers look fine right up until the moment they do not, and the deterioration was visible weeks earlier to anyone decomposing the balance rather than totalling it.
Borrower grid showing the five companies assigned to this credit member, each card leading with accessible cash and its percentage of the reported balance alongside coverage against the covenant floor
The book under watch — every card leads with accessible cash and its share of the reported balance, never the reported figure alone.

Three Numbers, Not One

The whole product rests on refusing to display a single cash figure. Every balance is carried through a two-stage haircut and shown at all three stages.

Raw — what the borrower reports.
After jurisdiction — each account discounted by its jurisdiction's transfer risk.
After institution — discounted again where the holder is a non-bank institution.

For the hero borrower that reads $9,311,675 → $6,295,812 → $5,768,895: 62.0% of the reported balance is genuinely accessible. Run the covenant test on the raw number and coverage is a comfortable 1.86x. Run it on the accessible number and it is 1.15x against a 1.5x floor — a breach, twelve days before a $5.0M amortization payment.

That single reframing is the product. Everything else is plumbing to make it trustworthy: a 62-row account ledger you can open, per-account timelines, and a governed reference table so anyone can audit which haircut was applied and why.
Borrower detail: loan summary, data-source card, and the accessible-cash metric row showing $5,768,895 at 62.0% of $9,311,675 raw and 1.15x coverage against a 1.5x floor
Borrower detail — the reported balance and the accessible balance shown side by side, with the covenant test run on the second.

Closing the Loop

A monitoring tool that only raises alarms creates work instead of removing it. So the alert drawer is built as a workspace, not a notification.

Each alert opens with What moved — the metric, its baseline, and a plain-language account of the gap, with the specific accounts driving it as clickable chips. Below it, a history timeline treats one condition as one alert: when TransFlows coverage slid from 1.28x to 1.15x, the severity escalated on the existing alert rather than spawning a duplicate, so the record of the deterioration stays in one place.

Underneath sits a playbook — draft borrower outreach, schedule a covenant conversation, log manual activity — and a closure gate. An alert cannot be marked handled until an action has actually been logged against it. That constraint is the difference between an audit trail and a list of dismissed notifications.
Alert drawer showing what moved, the accounts driving the gap, a history timeline of one condition escalating on a single alert, and the playbook actions
Alert drawer — what moved, why, and what closing it requires.

Risk You Cannot See Borrower by Borrower

Some exposure is invisible at the borrower level by construction. Two companies can each look adequately diversified while both routing most of their cash through the same financial institution — a correlation that only appears when you transpose the view.

The fund lens does exactly that. Health distribution segments all ten borrowers per metric into clickable cohorts, so "4 of 10 are amber or worse on accessible cash" becomes a filter rather than a statistic. Correlated exposure then puts borrowers on the rows and shared nodes on the columns — financial institution, jurisdiction, currency — and flags the columns where the fund is concentrated.

That is where a shared counterparty stops being an anecdote and becomes a number.
Portfolio view: health distribution bars across ten borrowers, and a cash-by-financial-institution matrix with borrowers as rows and institutions as columns, flagging a shared counterparty
Fund lens — health distribution, then correlated exposure with the shared counterparty flagged.

Zero Dependencies, Exact Numbers

The prototype is a single file: a PHP front controller serving one document with all CSS and JavaScript inline, History API routing for real URLs, and charts drawn as inline SVG. No framework, no build step, no CDN, no web fonts, no network requests at all after the first load. It runs from a folder and demos on a bad conference connection.

The constraint that shaped it most was insisting the numbers be exact rather than illustrative. Every figure on screen is computed from the seed dataset, which meant an end-to-end Playwright suite asserting the specific values — the three-stage waterfall, 62.0%, 1.15x against 1.5x, all 62 ledger rows — alongside zero console errors and no horizontal overflow at 1024px. A prototype that quietly rounds is a prototype nobody can interrogate in a room.
Arbor One sign-in screen: centred cream card on a deep green backdrop with the ARBOR One Monitoring wordmark
Sign-in — deep green, cream and a single gold accent, carried through every surface.

Key Insights & Takeaways

  • The number a system chooses to make prominent is a product decision, not a data decision.
  • An alert that can be dismissed without a logged action is a notification, not a control.
  • Exact figures cost more to build than plausible ones, and are the only kind that survive a room full of people who know the domain.
Let's Connect

Looking for a similar outcome?

Let's discuss how we can modernize your product operations or accelerate your AI roadmap.