Skip to content

Inspire internal documentation

These pages explain Inspire, Nextera’s family of insurance core systems: what the suite is, how a policy flows through it end to end, what each core replaces, and the vocabulary the teams use. They are drawn from the repositories’ own documentation and code — inspire-gi/docs, inspire-group/docs, the credit-life schema, the pension legacy archive — not from marketing material, and they state build status honestly.

An insurance core is the insurer-side system: the software that defines products, quotes and underwrites risk, issues and services policies, pays claims, bills premium, posts to the ledger and cedes to reinsurers. Nextera ran two live insurance systems for years — nxo-dms (distribution management) and nxo-link (life e-submission) — but had no core. Inspire closes that gap.

Inspire is one platform, five cores, one per line of business:

  • Inspire GI — general (non-life) insurance
  • Inspire Group — group life, medical and dental
  • Inspire Credit Life — loan-protection insurance tied to credit portfolios
  • Inspire Pension — retirement and pension administration
  • Inspire Individual — individual life (planned; no repository exists yet)

The front door is the launcher at inspire.nextera.id — four full-bleed rows, one per product, plus /widget/apps/, the app-switcher every Inspire app embeds in its own header. Adding a product to the launcher is an edit to src/data/products.ts in the inspire repository and nothing else.

Core Repository Administers Replaces Where it stands
GI inspire-gi Non-life policies: motor, property, personal accident, micro-insurance Nothing — a deliberate greenfield (ADR 0003) Furthest along. Product factory, underwriting, policy, billing, ledger and claims built; reinsurance block done; UI CRUD phase open. Track in docs/13-build-tracker.md
Group inspire-group Group contracts: master policies, member enrollment, sponsor billing, group claims AIA’s Compass 2000 Specs complete, code starting. 24 target modules specified; the implementation loop is early. Track in docs/05-tasks-checklist.md
Credit Life inspire-cl Certificates insuring loan repayments, in bulk, per creditor partner iCLIPS In build. Client, policy, certificate, underwriting, claim, surrender and billing modules are landing in both API and web; the repo README lags behind the code
Pension inspire-pension Pension plans, contributions, invested funds, vesting, retirement Avrist’s RPAS Legacy archive only. legacy/ holds the RPAS database dump and tooling; no modern code yet
Individual — Individual life policies — Planned. The launcher already carries its brand assets, but there is no repository yet

All four existing apps resolve in DNS and the launcher marks them live, but that reflects hosting, not feature completeness. The trackers named above are the honest record; treat the table above as a snapshot of late August 2026.

The coded cores share one stack and one solution shape, so skills transfer between them:

Layer What it is
API .NET 10, EF Core 10 on SQL Server, Serilog, Stimulsoft + Puppeteer reports, kebab-case api/v1 routes. JWT RS256 — the API refuses to start without a mounted keypair
Solution Inspire.Api / Inspire.Core / Inspire.Infrastructure / Inspire.Model; GI adds Inspire.Domain and Inspire.Tests
Web Angular 22 + Angular Material + @nextera/ui (the nxe- component library, from the local projects/nxe-ui)
Database SQL Server on db.tigana.co.id (nxgi for GI, nxi-cl for credit life). No EF migrations — hand-applied idempotent T-SQL in sql/ or db/
Platform plumbing SecureController (auth), CoreController (code tables, documents, approvals, queues, uploads), tcode / tobject / tnumber / tproperty reference tables, and the HTTPResponse envelope with its numeric ReturnCode
Operations Images to registry.tigana.co.id, Helm charts in nexteradigital/argocd, ArgoCD sync on push to main. The database connection string lives in a gitignored ccs file next to the binary

The lineage matters when reading the code. inspire-group was reskinned from orbit-dms-api (the Orbit DMS distribution system). inspire-cl is a literal fork of inspire-group and shares its schema. inspire-gi is an independent, clean build — but it kept its working names from before the suite was branded: database nxgi, response-code prefix NXGI-#### (ADR 0007).

GI is also built to a different philosophy from the other cores: configuration over code, on the design goal that launching a new insurance product must not require a schema change or a deployment. See Key concepts for the product-tree mechanism.

Where the authoritative documentation lives

Section titled “Where the authoritative documentation lives”

These pages orient you. The repositories hold the depth:

Repository Read first Then
inspire-gi README.md, docs/00-overview.md docs/06-process-flows.md (every lifecycle, diagrammed), docs/05-domain-model.md, docs/13-build-tracker.md, docs/adr/
inspire-group docs/00-legacy-overview.md docs/02-target-architecture.md, docs/03-migration-plan.md (the 24-module map), docs/04-module-specs/, docs/05-tasks-checklist.md
inspire-cl README.md src/inspire-cl-api/CLAUDE.md (stale on scope — the code is further along), sql/010-tables/ (the regenerated iCLIPS schema)
inspire-pension legacy/Doc RPAS/ legacy/scrpas.sql (the 862-table RPAS dump — the domain vocabulary for the core to come)
inspire README.md src/data/products.ts (the launcher product list)
Role Reading order
New engineer Key concepts → The big flow → your core’s docs/ per the table above
Business analyst Key concepts → The big flow → The five cores → the module specs for your core
Anyone new to insurance terms Glossary — open it alongside every other page
Anyone asking “why is the code like this?” Legacy to Inspire