Skip to content
Omar Abdalla
All work

Case study · 2026

SMB Cash Flow Risk Engine

A spec-driven, full-stack exercise: score unpaid invoices for late-payment risk, then turn that score into something a small business can actually act on.

109
commits
6
build phases
REST
versioned API

The exercise.

This is an agentic, spec-driven engineering exercise, not a production product. It's a full-stack demo built deliberately across 109 commits and 6 phases to practice shipping a complete system.

Scoring risk.

The engine scores unpaid invoices for late-payment likelihood, then surfaces collections recommendations backed by ML evidence and concrete next steps. It also projects cash-balance scenarios so a business can see the forecast, not just the score.

The stack.

A versioned REST API keeps the contract stable as the model evolves.

  • FastAPI + SQLAlchemy + PostgreSQL backend.
  • Next.js + React + TypeScript frontend.
  • Dockerized, with GitHub Actions CI/CD.
  • Deployed across Vercel (frontend) and Render (API + database).

Stack.

FastAPINext.jsReactTypeScriptPostgreSQLDocker

FAQ.

What is the SMB Cash Flow Risk Engine?
It is a full-stack engine that scores unpaid invoices for late-payment likelihood, surfaces collections recommendations backed by ML evidence, and projects cash-balance scenarios. Omar Abdalla built it as a spec-driven engineering exercise, shipped deliberately across 109 commits and 6 phases.
What problem does the SMB Cash Flow Risk Engine solve?
It turns invoice late-payment risk into something a small business can act on, pairing each risk score with concrete next steps and forecasted cash-balance scenarios. A versioned REST API keeps the contract stable as the underlying model evolves.
What is the SMB Cash Flow Risk Engine built with?
The backend is FastAPI, SQLAlchemy, and PostgreSQL; the frontend is Next.js, React, and TypeScript. It is Dockerized with GitHub Actions CI/CD and deployed across Vercel (frontend) and Render (API and database).

Let's talk.

Happy to walk through the architecture and the decisions behind it.