Skip to content

Loss Fund Tracking

The loss fund is the financial heart of a captive insurance program. It is the pool of assets set aside to pay claims. Maintaining an adequately funded loss fund — and knowing in real time whether you’re on track — is the primary financial management responsibility of the captive manager.

OpenInsure provides real-time loss fund monitoring, stop-loss layer tracking, solvency threshold alerts, and actuarial projection tools.

The loss fund balance at any point in time is:

Loss Fund Balance =
Premium Contributions (collected YTD)
+ Investment Income (YTD)
- Claims Paid (YTD)
- Operating Expenses (captive management, actuarial, audit fees)
+ Stop-Loss Recoveries Received (YTD)

These components are maintained in the loss_fund_ledger table and updated in real time as transactions occur.

The Loss Fund balance is backed by TigerBeetle account type LOSS_FUND (code 6). When a claim payment is issued, the ledger debits LOSS_FUND and credits CLAIMS_PAID (code 7). Subrogation and salvage recoveries credit back to LOSS_FUND. Reinsurance recoveries (stop-loss or treaty) debit REINSURER_PAYABLE (code 9) and credit LOSS_FUND. TigerBeetle is the authoritative source of truth for the fund balance; the loss_fund_ledger SQL table in PlanetScale serves as the reconciliation record.

The Funded Ratio is the primary solvency metric for a captive:

Funded Ratio = Loss Fund Balance / (Case Reserves + IBNR)

A funded ratio of 1.0 (100%) means the captive has exactly enough assets to cover all known and estimated future claims. Most captive managers target 110–130% to maintain a solvency buffer.

Terminal window
GET /v1/captive/:orgId/loss-fund?asOf=2025-06-30
# Response:
{
"asOfDate": "2025-06-30",
"lossFundBalance": 1840000,
"components": {
"premiumsCollected": 1250000,
"investmentIncome": 38500,
"claimsPaid": 412000,
"operatingExpenses": 62000,
"stopLossRecoveries": 25500
},
"caseReserves": 685000,
"ibnrReserves": 290000,
"totalLiabilities": 975000,
"fundedRatio": 1.887,
"fundedPct": 188.7,
"solventAboveThreshold": true,
"minimumCapitalRequired": 250000
}

OpenInsure monitors three solvency threshold levels:

LevelFunded RatioAction
Healthy≥ 130%No action
Watch110%–129%Notification to captive manager
Warning90%–109%Notification to captive owner + regulator contact alerted
Critical< 90%Automated alert to captive manager, owner, and domicile regulator; new business restricted
Insolvent< 100% and < minimum capitalEmergency protocol; new business halted

When the funded ratio drops into Warning or Critical territory, a SOLVENCY_ALERT event is triggered:

{
"eventType": "SOLVENCY_ALERT",
"orgId": "org_01J8...",
"level": "WARNING",
"fundedRatio": 0.97,
"lossFundBalance": 945000,
"totalLiabilities": 975000,
"deficit": 30000,
"recommendations": [
"Consider additional member contributions or special assessment",
"Review open reserves for potential redundancy",
"Verify stop-loss attachment has not been incorrectly calculated"
]
}

Captives almost always purchase stop-loss reinsurance to protect against catastrophic losses. OpenInsure tracks stop-loss erosion in real time.

Specific Stop-Loss (Per-Occurrence) Protects the captive when a single claim exceeds the retention threshold. For example, with a $100,000 specific attachment:

  • Claims below $100,000 are 100% retained by the captive
  • Claims above $100,000 — the excess over $100,000 is recovered from the stop-loss carrier

Aggregate Stop-Loss Protects the captive when the total of all retained losses exceeds the aggregate attachment. For example, with a $750,000 aggregate attachment:

  • Once total retained claims paid exceed $750,000, further losses are recovered
Terminal window
GET /v1/captive/:orgId/stop-loss/erosion?year=2025
# Response:
{
"captiveYear": 2025,
"specific": {
"attachment": 100000,
"claims": [
{ "claimId": "clm_01J8...", "totalIncurred": 185000, "retained": 100000, "ceded": 85000, "recovered": 85000 },
{ "claimId": "clm_02J8...", "totalIncurred": 67000, "retained": 67000, "ceded": 0, "recovered": 0 }
],
"totalCeded": 85000,
"totalRecovered": 85000
},
"aggregate": {
"attachment": 750000,
"totalRetainedLosses": 612000,
"erosionPct": 81.6,
"remainingBeforeAttachment": 138000,
"projectedAttachmentDate": "2025-10-15"
}
}

The projection tool models future loss fund balance under several scenarios:

Terminal window
POST /v1/captive/:orgId/loss-fund/projection
Authorization: Bearer <admin_token>
Content-Type: application/json
{
"asOfDate": "2025-06-30",
"projectionEndDate": "2026-12-31",
"scenarios": [
{
"name": "BASE",
"assumedLossRatio": 0.65,
"premiumGrowthRate": 0.08,
"investmentYield": 0.045
},
{
"name": "ADVERSE",
"assumedLossRatio": 0.90,
"premiumGrowthRate": 0.05,
"investmentYield": 0.04
},
{
"name": "CATASTROPHIC",
"assumedLossRatio": 1.20,
"premiumGrowthRate": 0.00,
"investmentYield": 0.04,
"additionalShock": 250000
}
]
}

Response includes monthly balance projections, funded ratio trajectory, and the date (if any) when the funded ratio is projected to drop below the warning threshold.

Annual Loss Fund Analysis for Domicile Filing

Section titled “Annual Loss Fund Analysis for Domicile Filing”

Most captive domiciles require an annual actuarial review of the loss fund. OpenInsure generates the supporting data package:

Terminal window
POST /v1/captive/:orgId/loss-fund/annual-report
Authorization: Bearer <admin_token>
Content-Type: application/json
{
"year": 2024,
"format": "PDF",
"includeComponents": [
"PREMIUM_SUMMARY",
"CLAIMS_PAID_BY_LINE",
"RESERVE_DEVELOPMENT",
"IBNR_ANALYSIS",
"STOP_LOSS_SUMMARY",
"FUNDED_RATIO_TREND",
"INVESTMENT_SCHEDULE"
]
}

This report is formatted for submission with the domicile’s annual actuarial certification. It does not replace the actuary’s opinion — it provides the underlying data that the actuary signs off on.

Loss fund assets are typically invested in conservative fixed-income instruments. OpenInsure tracks investment income:

Terminal window
POST /v1/captive/:orgId/investment-income
Authorization: Bearer <admin_token>
Content-Type: application/json
{
"period": "2025-Q2",
"income": 9625,
"beginningBalance": 856000,
"endingBalance": 865625,
"yield": 0.045,
"investmentManager": "State Street Global Advisors"
}

Investment income is added to the loss fund balance and factored into the funded ratio calculation.