ClearBDX
Bordereaux processing for South African UMAs and short-term insurance brokers — messy partner spreadsheets in, clean insurer-ready output and a full audit trail out.
Working build · demo data
Every partner sends a different spreadsheet
A UMA receives bordereaux from many partners on different schedules, in inconsistent Excel, CSV and PDF layouts. Reconciling them by hand is slow, error-prone, and leaves nothing an insurer or auditor can trace back to the file it came from.
Doing it by hand does not just cost time. It loses the thread between the number an insurer is shown and the cell in the file it came from — which is exactly the thread an audit asks you to produce.
One pipeline, from a partner's file to a signed-off export
- One pipeline end to end: upload → map → normalise → validate → reconcile → sign-off → export
- Column mapping with reusable per-partner templates and drift detection when a partner changes format
- AI-assisted mapping suggestions that are deterministic-first and never auto-apply below a confidence threshold
- Validation against binder rules, with exceptions grouped by type and severity, assignable and resolvable
- Data lineage on every line item — raw value, the transform applied, and the canonical result
- Reconciliation of totals against binder terms, with variance drill-down
- Approval and sign-off that locks a submission once decided
- Immutable, searchable audit log and admin CRUD for partners, binders, fields, rules and schedules
From an unmapped upload to an immutable audit entry
These are screens from the running build, shown on demo data so the whole pipeline can be exercised without a real partner's book.
Screens show ClearBDX running against its built-in demo dataset. The partners, people and figures are fictional.
What is actually enforced
Regulated work is judged on the parts nobody demos. These are checkable in the code, not claims about intent.
- Four roles enforced by JWT authorization policies at the API, not just hidden in the UI
- Append-only audit log — the database context refuses to update or delete an entry
- Tenant isolation enforced by a global query filter, so a missed WHERE clause cannot leak across tenants
- Direct PII encrypted per column with AES-GCM before it reaches the database
- Mapping suggestions default to a locally-hosted model, so partner data need not leave the country
- 11 Cypress specs / 41 end-to-end tests walk the full pipeline, including the role matrix
- Every runtime and tooling dependency is free/open-source — no commercial licences
Have a data pipeline that runs on spreadsheets?
If your business depends on files arriving from partners in whatever shape they like, this is the shape of the fix. Tell us what you receive and we'll map it out.