Skip to main content
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.

MGA Architecture in OpenInsure

                 ┌─────────────────────────────────────────┐
                 │              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) │  │          │  │              │
              └────────────┘  └──────────┘  └──────────────┘

Programs

A Program is the core organizational unit. It defines the product being offered:
  • Line of business (GL, Cyber, E&O, WC, etc.)
  • Carrier and DA agreement
  • Eligible states
  • Rate table versions
  • Auto-bind thresholds (below which no human review is required)
  • Minimum and maximum policy terms
  • Permitted endorsement forms
POST /v1/programs
Authorization: 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
}

Submission Intake Flow

Carrier Relationships

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/carriers
Authorization: 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"
}

Reporting Requirements

MGAs have contractual reporting obligations to their carriers. OpenInsure automates:
ReportFrequencyDelivery
Premium bordereauxMonthlyEmail attachment (CSV/Excel) + API
Claims bordereauxMonthlyEmail attachment + API
Aggregate DA utilizationMonthlyAPI / carrier portal
Loss runsQuarterlyPDF per carrier
Annual production summaryAnnualPDF
All reports are generated by the bordereaux module and can be previewed in the Admin Dashboard before delivery. See Bordereaux Automation for details.

Producer Onboarding

Before a producer can submit business, they must be appointed:
  1. Create the agency record (POST /v1/producers).
  2. Upload license verification (the compliance engine checks license status via NIPR).
  3. Configure commission rates (by program).
  4. Issue API credentials (if the agency is integrating directly).
  5. Send portal invitation.
POST /v1/producers
Authorization: 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 }
  ]
}
:::tip The @openinsure/producer package includes a NIPR integration for real-time license status verification. Configure your NIPR credentials in the Admin settings to enable automatic license monitoring and renewal alerts. :::

Key Metrics Dashboard

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 UtilizationCurrent aggregate GWP vs. DA limit, with burn rate projection.

Loss RatioIncurred losses / earned premium by program and cohort year.

Submission Conversion

Quote-to-bind ratio by producer, program, and submission channel.