Banking, insurance and financeBI, AI and ML for the business
Motor claims and the black box
The claim describes a crash, the black box records speed, braking and acceleration. Muvia puts them side by side: every claim second by second, a Python score recomputed every morning, and the claims office knows which claims to send to an adjuster and which to pay right away.
Illustrative scenario: it describes a typical case, not a customer project.
The claim says “violent impact”. The black box can say whether it is true.
For every claim on a vehicle with a black box, the insurer has speed, braking and impact force recorded second by second. Yet those traces often stay on the telematics provider's portal, and the claims handler compares claim and data by hand, one file at a time.
With claims and telematics in one place you can compare all of them, every day: pay the claims the data confirms sooner, and send the ones that do not add up for inspection.
- Who it's for
- Claims office and claims handlers, fraud teams, actuaries and the insurer's analysts.
In Muvia, step by step
Real product screens, recorded on a project with sample data.
The video · The claim describes a crash, the black box records speed, braking and acceleration. Muvia puts them side by side: every claim second by second, a Python score recomputed every morning, and the claims office knows which claims to send to an adjuster and which to pay right away.
What you get
- Genuine claims paid sooner
- When the black box confirms the impact, the claim does not wait: the data backs it.
- Inspection where it is needed
- Claims that do not match the telematics surface every morning, with the reason alongside.
- A claim you can read in a chart
- Speed, braking and impact second by second, and similar claims overlaid: the handler sees what happened, not just a number.
- The insurer's own rules
- Thresholds and signals are the insurer's call; changing them is a new version of the function, tried first in a run that writes nothing.
For the technical team
How it is built in Muvia
- 1
Connect claims and telematics
The claims system and policies are copied on a schedule, incrementally; black-box traces arrive as files over SFTP. Every source becomes a table.
- 2
Read a claim in Analysis
Speed, acceleration and g-force on the same time axis, second by second: the impact, the braking before it and what happens after.
- 3
Align claims on the impact
The Layers view overlays a day's claims on the moment of impact: a real crash has a recognisable shape, a claim with no impact stands out at once.
- 4
Compare in Python, every morning
A function compares each claim with its trace (recorded impact, time and amount) and works out a score with the reasons. A flow runs it every morning at 7 on all open claims.
- 5
Show the claims office where to look
A dashboard shows the claims to send for inspection, the amount at stake and recorded force against amount claimed; the Monday report arrives by email.
Python function
import numpy as np
def transform(inputs, params, ctx):
df = inputs["rows"]
impact = df["max_g"] >= params["impact_threshold_g"]
gap_min = (df["stated_time"] - df["impact_time"]).abs().dt.total_seconds() / 60
signals = {
"no impact recorded": ~impact,
"time differs from trace": impact & (gap_min > params["tolerance_min"]),
"amount high for the impact": df["amount_claimed"] > df["max_g"] * params["euro_per_g"],
}
out = df[["claim_number", "policy", "amount_claimed", "max_g"]].copy()
out["score"] = sum(s.astype(int) for s in signals.values())
names = np.array(list(signals))
fired = np.column_stack([s.to_numpy(dtype=bool) for s in signals.values()])
out["reasons"] = ["; ".join(names[row]) for row in fired]
out["outcome"] = np.where(out["score"] > 0, "inspection", "impact confirmed")
ctx.logger.info("claims compared: %d", len(out))
return {"rows": out}- The data it needs
- Claims with date, time, stated circumstances and amount claimed, from the claims system on SQL Server
- Black-box traces with speed, acceleration and g-force second by second, files received over SFTP
- Policies and insured vehicles, from an Oracle database
- Partner repair shops, from an Excel file
- Parts of Muvia used
More cases in this line
All use cases- Card payment fraudEvery card payment leaves a row: amount, merchant, country, time. In Muvia a Python function written by your team compares each payment with the customer's habits and gives it a score that says why, and an alarm tells the fraud team when suspicious payments start to cluster.
- Customer 360 and segmentationPayments, chargebacks, support and newsletter live in four different systems. Muvia joins them customer by customer, every Monday a Python function sorts customers into segments by recency, frequency and value, with the reason, and Athena says whom to call back and prepares the list for the branches.
- Portfolio risk and correlationsA diversified portfolio stays diversified only while correlations hold. Muvia reads fund prices minute by minute, a Python function works out volatility and drawdown, Analysis aligns the spikes, and the committee sees the correlation flip sign before the monthly statement does.
Bring us a question you can't answer today.
We start from a real question your business has and walk the path from source to dashboard with your systems, not a demo dataset.