---
title: SAIF.Business.Policy.Premium overview
summary: High-level purpose, scope, and responsibilities for the premium-domain policy library.
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy.Premium
reference_type: package
---

# SAIF.Business.Policy.Premium overview

> **Documentation context:** Packaged Component (NuGet)

`SAIF.Business.Policy.Premium` models policy-period premium history, rating-plan participation, premium summary adjustments, billing-plan support data, and reporting projections. It is the premium-side business library in the policy domain, consuming `SAIF.Business.Policy.Rating` for rating-factor contracts while routing all persistence through BOF criteria and the data portal.

## Purpose
- Own the business objects that describe what was rated on a policy period, what premium adjustments were applied, and what resulting premium amounts should be surfaced.
- Supply premium-adjacent billing, payment-plan, financial-transaction, federal-coverage, and reporting projections needed by downstream policy workflows.

## Responsibilities
- Premium-set aggregate management, class-coverage validation, premium-summary subtotaling, and named premium-amount lookup.
- Rating-plan association, SAIF Plus/ELCB/stat-class helper lookups, billing-support data maintenance, and reporting projections.

## Key components
- `clsPremiumSet`: aggregate root for premium history snapshots and dual-database routing.
- `clsClassCoverageBase` / `clsClassCoverage`: class-line validation and persistence.
- `clsPolicyPeriodRatingPlan` / `clsPolicyRenewalRatingPlan`: effective-dated rating plans.
- `clsPremiumSummaryAdjustment`: summary adjustment line plus helper procedure calls.
- `Billing` and `Reporting` namespaces: billing-support data and reporting-friendly premium projections.

## Notes
- `Pipelines/build-vars.yml` sets `AppName: SAIF.BOF.Business` while `SolutionPath` and `ProjectPath` point to the Premium library. That mismatch should be reviewed before depending on pipeline metadata for package naming or release traceability.
- Indexed framework documentation was available for `clsBusinessBase`, but not for `clsCodeTableBase` or `clsAddress`; inherited content based on those two types is intentionally conservative.

## Related documentation
- [Index](index.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Database tables](database-tables.md)
- [SQL catalog](sql/index.md)
- [API reference](api/index.md)

## Sources
- `Business\SAIF.Business.Policy.Premium\SAIF.BOF.Business.Policy.Premium.vbproj`
- `Business\SAIF.Business.Policy.Premium\Pipelines\build-vars.yml`
- `Business\SAIF.Business.Policy.Premium\clsPremiumSet.vb`
- `Business\SAIF.Business.Policy.Premium\clsClassCoverage.vb`
- `Business\SAIF.Business.Policy.Premium\clsPolicyPeriodRatingPlan.vb`
- `Business\SAIF.Business.Policy.Premium\clsPremiumSummaryAdjustment.vb`
