Bound Premium (MTD/YTD)
Gross written premium broken down by program, producer, and state.
OpenInsure is purpose-built for Managing General Agents. An MGA operates under delegated authority from one or more insurance carriers, meaning it can underwrite, bind, and service policies on the carrier’s behalf — within the limits of the Delegated Authority (DA) agreement.
This document describes how OpenInsure models the full MGA operational structure.
┌─────────────────────────────────────────┐ │ Carrier │ │ (issues paper, provides capacity) │ └──────────────────┬──────────────────────┘ │ DA Agreement │ (limits, states, classes, aggregate) ┌──────────────────▼──────────────────────┐ │ MGA │ │ (OpenInsure org — manages programs) │ │ │ │ ┌──────────┐ ┌────────────────────┐ │ │ │ Programs │ │ UW Workbench │ │ │ │ (GL, Cyber│ │ (referral queue) │ │ │ │ E&O, WC) │ │ │ │ │ └──────────┘ └────────────────────┘ │ └──────────────────┬──────────────────────┘ │ Appointment ┌──────────────┼──────────────┐ ▼ ▼ ▼ ┌────────────┐ ┌──────────┐ ┌──────────────┐ │ Agency A │ │ Agency B │ │ Agency C │ │ (Producer) │ │ │ │ │ └────────────┘ └──────────┘ └──────────────┘A Program is the core organizational unit. It defines the product being offered:
POST /v1/programsAuthorization: Bearer <admin_token>Content-Type: application/json
{ "name": "Commercial GL — Contractors", "carrierId": "car_01J8...", "daAgreementId": "da_01J8...", "lineOfBusiness": "GL", "eligibleStates": ["VT", "NH", "ME", "MA", "CT", "RI"], "autoBindThreshold": 25000, "rateTableId": "rt_gl_ne_v4", "policyTermMonths": 12}A producer submits via the Producer Portal (web form), API (JSON), or by uploading an ACORD 125 PDF.
For PDF submissions, Workers AI (Llama 3) extracts structured data from the form. The extraction returns a confidence score between 0 and 1. Submissions with confidence below 0.85 are flagged for producer verification before rating.
POST /v1/submissionsContent-Type: multipart/form-data
file=@acord125.pdfprogramId=prog_gl_contractorsImmediately after intake, the triage engine runs:
Triage results are returned in the submission record:
{ "triage": { "eligible": true, "flags": [ { "code": "PRIOR_SUBMISSION", "severity": "INFO", "message": "Open submission from 45 days ago" } ] }}If triage passes, the submission is rated automatically. The premium, factor breakdown, and quote expiration are returned. If the premium is below the auto-bind threshold, the producer can bind immediately without underwriter review.
Submissions above the auto-bind threshold, in referral states, or with loss history flags are placed in the Underwriting Workbench queue. An underwriter reviews the risk, may apply schedule rating adjustments, and either approves for binding or declines.
The producer (or underwriter) binds the submission. The system enforces DA limits in real time. On success:
An MGA can have multiple carrier relationships, each with its own DA agreement. The carrier is selected at the program level — a GL program might run on Carrier A’s paper, while a Cyber program runs on Carrier B’s.
POST /v1/carriersAuthorization: Bearer <admin_token>Content-Type: application/json
{ "name": "Summit Specialty Insurance", "naicCode": "10234", "amBestRating": "A-", "contact": { "technicalUW": "jennifer.wu@summitspec.com", "claims": "claims@summitspec.com", "compliance": "compliance@summitspec.com" }, "remittanceDayOfMonth": 15, "bordereauFrequency": "MONTHLY"}MGAs have contractual reporting obligations to their carriers. OpenInsure automates:
| Report | Frequency | Delivery |
|---|---|---|
| Premium bordereaux | Monthly | Email attachment (CSV/Excel) + API |
| Claims bordereaux | Monthly | Email attachment + API |
| Aggregate DA utilization | Monthly | API / carrier portal |
| Loss runs | Quarterly | PDF per carrier |
| Annual production summary | Annual |
All reports are generated by the bordereaux module and can be previewed in the Admin Dashboard before delivery. See Bordereaux Automation for details.
Before a producer can submit business, they must be appointed:
POST /v1/producers).POST /v1/producersAuthorization: Bearer <admin_token>Content-Type: application/json
{ "agencyName": "Mountain State Insurance Group", "taxId": "12-3456789", "licenseNumber": "VT-PC-0012345", "licenseState": "VT", "commissions": [ { "programId": "prog_gl_contractors", "commissionRate": 0.10 } ]}The Admin Dashboard (/admin/analytics) provides real-time MGA KPIs:
Bound Premium (MTD/YTD)
Gross written premium broken down by program, producer, and state.
DA Utilization
Loss Ratio
Submission Conversion
Quote-to-bind ratio by producer, program, and submission channel.