All work
Finject LLC

FinjectAll-in-One CRM for Merchant Cash Advance Brokers

A specialized CRM that automates deal funding workflows for MCA brokers, replacing spreadsheets with AI-driven document parsing and lender matching.

85%
underwriting speedup
Finject LLC live website interface
Live project / September 2026Open project
01
Fintech Web App
Platform
02
10 Weeks
Timeline
03
2 Devs, 1 Financial Analyst
Team Size
04
OCR Parsing & Email SMTP
Integration
05
Next.js, FastAPI, PostgreSQL
Tech Stack
Case study

What had to change.

A close look at the operating problem, followed by the system we shipped to remove it.

01 / BEFORE

The Challenge

MCA brokers handle complex, fast-paced deals where funding decisions must happen in hours. Traditionally, this requires manually parsing three to six months of bank statements (PDFs), calculating average daily balances and overdrafts, and manually formatting submissions to dozens of lenders, resulting in slow operations and lost deals.

  • Manual document data entry takes hours and is prone to calculation errors.
  • No standardized deal dashboard, causing deals to fall through the cracks.
  • Lack of structured matching logic leads to submitting packages to the wrong lenders, increasing rejections.
02 / AFTER

The Solution

We built Finject—a custom SaaS CRM built specifically for the MCA brokerage workflow. The platform automates statement parsing with an AI document processor, calculates crucial risk variables, and uses a rule-based matching engine to suggest the best funding sources, enabling brokers to package and submit deals in minutes instead of hours.

  • Automated bank statement parsing extracting monthly deposits, daily balances, and risk factors.
  • Intelligent lender matching matrix based on historical funding rules.
  • Integrated portal for merchants to securely upload files via custom single-use links.
Delivery sequence

How we built it.

01

Requirements Mapping

Mapped MCA broker operations to replace disparate email folders and spreadsheets with a single pipeline.

02

OCR Parser Design

Developed a Python FastAPI ingestion service using OCR and AI prompts to parse financial data from banking PDFs.

03

Deal CRM Pipeline

Built a Kanban-style pipeline in Next.js tailored for submission states (Ingested, Parsing, Lender Match, Funded).

04

Lender Rule Engine

Created a database of lender preferences (state restrictions, minimum monthly volume, industry blacklists).

05

Secure Portal

Implemented single-use client upload links using encrypted tokens to safely receive sensitive tax/bank PDFs.

06

Outbound Submissions

Built automated email packaging tools that bundle applications and send them directly to underwriting desks.

User journeys

The product in motion.

Funding Broker

  1. 01Sends a secure upload link to a merchant requesting their last 4 bank statements
  2. 02Reviews the parsed bank statement telemetry (deposits, average balance, overdraft count)
  3. 03Applies the lender matching filter to find the top three high-probability lenders
  4. 04Packages the deal and submits it to the selected lenders directly from the app

Lender Underwriter

  1. 01Receives a structured email package from Finject containing all merchant documents
  2. 02Reviews the clean, pre-parsed summary sheet attached to the submission email
  3. 03Updates the deal status to approved/funded, sending automated webhook back to broker
Technology

The working stack.

Web Application

  • Next.js (App Router)
  • React.js
  • Tailwind CSS
  • Framer Motion

Backend Parser

  • FastAPI (Python)
  • LlamaParse / PDFPlumber
  • Pandas
  • PyPDF

Database & Queue

  • PostgreSQL
  • Supabase Auth
  • Redis Key-Value Store
  • Celery Workers

Messaging & Storage

  • AWS Private S3
  • SendGrid API
  • Twilio SMS
  • Firebase Cloud Messaging
Engineering notes
01

Statement Parser Ingest

Engineered parsing scripts that parse unstructured bank tables, normalizing dates, deposits, and negative balances.

02

Lender Matrix Engine

Designed a lightweight SQL schema for lender profile parameters allowing dynamic, compound filtering in Postgres.

03

Secured PDF Storage

Locked uploaded financial PDFs inside private AWS S3 buckets using short-lived signed URLs to ensure absolute compliance.

04

Real-time Web Sockets

Used server-sent events (SSE) to update the dashboard immediately when PDF parsing completes or email is opened.

Measured outcome

What changed after launch.

85%
underwriting speedup
0
lost deals from delays
+40%
funding conversion rate
Deep dive

Engineering breakdown.

A detailed retrospective on the architecture, technical requirements, and production rollout for Finject LLC.

Core Capability

Document AI & Data Extraction

Turn complex, unstructured PDFs, invoices, and financial statements into structured database records.

Explore Document AI & Data Extraction

The commercial finance underwriting bottleneck

In the Merchant Cash Advance (MCA) and alternative commercial lending sector, deal conversion is dictated entirely by speed. When a small business owner requests working capital, multiple brokerage shops race to underwrite the deal simultaneously. The brokerage that packages and delivers an accurate application to funding houses first almost always secures the client.

However, the traditional underwriting workflow is crippled by manual clerical bottlenecks:

  • Disparate Bank Statement Formats: Merchants upload statements from thousands of regional credit unions and national banks (Chase, Wells Fargo, Bank of America, local institutions). Each institution utilizes distinct PDF page layouts, font encodings, and transaction table formats.
  • Manual Arithmetic Overhead: An underwriting analyst must inspect 3 to 6 months of statements (typically 30 to 80 pages), calculate average monthly gross deposits, remove non-revenue transfers, tally NSF (non-sufficient funds) overdraft occurrences, and compute average daily ledger balances.
  • Lender Policy Friction: Each lending institution maintains strict, evolving underwriting guidelines (e.g., maximum 3 negative days per month, minimum $25,000 monthly revenue, exclusions on specific NAICS industry codes, or restricted geographic regions). Submitting an unqualified package results in instant rejection and wasted time.
  • Unsecured File Handling: Statements containing sensitive banking coordinates and corporate tax IDs were historically exchanged over unencrypted email attachments or public cloud dropboxes, creating catastrophic compliance and data leakage risks.

Engineering the Finject automated underwriting engine

Lesscode designed and built Finject as a specialized commercial finance CRM. The system pairs a high-performance Next.js web application with a distributed Python/FastAPI document extraction pipeline and a deterministic lender matching matrix.

1. Document AI & financial table parsing pipeline

To parse scanned and native vector PDFs with 99%+ mathematical fidelity, we built an asynchronous processing queue:

  • Asynchronous Ingestion: Uploaded statements trigger Celery tasks running on Redis queues, preventing long-running PDF parsing from blocking web workers.
  • Hybrid OCR & Spatial Extraction: Documents pass through a multi-pass pipeline utilizing LlamaParse and pdfplumber. The parser identifies table bounding boxes, normalizes inconsistent date conventions, and extracts credit transactions, debit debits, and balance records.
  • Deterministic Arithmetic Reconciliation: Rather than trusting raw OCR or LLM text generation alone, the engine executes rigid mathematical checksums: $$\text{Beginning Balance} + \sum \text{Credits} - \sum \text{Debits} = \text{Ending Balance}$$ If a extracted month fails arithmetic reconciliation by more than $0.05, the document is flagged for split-screen human-in-the-loop review.

2. Intelligent lender matching matrix

Once transactions are normalized, Finject computes underwriting telemetry:

  • Monthly average gross revenue (excluding internal transfers and MCA refinancing deposits)
  • Daily average ledger balance
  • Total count of negative ending days and overdraft fees per 30-day window
  • Existing position detection (identifying daily ACH debits from competing MCA funders)

These variables feed directly into a compound SQL filtering engine in PostgreSQL that evaluates real-time lender criteria:

  • Minimum average monthly revenue thresholds
  • Allowed maximum existing positions (1st position, 2nd position, 3rd position)
  • Restricted industries (e.g., auto dealerships, legal firms) and excluded US states
  • Minimum time in business

Brokers view an instant, ranked compatibility score for dozens of integrated funding houses, eliminating guesswork.

3. Zero-trust security & short-lived client upload links

Because financial statements represent high-value financial telemetry, the architecture adheres to zero-trust standards:

  • Brokers generate time-bound, single-use upload links sent to merchants via SMS and email.
  • Uploads stream directly from the merchant's browser to encrypted private AWS S3 buckets using short-lived signed URLs, never passing unencrypted through intermediate servers.
  • Role-Based Access Control (RBAC) in Supabase Auth ensures junior reps only access assigned deals, while company leadership retains global pipeline oversight.

4. Real-time submission packaging & pipeline telemetry

When a broker selects their target lenders, Finject automatically generates a submission package:

  • Compiles the pre-calculated underwriting summary sheet (one-page PDF executive brief).
  • Bundles the merchant application, driver's license, and parsed bank statement files.
  • Dispatches formatted submission emails directly to underwriters' inboxes via SendGrid SMTP with custom tracking tokens.
  • Server-Sent Events (SSE) stream status updates back to the broker's Kanban board when underwriters open emails, download packages, or submit offers.

Measured outcomes & production impact

Deploying Finject across active MCA brokerages replaced spreadsheets, email folders, and manual calculator pads with an automated, high-velocity operation:

  • 85% Underwriting Speedup: Deal packaging time decreased from an average of 3.5 hours to under 20 minutes per application.
  • Zero Lost Opportunities: Eliminating manual calculation errors and email tracking oversights brought dropped deal rates from delays down to absolute zero.
  • +40% Deal-to-Funded Conversion: By instantly routing applications to lenders whose exact risk guidelines matched merchant telemetry, rejection rates dropped and funded conversions surged by 40%.
  • Enterprise Bank-Grade Compliance: Secure S3 upload tokens and automated PII protection eliminated unencrypted email PDF exchanges completely.
New business / 2026

Have a process that should work better?

Bring us the bottleneck, the brittle build, or the idea. We'll give you a direct read on what to do next.