PolicyCore™ Administration System
Enterprise Insurance Platform
v4.2.1  |  Build 20240115  |  .NET 8 / React 18
Total Policies
1,247
Across all lines
▲ +43 this month
Written Premium
$4.2M
YTD annualized
▲ +8.3% vs prior yr
Loss Ratio
58%
Incurred / Earned
▼ -3pts improvement
Avg Policy Age
3.2 yrs
Retention indicator
→ Stable
Monthly Premium Written (12 Months)
Line of Business Distribution
Auto35%
Property28%
Gen. Liability22%
Workers Comp15%
Recent Policies
Policy NumberInsured NameLine of BusinessEffective DatePremiumStatus
POL-2024-008821Apex Manufacturing LLCGeneral Liability2024-01-01$18,450Active
POL-2024-008820Sunrise Retail GroupProperty2024-01-15$42,200Active
POL-2024-008819Metro Transit CorpAuto2024-01-15$67,800Pending
POL-2024-008818Blue Ridge ContractorsWorkers Comp2023-12-01$29,300Active
POL-2024-008817Pacific Foods Inc.Property2023-11-15$88,500Active
POL-2024-008816Urban Logistics Co.Auto2023-11-01$51,200Cancelled
POL-2024-008815Harbor Medical GroupGeneral Liability2023-10-01$24,700Active
POL-2024-008814Summit Tech SolutionsWorkers Comp2023-10-15$15,900Pending
Policy Information
Coverage Builder
Rating Algorithm Flowchart
1. Retrieve Policy Risk Characteristics
2. Assign Territory Factor
3. Lookup Class Code / SIC Factor
4. Apply Coverage Limit Factor
5. Apply Deductible Credit
6. Apply Experience Modification
7. Compute Final Indicated Premium
Algorithm: P = BaseRate × TerritoryFactor × ClassFactor × LimitFactor × DeductibleCredit × ExpMod
Time complexity: O(n) per coverage line — O(n·m) for multi-line accounts.
Bureau filings: ISO CGL, CA, CP rating manuals. State-specific deviations stored per jurisdiction table.
Live Rate Calculator
Territory Factors
StateTerritory Factor
California (CA)1.35
New York (NY)1.42
Florida (FL)1.28
Texas (TX)1.15
Illinois (IL)1.18
Pennsylvania (PA)1.12
Ohio (OH)1.05
Michigan (MI)1.08
Georgia (GA)1.10
All Other States1.00
Class Code (SIC) Factors
SIC CodeDescriptionFactor
2000Food Manufacturing1.15
3490Metal Services1.38
4213Trucking (Long Haul)1.72
5411Grocery Stores1.08
6411Insurance Agents0.85
7372Software Services0.90
8011Medical Offices1.22
8742Management Consulting0.88
Deductible Credit Schedule
DeductibleCredit %
$00.0%
$5003.5%
$1,0006.0%
$2,50010.5%
$5,00015.0%
$10,00021.0%
$25,00028.0%
$50,00034.0%
ISO / ACORD Bureau Forms Management
Forms Library
Form NumberDescriptionEditionLOB
CG 00 01Commercial General Liability12 19GL
CA 00 01Business Auto Coverage Form10 13Auto
CP 00 10Building and Personal Property10 12Property
WC 00 00 00Workers Compensation and EL01 15WC
CP 00 30Business Income (and Extra Expense)10 12Property
CG 20 10Additional Insured – Scheduled07 04GL
IL 00 03Calculation of Premium07 02All
CA 20 01Hired Auto – Specified as Covered10 13Auto
CP 10 30Causes of Loss – Special Form10 12Property
ACORD 130Commercial Lines Application01/2015All

ⓘ Click a row to preview form schema

Form Preview — Select a form
Click a form in the library to preview its XML schema.
Edition Diff Viewer
▼ Previous Edition (04 13)
<CoverageLimit>1000000</CoverageLimit>
<AggregateLimit>2000000</AggregateLimit>
<MedicalExpense>5000</MedicalExpense>
<PersonalInjury>excluded</PersonalInjury>
<ProductsCompletedOps>included</ProductsCompletedOps>
<PremisesOps>included</PremisesOps>
<FireDamage>100000</FireDamage>
</CoverageSection>
▲ Current Edition (12 19)
<CoverageLimit>1000000</CoverageLimit>
<AggregateLimit>3000000</AggregateLimit>
<MedicalExpense>5000</MedicalExpense>
<PersonalInjury>included</PersonalInjury>
<ProductsCompletedOps>included</ProductsCompletedOps>
<PremisesOps>included</PremisesOps>
<FireDamage>300000</FireDamage>
</CoverageSection>
Clean Architecture — Dependency Diagram
Presentation Layer
Infrastructure Layer
Application Layer
Domain
Layer
(Entities & Rules)
Presentation: React/TypeScript, Razor Pages
Infrastructure: EF Core, Service Bus, Blob
Application: CQRS, MediatR, FluentValidation
Domain: Policy, Coverage, Premium aggregates
Technology Stack
C# / .NET 8
LTS — Primary backend
🌐
ASP.NET Core
Web API + Minimal API
📈
Entity Framework Core
v8 — SQL Server
Azure Service Bus
Premium tier messaging
React + TypeScript
v18 — SPA frontend
🔒
Azure AD B2C
OAuth 2.0 / OIDC
📊
Application Insights
APM + distributed tracing
🚀
Azure Kubernetes
AKS — Container orchestration
📄
Azure Blob Storage
Document management
SOLID Principles — Insurance Domain Examples
S
Single Responsibility Principle
Each class has one reason to change. PremiumCalculator only calculates; PolicyRepository only persists.
class PremiumCalculator { Calculate(policy: Policy): Money { ... } } class PolicyRepository { Save(policy: Policy): void { ... } }
O
Open/Closed Principle
Rating algorithms open for extension via strategy, closed for modification.
interface IRatingStrategy { Rate(risk: RiskProfile): Premium; } class GLRatingStrategy : IRatingStrategy { } class AutoRatingStrategy : IRatingStrategy { }
L
Liskov Substitution Principle
CommercialPolicy and PersonalPolicy are substitutable wherever Policy is expected.
abstract class Policy { abstract CalculatePremium(): Money; } class CommercialPolicy : Policy { } class PersonalPolicy : Policy { }
I
Interface Segregation Principle
Clients only depend on interfaces they use. Forms don't need rating interfaces.
interface IWritable { Write(): void; } interface IRatable { Rate(): Money; } interface IIssuable { Issue(): Policy; } // WC policy only implements needed ones
D
Dependency Inversion Principle
High-level PolicyService depends on IFormSerializer abstraction, not concrete AcordXmlSerializer. Injection via constructor.
class PolicyService { constructor(private serializer: IFormSerializer, private rater: IRatingStrategy, private repo: IPolicyRepository) { } }
Design Patterns in PolicyCore
⚡ Strategy Pattern

Each LOB implements IRatingStrategy. The rating engine selects the correct strategy at runtime based on the policy type, enabling seamless addition of new LOBs without changing existing logic.

RatingEngine.Rate(policy) → strategy.Calculate(risk)
🏭 Factory Pattern

PolicyFactory.Create(lob, state) returns the correct policy aggregate with pre-configured coverages, default limits, and mandatory endorsements per jurisdiction.

PolicyFactory.Create("GL","CA") → CommercialGLPolicy
📈 Repository Pattern

Abstracts EF Core persistence behind IPolicyRepository. Enables unit testing with in-memory fakes and future swap to Cosmos DB without domain changes.

IPolicyRepository → EfCorePolicyRepository
🔔 Observer / Domain Events

Domain events (PolicyIssued, PremiumChanged) dispatched via MediatR. Handlers trigger billing updates, document generation, and audit log entries independently.

PolicyIssued → [BillingHandler, DocGenHandler]
REST API Reference — PolicyCore v4
Base URL: https://api.policycore.io/v4  |  Auth: Bearer JWT
OpenAPI 3.0 Spec
All endpoints operational