InsureOS

Overview

How The Caretakers designed and built InsureOS, a configurable rating, quoting, payment, renewal, and integration platform for specialty MGAs.

Why we built it

After more than a decade building software for New Zealand insurers, we had seen the same problem from every angle. The industry did not lack systems. It lacked a sensible way to change the parts customers and underwriters actually touched. Rate changes stayed trapped in spreadsheets or vendor queues. Every improvement became a dependency on someone else's roadmap. InsureOS is our answer: modern insurance infrastructure for specialty MGAs, conceived, designed, engineered, and operated by The Caretakers in Auckland.

Replacing an entire policy system is expensive, disruptive, and often unnecessary. The official ledger may be old, but it still knows the book, the accounting model, and the operational history. We designed InsureOS to sit in front of the systems an insurer already relies on. It owns product configuration, rating, quoting, referrals, payment, renewals, documents, and the customer experience, while the incumbent platform remains the official policy record. It is a practical modernisation path, not a replace-everything pitch.

Rating and quoting

At the centre of InsureOS is a TypeScript calculation engine built around the way insurance products are actually priced. Product teams define rating factors, tables, calculation rules, loadings, levies, excesses and referral criteria through the portal rather than in application code. A new rate can be prepared as an effective-dated version and scheduled without interrupting the version currently serving customers. If someone asks why a quote cost what it did, the answer is in the platform rather than in a spreadsheet called final-final-v3.

The customer journey is delivered as a lightweight Preact and TypeScript client package through npm and a CDN. It can be installed with a package manager, loaded with a script tag, or used as the base for a completely custom experience. Forms, validation, conditional questions, referrals, payment options, and resume-later journeys all come from the same product definition used by the engine. The same platform can support direct customers, dealers, brokers, or partner sites.

Running the business

The administration and dealer portal is built with Laravel, Inertia, React, TypeScript, and PostgreSQL. It gives insurance teams one place to manage products and releases, organisations and users, quotes and referrals, payment links, renewals, integrations and alerts. Role- and permission-based access control narrows each person to the work they are authorised to perform, and passkeys keep access secure without making every login a chore. Each organisation has its own PostgreSQL schema, with tenant boundaries enforced independently in the portal and the engine.

The NestJS REST API exposes rating, quoting, payment, policy, and history workflows through typed request and response contracts, token-based authentication, and generated OpenAPI documentation. The embedded quote client uses this same API, so a custom or headless implementation does not create a second path through the business logic. Policy systems, payment gateways, premium-finance providers, and insurer-specific tools connect through adapters and domain events, while retries, dead-letter handling, audit records, and operational alerts keep failures visible to the people who can fix them.

Under the hood

AWS is part of the product, not a diagram for later.

InsureOS runs on AWS and is defined with the AWS Cloud Development Kit. The engine is deployed across purpose-built Lambda functions behind API Gateway, with SQS for asynchronous event delivery, RDS for PostgreSQL, S3 for files and generated documents, Secrets Manager for credentials, and private networking inside a VPC. Networks, services, permissions, queues, storage, and runtime configuration live in TypeScript rather than as a collection of settings someone once clicked in the AWS console.

One codebase with shared contracts means fewer ways to disagree.

Infrastructure, application services, shared TypeScript packages, and the client library live in one Turborepo monorepo. A domain type can evolve from the calculation package through the API and into the quote client without maintaining disconnected definitions. Automated unit, integration, and end-to-end tests focus on the places insurance software is most likely to fail: pricing logic, lifecycle transitions, tenant boundaries, and third-party handoffs. Centralised logs, error tracking, health checks, and alerts make the system operable after it has shipped.

The website practises what the product preaches.

The marketing site at os.insure is built with Astro and served as static HTML from Cloudflare. The product walkthroughs, from building a rating table to a customer checking out, are small React components, and most of them only load as they scroll into view. A page full of animated demos still arrives as readable HTML first.

Try InsureOSView Related Work

The portal

The engine

The website

Got a project in mind?

Have a chat with The Caretakers.

We’re based in Auckland and work remotely with businesses across New Zealand. Tell us what you’re building, and let’s make it fast, secure, and a pleasure to use.

Call us, or use the form – we promise not to make it weird.

Phone: 09 929 1216