Hero
Predictive Analytics & ML
Fraud, Risk & Anomaly Detection
Healthcare Fintech

Real-Time Underwriting Risk and Fraud Analytics for an Embedded Patient-Financing Provider


Let's Connect

Overview

What we built

A patient-financing provider was approving treatment plans with a manual checklist while patients waited at the front desk, and losses were climbing. We replaced the checklist with a real-time risk engine that decides in seconds.

In plain terms: this fintech lets patients at roughly 60 dental offices spread the cost of treatment, with the approval decision made at the front desk. That decision used to be a person working through a rules checklist while the patient stood waiting, often for several minutes. Applications that did not fit the checklist neatly were rejected by default, identity fraud was slipping through unnoticed, and the share of plans unpaid at 90 days had climbed above 9%.

We built a real-time underwriting engine that scores each application twice at once: a repayment-risk model trained on how past plans actually performed, and a fraud layer checking device, identity and velocity signals. The decisioning API returns approve, decline or refer in under 20 seconds, with genuinely borderline cases routed to a human review queue. Decision time fell from over 4 minutes to under 20 seconds, delinquency dropped from 9.1% to 6.4% at an unchanged approval rate, and confirmed identity-fraud losses fell 38%.

The Problem

Slow approvals, rising losses

The approval moment happened in the worst possible setting for a manual process: a patient at the front desk, a receptionist working through a rules checklist, and a queue forming behind. Decisions took several minutes, which is a long time to stand at a counter wondering whether you can afford your treatment, and an awkward one for the practice hosting the wait.

The checklist was blunt as well as slow. It could pass or fail an application, but it could not weigh one, so borderline cases defaulted to rejection and creditworthy patients walked away unfunded. At the other end of the spectrum it had no defence against deliberate deception: identity fraud was slipping through unnoticed, because a static rules list checks what an applicant says, not whether the applicant is who they claim to be.

The portfolio showed the accumulated damage. Delinquency at 90 days had climbed above 9%, and every point of it squeezed the margin on all the plans that were performing. Roughly 60 dental offices were writing this risk daily, with no scoring, no fraud signals and no feedback loop from how past plans had actually repaid.

Minutes-long counter decisions

Manual checklist underwriting took several minutes per application while the patient waited at the front desk and the practice queue built behind them.

Borderline means rejected

The checklist could only pass or fail, so applications that did not fit neatly were declined by default, turning away patients a model would have approved.

Fraud passing unnoticed

Static rules checked the application's contents, not its authenticity, so identity fraud moved through the funnel without triggering anything.

Losses eroding margin

Delinquency at 90 days had climbed above 9%, squeezing the economics of every funded plan across roughly 60 dental offices.

What it was costing them

Delinquency above 9% at 90 days ate directly into the margin on every funded plan, and confirmed fraud losses compounded it from another direction. Default-rejected borderline applicants were revenue turned away at the counter, patients associated the product with an awkward multi-minute wait, and the dental offices hosting that wait had every reason to question whether embedded financing was helping their front desk or clogging it.

The Solution

Real-time risk scoring engine

We built the underwriting engine around two models running in parallel on every application. The first is a gradient-boosted repayment-risk model trained on the provider's own historical plan performance, so it scores each new applicant against how similar plans actually repaid. The second is a fraud layer scoring device, identity and velocity signals, catching the applications whose problem is not creditworthiness but authenticity.

Both verdicts feed a single decisioning API that returns approve, decline or refer in under 20 seconds, fast enough that the answer arrives within the natural rhythm of a front-desk conversation. Refer is the deliberate third path: genuinely borderline cases route to a human review queue rather than defaulting to rejection, narrowing manual underwriting to the 7% of applications where judgement adds something.

Because models degrade quietly, we built the monitoring in from the start. Drift dashboards watch whether incoming applications still resemble the data the models were trained on, and portfolio dashboards track delinquency and fraud outcomes against expectations, so the team can see both models earning their keep, or needing attention, continuously.

Key decisions

01

Two models, one decision

Repayment risk and fraud are scored by separate specialised models on every application, then combined into a single verdict, because the two failure modes need different evidence.

02

Train on own plan history

The risk model learned from the provider's historical plan performance rather than generic credit heuristics, anchoring scores to how these patients actually repay.

03

Refer instead of reject

Borderline applications route to a human review queue rather than defaulting to decline, recovering the creditworthy applicants the old checklist turned away.

04

Decide inside the conversation

The API answers in under 20 seconds, so approval fits the front-desk moment instead of interrupting it with a multi-minute wait.

05

Monitor drift from day one

Drift and portfolio dashboards keep both models continuously observed, so degradation shows up in a chart before it shows up in losses.

Measurable Impact

What changed after launch

At the counter, the change is immediate: median point-of-sale decision time fell from over 4 minutes to under 20 seconds, so financing now resolves within the conversation it started in. In the portfolio, 90-day delinquency dropped from 9.1% to 6.4% at an unchanged overall approval rate, which is the combination that matters: better selection, not tighter rationing.

The fraud layer proved itself in the same period, with confirmed identity-fraud losses down 38% across the first two quarters after launch. And the human underwriters were not replaced so much as refocused: manual reviews narrowed to 7% of applications via the referral queue, the genuinely ambiguous cases where their judgement changes the outcome rather than every application that walked in.

Decision speed

Several minutes of manual checklist at the desk

Median under 20 seconds via the decisioning API

Portfolio health

90-day delinquency above 9%

6.4% at an unchanged approval rate

Fraud defence

Identity fraud slipping through unnoticed

Confirmed fraud losses down 38% in two quarters

Manual workload

Every application handled by hand

Reviews narrowed to 7% via the referral queue

Headline results

Median point-of-sale decision time cut from over 4 minutes to under 20 seconds

90-day delinquency reduced from 9.1% to 6.4% at an unchanged overall approval rate

Confirmed identity-fraud losses down 38% across the first two quarters after launch

Manual underwriting reviews narrowed to 7% of applications via the referral queue

Tech & Tools Used

What powered the build

Every tool below earned its place in this engagement. Here is the part each one played.

Python (FastAPI) logo

Python (FastAPI)

Implements the decisioning API that scores each application and returns approve, decline or refer to the point of sale in real time.

XGBoost

The gradient-boosted repayment-risk model at the engine's core, trained on historical plan performance to score each applicant's likelihood of repaying.

scikit-learn logo

scikit-learn

Provided the feature pipelines, calibration and evaluation tooling used to build and benchmark both the risk and fraud models.

Apache Kafka logo

Apache Kafka

Streams application events, decisions and outcome signals between services, feeding the fraud layer's velocity checks and the monitoring pipelines.

PostgreSQL logo

PostgreSQL

The system of record for applications, decisions, referral-queue cases and plan outcomes that the models and dashboards read from.

Redis logo

Redis

Serves the low-latency lookups the fraud layer needs, including device and velocity counters, inside the decision window.

AWS SageMaker

Hosts model training and deployment, keeping retrained risk and fraud models versioned and promotable without touching the serving path.

Docker logo

Docker

Containerises the decisioning services and model servers so the same builds run identically from development through production.

Grafana logo

Grafana

Drives the drift and portfolio dashboards that keep both models continuously monitored against incoming application patterns and repayment outcomes.

React logo

React

The interface for the human review queue, where underwriters work referred borderline cases with the models' signals alongside.

Ready to Build your Healthcare Fintech Business with Fraud, Risk & Anomaly Detection

Ask Byte

Ask Byte

Typically replies instantly

just Now

Hi! I'm OrganByte's assistant. How can I help you today?

AI-generated content may be incorrect


OrganByte

Building innovative software solutions that transform businesses and drive digital success.

© 2026 YourCompany. All rights reserved.