insurance-car · mockup

Fraud signals, Risk score and the case log

The screens for Fraud signals, claim score and AI damage detection, in Harbour Bold. Approvers meet fraud on Approvals and in each approval's detail, the Surveyor in Survey, and the Fraud investigator on /fraud, which holds every Stage's flags and the case log. Every list page shares one layout. Each screen has its states in a row above it.

/approvals · approvers only

Approvals

app · /approvals

Approvals

Estimates waiting for your decision.

Estimates waiting for your decision, in every branch you manage.

Filter by:
Submitted
Governance:

No Estimates waiting for you

New ones appear here when a Workshop submits an Estimate that needs your level.

ClaimSubmittedClient · WorkshopLevelDueChecksAmountActions
ACA-26-000123Toyota Avanza 2021 · B 1234 XYZ11 Oct 2026,15:48Rudi HartonoBengkel Sinar Jaya1 of 22 of 2after Agus Setiawan13 Oct 2026, 15:484 to reviewRp 9.980.000Review
ACA-26-000131Honda Brio 2022 · D 1777 KQ12 Oct 2026,09:20Wahyu SaputraBengkel Prima Auto1 of 22 of 2after Agus Setiawan14 Oct 2026, 09:20ClearRp 4.200.000Compare
ACA-26-000117Suzuki Ertiga 2020 · D 1290 ABC10 Oct 2026,13:05Hendra GunawanBengkel Prima Auto1 of 1EscalatedAgus Setiawan's due passedOverdue · 12 Oct 20261 to reviewRp 3.150.000Review
ACA-26-000128Toyota Rush 2023 · B 1555 SZA11 Oct 2026,16:30Andi WijayaAuto2000 Fatmawati1 of 11 of 113 Oct 2026, 16:30ClearRp 4.750.000Review
ACA-26-000126Daihatsu Xenia 2019 · B 2201 TRK11 Oct 2026,10:12Siti RahmaBengkel Sinar Jaya1 of 11 of 113 Oct 2026, 10:12ClearRp 2.400.000Review
ACA-26-000133Mitsubishi Xpander 2021 · B 1888 PQR12 Oct 2026,08:45Dian PurnamaBengkel Sinar Jaya1 of 11 of 114 Oct 2026, 08:451 to reviewRp 1.950.000Review
Behaviour
  • Approvals is one list, the Estimates waiting for your decision, for anyone in an approval chain. An escalated Estimate is waiting for you too, so it sits in the same list with an Escalated tag. Decision history lives on each Claim's Timeline, and oversight lives in the reports, so there are no Decided or My branches tabs.
  • Governance tags sit under the filters: one per Risk score band and one for possible duplicates, each with its count. A tag with a count of 0 doesn't show. Clicking a tag filters the list (try it), and clicking it again clears it.
  • A flagged row carries the DataTable's signal strip in the gutter, toned by its band and showing its count of open flags. Hover it to list them. Tags, strips and tooltips show only to fraudFlag.read holders.
  • The Checks column is plain data at its own step, so every approver sees it. It counts the Estimate lines whose checks against the Survey findings, AI damage items and price list need a look.
  • A Claim with a possible duplicate shows Compare instead of Review.
  • A Claims manager whose Memberships span several branches also gets a Branch filter. The levels, limits and escalation rule come from Approval levels and SPK.
/approvals/[claimId] · side panel

Approval detail: fraud, checks and their actions

app · /approvals/0192f3a1-7c2e-7d41-9b8e-5a1d2c3e4f60

Approvals

Behaviour
  • Fraud sits under the Approval chain: the Risk score, then a tag per severity with its count, hidden at 0, that filters the flags under it (try it). Approvers read flags under fraudFlag.read, and Dispose shows only to fraudFlag.review holders. Approvers can show a flag's evidence or ask the Fraud investigator to look.
  • Each line check offers its own fix. A duplicate line opens a side-by-side comparison: remove one line, or keep both with a reason. A price above the list can be set to the list price. A replace the Survey and AI call a repair can be changed to repair. A line with no Survey finding or detected damage can be removed, or the Workshop asked for photos. Keeping a line as asked always needs a reason.
  • Line decisions change the amount being approved, and each one is logged with who made it. The SPK is built from the approved lines.
  • Approve takes two steps: Approve, then "Proceed to approve" with the amount. Decline needs a reason and a description.
  • A Claims manager at level 2 sees level 1's line decisions already applied, and can still change them.
  • The panel opens with a back arrow to Approvals. Its sections are cards: the Approval chain stepper first, then Fraud, then the Estimate lines. The right column shows the photo the selected flag or line points to, with the AI's boxes.
/claims/[id]/survey · Fraud flags panel

Survey: fraud flags and Dispose

app · /claims/0192f3a1-7c2e-7d41-9b8e-5a1d2c3e4f60/survey
← Survey queue

ACA-26-000123 · Toyota Avanza 2021 · B 1234 XYZ

Under surveyCollision

Findings

Go into the SPK unchanged

PartActionNote
Rear bumperReplaceCracked through
Rear lamp, leftReplaceLens broken
Quarter panel, leftRepairDent; repaint

Fraud flags aren't shown to you

Seeing fraud flags and the Risk score needs fraudFlag.read.

Fraud flags

Viewing is recorded in the audit log
60
Risk score
HighFrom 2 open flags · scorer v1
20
Risk score
LowFrom 1 open flag · scorer v1
You surveyed this Claim, so another reviewer disposes of its flags.
  • 40
    Plate differs from the PolicyRear side read "B 1284 XYZ"; Policy B 1234 XYZ · Client · Rudi Hartono
    High
  • 0
    Plate differs from the PolicyData or reading error · Rina Wijaya · 12 Oct 2026, 14:05"Plate read from a muddy plate; chassis and engine match the Policy."
    Dismissed
  • 20
    Capture 26 km from the incident pinAfter both fixes' accuracy · 15 items · Client · Rudi Hartono
    Medium
  • 0
    Surveyor 1.4 km from the vehicle's WorkshopNames staff
    Staff · Dedi Kurniawan, Surveyor · not counted in the score
    Medium
  • 0
    Phone clock 7 minutes offDevice or GPS limitation · Rina Wijaya · 09 Oct 2026, 08:15
    Dismissed
Flag dismissedRisk score is now 20 · Low.
Behaviour
  • Reading flags and the Risk score needs fraudFlag.read, and every view is audited. Flags that name staff show only to fraudFlag.review holders, and never to the person they name.
  • Each open or confirmed flag adds High 40, Medium 20 or Low 5, capped at 100. Dismissed and superseded flags add nothing, and neither do flags that name staff. Bands come from the "Fraud signal thresholds" Rule.
  • Dispose shows wherever a flag shows, to fraudFlag.review holders. Nobody disposes of a flag on a Claim where they acted.
  • Confirm and Dismiss each need a reason code and a note. A flag can be disposed of again; its history is kept and the latest Disposition counts.
  • Dispositions go into the flag's history and the audit log, never the Timeline. They never pause, reject or delay a Claim.
  • Open flags never expire.
/fraud · Flags · Fraud investigator only

Fraud: flags at every Stage

app · /fraud/flags

Page not found

The page you are looking for does not exist or has moved.

Flags on every Claim, from registration to payment. Flags that name you are left out.

Filter by:
Governance:
ClaimRaisedFlagSeverityInvolved partyBranchDispositionActions
ACA-26-000098Under survey05 Oct 2026,09:12Photo seen on Claim ACA-26-000141HighClient · Budi SantosoJakarta SelatanOpen
ACA-26-000117Awaiting approval07 Oct 2026,16:40Early claim: incident 12 days after cover startedMediumClient · Hendra GunawanBandungOpenDispose
ACA-26-000123Awaiting approval08 Oct 2026,22:31Plate differs from the PolicyHighClient · Rudi HartonoJakarta SelatanOpenDispose
ACA-26-000123Awaiting approval08 Oct 2026,22:31Capture 26 km from the incident pinMediumClient · Rudi HartonoJakarta SelatanOpenDispose
ACA-26-000123Awaiting approval10 Oct 2026,11:02Surveyor 1.4 km from the vehicle's Workshop Names staffMediumStaff · Dedi KurniawanJakarta SelatanOpenDispose
ACA-26-000123Awaiting approval11 Oct 2026,15:48Rear lamp, left 18% above the price listLowWorkshop · Bengkel Sinar JayaJakarta SelatanOpenDispose
ACA-26-000131Awaiting approval12 Oct 2026,09:20Same chassis as open Claim ACA-26-000108HighClient · Wahyu SaputraBandungOpen
ACA-26-000098Rejected01 Oct 2026,10:05Photo seen on Claim ACA-26-000141HighClient · Budi SantosoJakarta SelatanConfirmed · 09 Oct 2026Rina Wijaya · case FC-0001Open case
ACA-26-000141Rejected02 Oct 2026,14:22Photo seen on Claim ACA-26-000098HighClient · Budi SantosoJakarta SelatanConfirmed · 09 Oct 2026Rina Wijaya · case FC-0001Open case
ACA-26-000087Paid24 Sep 2026,11:40Paint, rear 31% above the price listLowWorkshop · Bengkel Prima AutoBandungConfirmed · 02 Oct 2026Rina Wijaya · case FC-0002Open case
ACA-26-000087Paid24 Sep 2026,09:15Surveyor 2.1 km from the vehicle's Workshop Names staffMediumStaff · Fajar NugrohoBandungConfirmed · 02 Oct 2026Rina Wijaya · case FC-0002Open case
ACA-26-000064In repair14 Sep 2026,08:30Early claim: incident 4 days after cover startedMediumClient · Lina MarlinaBandungConfirmed · 18 Sep 2026Rina Wijaya · no caseNew case
ACA-26-000123Awaiting approval08 Oct 2026,22:31Phone clock 7 minutes offLowClient · Rudi HartonoJakarta SelatanDismissed · 09 Oct 2026Device or GPS limitationDispose again
ACA-26-000112In repair06 Oct 2026,12:10Capture items 640 m apartMediumClient · Rahmat HidayatBandungDismissed · 07 Oct 2026Explained by evidenceDispose again
Export readyfraud-flags_open_2026-10-12.xlsx · Download
Behaviour
  • /fraud is the Fraud investigator's page, under fraudFlag.review. Without it, /fraud and everything under it answer web's 404 page, as if the page didn't exist, and the menu has no Fraud item. It covers what Approvals can't: flags raised at registration, capture and survey before a Claim reaches approval, Claims that never reach it, flags that name staff, and the case log.
  • One list with a Status filter (Open, Confirmed, Dismissed) and Governance tags per severity and for flags that name staff, each with its count and hidden at 0 (try both). The export takes exactly the rows the filters show.
  • Each open or confirmed flag carries the signal strip, toned by severity and showing its points. Each row shows the Claim's current Stage, so the investigator can reach a flag before approval. The Claim and Actions columns stay pinned while the table scrolls sideways.
  • A flag that names you is left out, and so is Dispose on any Claim where you acted.
  • Alerts go to review holders when a Claim's band turns High, and for every flag that names staff.
  • Confirmed flags can open a case. Only confirmed flags count in scorecards.
/fraud/cases · Case log

Fraud: the case log

app · /fraud/cases

Fraud

Cases built from confirmed flags, kept in the fields POJK 12/2024 asks for.

Filter by:

No cases yet

Open a case from one or more confirmed flags, or a blank one for a fraud found outside a Claim. A year with no cases reports to OJK as "nihil".

CaseFraud knownFraud typeFollow-upOJKPotential lossActions
FC-0001Reused photos on two Claims09 Oct 2026501 Penipuan001 Internal processSignificant · due 14 Oct 2026Rp 14.300.000Open
FC-0002Surveyor and Workshop on inflated paint02 Oct 2026204 Penerimaan tidak sah003 Law enforcementIn the 2026 annual reportRp 3.200.000Open
FC-0003Second Claim on the same plate03 Aug 2026501 Penipuan002 Internal finishedIn the 2026 annual reportRp 6.750.000Open
Behaviour
  • Cases need fraudCase.create, which is seeded on the Fraud investigator Role only. It covers reading them, and every read is audited.
  • A case groups one or more confirmed flags across Claims, or opens blank.
  • The OJK column shows a significant case's deadline, 3 working days after the fraud becomes known, and when a reported case is due for an update.
  • A case closes at follow-up status 002 (internal process finished) or 004 (final court ruling).
  • Each case carries the signal strip with its count of confirmed flags, toned by the highest severity among them; hover it to list them. The Case and Actions columns stay pinned.
  • Cases live in the backend fraud module.
/fraud/cases/[id] · full width, in tabs

A fraud case in OJK's fields

app · /fraud/cases/0192f9d0-11aa-7b42-8c3d-2e4f5a6b7c80
← Cases

FC-0001 · Reused photos on two Claims

OJK ID BS12026000001 Significant-fraud report due 14 Oct 2026 1 working day overdue Update due 10 Nov 2026 Closed 02 Dec 2026
The significant-fraud report is lateIt was due 14 Oct 2026, 3 working days after the fraud became known. OJK fines Rp1.000.000 for each late working day, up to Rp30.000.000.
This reported case changedFollow-up moved to 003 on 20 Oct 2026. Send OJK an update within 15 working days, by 10 Nov 2026.
Closed at a final court rulingIt still goes into the 2026 annual report under its ID.
Follow-up001 Internal process003 With law enforcement004 Final court ruling
SignificantNoYes · reputational harmRina Wijaya · 12 Oct 2026, 09:40
Fraud known09 Oct 2026Started 28 Sep · ended 05 Oct 2026
Potential lossRp 14.300.000Incurred Rp 0 · after recovery Rp 0

Significance

A person marks it, never the platform, against the three criteria in POJK 12/2024 or the Insurer's own.

What happened

OJK's fraud type and activity codes, and a description with its PDF.

of 4,000 characters

FC-0001-description.pdfGenerated from the case and its evidence

Where and when

Fraud known starts the OJK clocks.

From [OJK's SLIK city code list]

Follow-up

002 or 004 closes the case.

Injured parties
Behaviour
  • The page is full width: a summary of the four facts people check first, then tabs. Each tab's form sections put a short explanation on the left and the fields on the right. The tabs work.
  • The fields follow POJK 12/2024's two templates: OJK's code lists, three dates, nine loss amounts and each perpetrator's identity block. The Insurer is filled in automatically.
  • A person marks significant fraud. Its report is due 3 working days after the fraud becomes known, counted on the Insurer's holiday calendar, with Alerts to the investigators.
  • Once a case is reported, any change to it starts a 15-working-day clock to send OJK an update.
  • Perpetrators start from the flags' Involved parties, with an identity snapshot. NIK stays masked.
  • A closed case is read only.
/fraud · Export for OJK

OJK exports

app · /fraud/cases
Annual report 2026 readyACA_anti-fraud_2026.xlsx and 3 PDFs · Download
Behaviour
  • Three exports: the significant-fraud report (Lampiran III), the annual report due 31 January (Lampiran II), and an update for cases changed since their last submission.
  • The files follow OJK's prescribed format: column order, codes, YYYYMMDD dates, whole rupiah, and extra rows under the same ID for further causes and actions.
  • Export is blocked while a mandatory column is empty, and the message names each one.
  • A significant case keeps its ID when it goes into the annual report.
  • Progress shows on the clicked button only, and the result arrives as a toast.