Documentation
Build on iqava
iqava is a configurable ERP/CRM for the entire insurance value chain — insurers, reinsurers, brokers and service providers, Life & Non-Life. Pick your edition at sign-up and your workspace provisions itself with the right services, roles and an audit trail.
New: step-by-step guides. The sidebar has in-depth walkthroughs for each edition and module — every step, the best use case and best practice. Start with your edition.
Getting started
- Create your workspace — sign in and complete onboarding.
- Choose your edition— Insurer, Reinsurer, Insurance broker, Reinsurance broker or Service provider. The provisioning engine applies that edition's blueprint.
- Invite your team — add users and assign roles under Administration, or connect SSO and let people join automatically.
- Pin your services — keep your most-used modules on the home tab.
Editions & provisioning
Editions are blueprints, not forks. Your onboarding answers select a blueprint that the provisioning engine applies in one transaction — services, default roles with permission scopes, your admin account and the initial audit trail. The console then renders only the services your edition is entitled to.
Your workspace address
Every workspace gets its own address — your-company.iqava.com— chosen when you create it. It's where your whole team signs in, and you can share it directly with new staff.
- Pick it at sign-up — onboarding suggests an address from your organization name and checks availability live.
- Isolated sign-in — a session is valid only on the workspace it was opened on, so signing in to one workspace never grants access to another.
- Find it any time — your address is shown under Administration → Organization Settings; the sign-in page also has a “go to your workspace” box.
Prefer your own domain (e.g. erp.acme.com)? Administrators can connect one under Administration → Identity & SSO → Custom workspace domain: verify ownership with a DNS TXT record, point it to us with a CNAME, and we provision the HTTPS certificate. White-label domains are available on enterprise plans — talk to us.
Modules
One platform spans the whole value chain. Each module is tenant-scoped, permission-gated and audited; your edition decides which are switched on.
CRM
Clients, prospects, markets and the people behind them.
- Accounts & contacts with custom fields
- Opportunity pipeline & stages
- Campaigns & outreach
- Commission tracking
Underwriting & Policy
From product design to a bound, endorsed, renewing policy.
- Product factory & rating workbench
- Quote → bind → issue lifecycle
- Endorsements & mid-term changes
- Renewals with prior-term context
Claims
First notification of loss through to settlement — with an AI triage assistant.
- FNOL capture (incl. from Outlook)
- Reserves, approvals & payments
- Recoveries & salvage
- AI triage: coverage, reserve, next steps
Reinsurance
Treaty and facultative, from cession through technical accounting.
- Treaties & layers, facultative risks
- Cession / retention calculation
- Technical accounting & statements
- Retrocession & recoveries
Finance
A real double-entry ledger built for insurance.
- Double-entry general ledger
- IFRS 17 measurement & CSM
- Billing & receivables
- Journals on an immutable audit trail
Cash management
Open-item AR/AP all the way through to a reconciled bank.
- Open-item AR/AP with aging
- Settlements & netting (with GL postings)
- Cash position across accounts
- Bank reconciliation + AI match suggestions
Documents
Generate, issue and store every document.
- Token templates, generate from any record
- Issue / void with versioning
- File library on object storage (S3/R2)
- Attachments on claims, policies & more
Analytics
Edition-aware dashboards and the registers auditors ask for.
- Role-aware dashboards
- Registers & statements
- CSV / Excel exports
- Live figures — no stale exports
Automation & AI
No-code automation plus grounded AI agents.
- Triggers → conditions → actions
- Copilots grounded on your data
- Claims-triage & reconciliation agents
- MCP server for external agents
Administration
Enterprise controls, isolation and a complete audit trail.
- Granular roles & permissions (resource:action)
- Identity & SSO, directory sync, SCIM
- Postgres row-level tenant isolation
- Immutable audit trail; operator console
Identity, access & audit
Access is governed by granular resource:action permissions bundled into roles with data scopes (own → global). Connect Microsoft Entra or Google SSO, claim your domains, enable just-in-time provisioning and map directory groups to roles. Provision users either by pull (directory sync) or push (SCIM 2.0). Every change is written to an immutable audit trail, and tenant isolation is enforced at the database with Postgres row-level security.
AI, agents & MCP
iqava's AI is grounded on your live workspace data and disciplined by design: the deterministic system does the routine work, AI does the unstructured bits, and anything that moves money, binds risk or sends external communications stays behind a human approval gate. Every AI action is audited and scoped to your tenant.
- Claims-Triage Assistant — on any claim, get a coverage assessment, a suggested reserve range, recommended next actions and a draft acknowledgment. A proposal only.
- Reconciliation Assistant — proposes likely matches (direct, bank-charge and one-to-many summation) for unmatched bank and cashbook lines.
- No-code automation — triggers → conditions → actions for the repeatable work, with deterministic reliability.
- MCP server — connect iqava to Claude or any compatible agent as a remote Model Context Protocol server. Generate a per-workspace token under Administration → Identity & SSO → AI agent access (MCP); calls are tenant-scoped and audited.
REST API
Integrate iqava with your systems over a versioned REST API. Generate a key under Administration → Identity & SSO → API keys (scoped read or read+write), then authenticate with a bearer header. Every call is isolated to your workspace by row-level security and audited.
curl https://your-workspace.iqava.com/api/v1/claims \ -H "Authorization: Bearer iqk_your_key_here"
Endpoints (v1)
GET /api/v1/me— verify a key and see its workspaceGET /api/v1/claims·GET /api/v1/claims/{id}·POST /api/v1/claims(write)GET /api/v1/policies·GET /api/v1/policies/{id}GET /api/v1/accounts
Lists support ?q=, ?limit= and ?offset=. Responses are JSON ({ data, count, limit, offset }); errors are { error: { status, message } }.
Webhooks
Register endpoints under Administration → Identity & SSO → Webhooks and subscribe to events (policy.bound, claim.registered, claim.settled). Deliveries are POSTed as { event, data, timestamp }, signed with X-Iqava-Signature: sha256=<HMAC> (verify with your signing secret), and retried automatically on failure.
Official SDK
import { IqavaClient } from "@iqava/sdk";
const iqava = new IqavaClient({
baseUrl: "https://acme.iqava.com",
apiKey: "iqk_…",
});
const { data } = await iqava.listClaims({ q: "fire", limit: 20 });Custom domains
Administrators can connect their organization's own domains under Administration → Identity & SSO. Both require a quick DNS step, and neither takes effect until verified:
- SSO domains— claim a domain so SSO users with that email domain route to your workspace (with optional just-in-time provisioning). To prevent anyone claiming a domain they don't own, you publish a
TXTrecord (iqava-verification=…) and click Verify. Only verified domains route SSO or JIT. - Branded email — send verification, password-reset and notification emails from your own domain (e.g.
[email protected]). Add a sending subdomain and publish the SPF/DKIM records we generate; until verified, emails use the platform sender, so deliverability is never at risk.
Microsoft 365 add-ins
Work where your team already does. iqava brings the workspace straight into the Office apps — permission-scoped to your workspace and written to the audit trail, exactly like the web console.
Outlook
New claim from email
- Log an FNOL from the open email
- Auto-fills sender, subject & body
- Optional AI triage on the spot
- Opens the new claim in iqava
Excel
Claims bordereaux import
- Auto-maps your columns to claim fields
- Validates rows before import
- Bulk-creates claims in one click
- Writes a status column back to the sheet
Word
Save document to iqava
- Check a finished document into iqava
- Versioned & audited in the file library
- Or attach it to a claim or policy
- Generate-from-template insert (coming)
Installing them
- Org-wide (recommended). Your Microsoft 365 administrator adds them once in Microsoft 365 Admin Center → Settings → Integrated apps → Upload custom apps, using the manifest URL. The iqava button then appears in Outlook/Excel for the people you choose — nothing for them to search or install.
- Just for you. In Outlook or Excel, open Get Add-ins → My Add-ins → Add a custom add-in → Add from URL and paste the manifest.
Manifest URLs: /outlook-manifest.xml, /excel-manifest.xml and /word-manifest.xml (under https://iqava.com). A one-click install from the Microsoft AppSource store is coming. Need help rolling these out?
Self-hosting — step by step
Run iqava inside your own environment — the same platform as our cloud. The self-host stack brings up PostgreSQL, applies database migrations and seed data, then starts the calculation service and the console as one Docker Compose unit. A Helm chart is included for Kubernetes. This guide takes you from nothing to a running instance.
1. What you need
- A machine to run it on — any OS with Docker: Linux, Windows or macOS. ~2 vCPU and 4 GB RAM is plenty to start. A Linux server is recommended for production, but not required.
- Docker + Docker Compose v2 — the only hard requirement. On Windows/macOS install Docker Desktop; on Linux install Docker Engine. (
docker --versionshould print v2+.) - OpenSSL (or Node) — to generate one secret. Pre-installed on most systems.
- For production: a domain name and a reverse proxy for HTTPS — Caddy, Nginx or Traefik. Caddy is the simplest (automatic TLS).
- Optional integrations: a Groq (or Anthropic) API key for AI; any S3-compatible bucket (AWS S3, Cloudflare R2, MinIO) for file storage; a Resend key for email; Microsoft Entra/Google OAuth apps for SSO. All optional — iqava runs fully without them.
Tools & resources (links)
- Docker Desktop (Windows/macOS)
- Docker Engine (Linux)
- Docker Compose
- Caddy (easy HTTPS reverse proxy)
- Nginx
- Helm (Kubernetes)
- kubectl
- Groq Console (AI keys)
- Cloudflare R2
- AWS S3
- MinIO (self-host storage)
- Resend (email)
- Microsoft Entra admin
- Google Cloud Console (OAuth)
- PostgreSQL
2. Get it running
- Get the code into a folder on your machine — clone from your iqava repository (the Git URL provided with your license, or your own private mirror), then enter it:
git clone <your-iqava-repo-url> iqava cd iqava
- Create your config from the template and set the one required secret:
cp .env.selfhost.example .env # put the output of this into AUTH_SECRET in .env: openssl rand -base64 33
Also changePOSTGRES_PASSWORDfor production. Every other value has a sensible default. - Bring up the whole stack:
docker compose -f docker-compose.selfhost.yml up -d --build
Compose starts PostgreSQL, runs a one-shot job that applies the schema and seeds the permission catalog, then starts the calc service and the console. - Open
http://localhost:3000(or your server's address), sign in with the developer email sign-in (on by default), and create your first workspace.
Clarification — single-tenant. A self-hosted instance is normally for one organization, so the developer email sign-in gets you started immediately. For multiple internal orgs, each still gets its own workspace.
3. Put it on a domain with HTTPS
For production, run a reverse proxy in front of the console (port 3000) to terminate TLS, and point AUTH_URL and APP_URL in .envat your HTTPS domain. With Caddy it's two lines:
iqava.yourcompany.com {reverse_proxy localhost:3000}Then set AUTH_DEV_LOGIN=false once you've enabled SSO or password sign-in, and re-run the compose up -d.
4. Turn on optional integrations
Set the relevant variables in .env, then re-run docker compose -f docker-compose.selfhost.yml up -d:
- AI assistants —
GROQ_API_KEY(leaveAI_MODELempty for the default). - File storage —
STORAGE_ENDPOINT/REGION/BUCKET/ACCESS_KEY/SECRET_KEYfor any S3-compatible bucket. - Email —
EMAIL_PROVIDER=resend,RESEND_API_KEY,EMAIL_FROM. - SSO — the
AUTH_MICROSOFT_ENTRA_ID_*/AUTH_GOOGLE_*credentials; buttons appear automatically. - Operator console —
PLATFORM_ADMINS(comma-separated emails) to reach/platform.
5. Backups & upgrades
- Backup the database (the only stateful piece):
docker exec iqava-postgres pg_dump -U iqava iqava > iqava-backup.sql
- Upgrade — pull the latest code and rebuild; the migrate job applies any new migrations automatically:
git pull docker compose -f docker-compose.selfhost.yml up -d --build
- Kubernetes — use the Helm chart in
deploy/helm/iqava(console, calc, postgres, ingress and a migration job).
6. Troubleshooting
- View logs:
docker compose -f docker-compose.selfhost.yml logs -f console. - Console won't start & complains about
AUTH_SECRET— set it in.envand re-runup -d. - A feature shows “not configured” — that integration's env vars aren't set yet (see step 4). The rest of the app still works.
- Reset everything (deletes data):
docker compose -f docker-compose.selfhost.yml down -v.
Stuck?The assistant in the bottom-right corner can walk you through any of these steps — ask it things like “how do I enable storage” or “the migrate job failed.” Or talk to our team about a managed private deployment.