Fat Agent Standard / Core Objects
v1.0PriorPolicy
Represents a prior or existing insurance contract relevant to a Quote, Application, or Policy.
PriorPolicy MUST reference other Fat Agent Standard objects rather than duplicate their underlying data. It represents the prior contract, not the newly issued Policy.
Identity
At least one of carrier_id or carrier_name SHOULD be supplied when the prior carrier is known. Use carrier_id when the carrier exists as a Carrier object. carrier_name is for prior insurance that has not been normalized.
| Field | Type | Required | Description |
|---|---|---|---|
prior_policy_id | string | Yes | Unique identifier for the PriorPolicy |
policy_number | string | No | Prior carrier's policy or contract number |
| carrier_id | string | No | ID of the prior Carrier |
carrier_name | string | No | Carrier name when a Carrier object is unavailable |
line_of_business | enum | Yes | Broad insurance line Allowed: life, annuity, long_term_care, disability, personal_auto, property, personal_umbrella, commercial, other |
line_of_business_description | string | Yes* | Custom value when line_of_business is other. Required when line_of_business is other. MUST NOT be set otherwise. |
product_type | string | No | Standardized product classification within the line of business. MUST be valid for the selected line_of_business when supplied. |
product_type_description | string | Yes* | Custom value when product_type is other. Required when product_type is other. MUST NOT be set otherwise. |
Policy Term
Policy Term describes the relevant dates and status of the prior insurance contract.
| Field | Type | Required | Description |
|---|---|---|---|
effective_date | string (date) | No | Effective date of the prior Policy |
expiration_date | string (date) | No | Expiration date of the prior Policy |
cancellation_date | string (date) | No | Date the prior Policy was cancelled |
status | enum | No | Current or final status of the prior Policy Allowed: active, expired, cancelled, non_renewed, lapsed, replaced, surrendered, terminated, other |
status_description | string | Yes* | Custom value when status is other. Required when status is other. MUST NOT be set otherwise. |
Coverage
coverage_ids references Coverage objects describing coverage provided by the prior Policy. Limits, deductibles, benefits, and riders belong on Coverage.
| Field | Type | Required | Description |
|---|---|---|---|
| coverage_ids | array[string] | No | Coverage objects associated with the PriorPolicy |
Prior Insurance History
Prior Insurance History supports prior-carrier and continuous-coverage information, particularly for Personal Auto and other P&C underwriting. These fields SHOULD NOT be used for life or annuity replacement transactions.
| Field | Type | Required | Description |
|---|---|---|---|
continuous_coverage | boolean | No | Whether coverage was maintained continuously |
months_with_carrier | integer | No | Number of continuous months insured with the prior carrier |
lapse_indicator | boolean | No | Indicates whether a lapse in coverage occurred. Required as true when continuous_coverage is false for personal_auto. |
lapse_days | integer | No | Number of days in the coverage lapse when known. MUST NOT be set when lapse_indicator is false. |
Replacement
Replacement represents how an existing life or annuity contract is affected by a new insurance transaction. replacement_policy_id is optional because a replacement may be known before the new Policy is issued.
| Field | Type | Required | Description |
|---|---|---|---|
replacement_indicator | boolean | No | Whether the existing contract is involved in a replacement |
replacement_type | enum | No | How the existing contract is being affected. Required when replacement_indicator is true. Allowed: full, partial, surrender, reduction, financed_purchase, other |
replacement_type_description | string | Yes* | Custom value when replacement_type is other. Required when replacement_type is other. MUST NOT be set otherwise. |
replacement_reason | string | No | Description or reason for the replacement |
| replacement_policy_id | string | No | ID of the new Policy replacing or affecting this contract |
External References
external_references maps the PriorPolicy to identifiers from outside systems, such as carrier, AMS, CRM, replacement-system, or third-party underwriting identifiers.
| Field | Type | Required | Description |
|---|---|---|---|
system | string | Yes | External system or source |
reference_id | string | Yes | Identifier assigned by the external system |
reference_type | string | No | Type of external reference |
Line of Business and Product Types
PriorPolicy MUST use the same line-of-business and product-type taxonomy as Quote, Application, and Policy. Health insurance and group insurance are outside Fat Agent Standard v1.0.
| Line of Business | Allowed product_type |
|---|---|
life | term_life, whole_life, universal_life, indexed_universal_life, guaranteed_universal_life, final_expense, other |
annuity | fixed_annuity, myga, fixed_indexed_annuity, spia, variable_annuity, other |
long_term_care | traditional_ltc, hybrid_ltc, other |
disability | short_term_disability, long_term_disability, other |
personal_auto | standard_auto, non_standard_auto, classic_collectible_auto, motorcycle, recreational_vehicle, other |
property | homeowners, condo, renters, dwelling_fire, mobile_manufactured_home, flood, other |
personal_umbrella | personal_umbrella, other |
commercial | businessowners, commercial_package, commercial_property, general_liability, commercial_auto, workers_compensation, commercial_umbrella, professional_liability, errors_omissions, directors_officers, employment_practices_liability, cyber, inland_marine, builders_risk, equipment_breakdown, crime, bonds, other |
other | other |
Validation Rules
- prior_policy_id and line_of_business MUST be supplied. All other fields are optional unless conditionally required.
- PriorPolicy represents a prior or existing contract. It MUST NOT represent the newly issued Policy.
- PriorPolicy MAY contain incomplete historical information when the complete prior contract is unavailable.
- When an enum value is other, the companion {field}_description field is required and MUST be a non-empty string. That companion field MUST NOT be set unless the enum value is other.
- product_type, when supplied, MUST be valid for the selected line_of_business.
- Health insurance and group insurance MUST NOT appear on PriorPolicy.
- Coverage information MUST be referenced through coverage_ids rather than duplicated.
- carrier_id SHOULD be used when the carrier exists as a Carrier object. carrier_name MAY be used when a Carrier object is unavailable.
- Personal Auto prior-insurance history uses continuous_coverage, months_with_carrier, lapse_indicator, and lapse_days. Those fields MUST NOT be used for life or annuity replacements.
- When line_of_business is personal_auto and continuous_coverage is false, lapse_indicator MUST be true.
- When continuous_coverage is true, lapse_indicator, when supplied, MUST be false.
- lapse_days MUST NOT be supplied when lapse_indicator is false.
- months_with_carrier and lapse_days MUST be integers greater than or equal to zero.
- Life and annuity replacements use replacement_indicator and replacement_type.
- When replacement_indicator is true, replacement_type is required.
- When replacement_indicator is false, replacement_type, replacement_type_description, replacement_reason, and replacement_policy_id MUST NOT be supplied.
- replacement_policy_id is optional because a replacement may be identified before the new Policy is issued.
- Dates MUST use ISO 8601 date format (YYYY-MM-DD).
