Contract Structure¶
The contract_structure action creates the multi-policy, multi-product-cover structure that defines the sections and coverages of a DUA contract. It must be configured before the multi_policy_validation_rules action.
What it does¶
When the underwriter completes contract_structure, they define:
- Policies (sections) — the named sections of the contract (e.g. "Section 1 – Property Damage")
- Product covers — the coverage items within each section (e.g. underwriter, product, line, EPI, territory, limits)
This structure is then used by: - Bordereau ingestion — to assign bordereau rows to the correct section - Validation rules — to define which rules apply to which section and coverage - Certificate generation — to determine which coverages drive certificate field values
Action config¶
| Field | Value |
|---|---|
name |
contract_structure |
placingType |
MASTER |
completionPipeline |
confirm_bind_in_pas_auto_set_policies_to_bound (or equivalent) |
operations[0].name |
contract_structure |
statusMappings.QUOTE_COMPLETE |
COMPLETE |
Default screen¶
By default, the contract_structure screen shows:
- policy —
optionName(section name),broker - productCoverDetail — section reference, section name, underwriter, product hierarchy, written/signed line, EPI, territory, limits, brokerage, notes
Overriding the screen¶
To customise the fields shown, provide your own screen meta data files:
config/{client}/dua/screen-meta-data/config/default/contract_structure.json
config/{client}/dua/screen-meta-data/files/default/contract_structure.json
These follow the standard screen meta data structure (groups → sections → elements). See Element Types.
Warning
Custom policy fields must use the model prefix values. and custom product cover fields must use additionalProperties. to ensure correct persistence. Without these prefixes, custom field values will not be saved correctly.
Example custom field key format¶
Policy-level custom field:
Product cover-level custom field:
{ "key": "additionalProperties.commissionRate", "label": "Commission Rate", "type": "percent-input" }
Completion pipeline¶
The completion pipeline for contract_structure is typically confirm_bind_in_pas_auto_set_policies_to_bound. This pipeline updates the policy statuses to BOUND after the contract structure is confirmed, which is required for subsequent DUA actions (declarations, bordereau) to function correctly.
Prerequisites¶
contract_structure must be the first DUA-specific action configured. The multi_policy_validation_rules action has contract_structure as a prerequisite — it cannot be accessed until contract_structure is complete.