Fat Agent Standard / Insurance

v1.0

Contracting

Represents the standardized transaction and data required to establish, change, renew, or terminate a producer or agency's contractual relationship and selling authority with an insurance carrier.

One Contracting object is one contracting case. It identifies who is seeking authority with which Carrier, what was requested, and what the Carrier decided. It does not submit contracts, run e-signature, or calculate commissions.

Identity

contracting_id, contracting_type, and status are required. One Producer / Agency MAY have multiple Contracting records over time or with different carriers. Dates MUST use YYYY-MM-DD.

FieldTypeRequiredDescription
contracting_idstringYes

Unique Fat Agent Standard identifier for the contracting transaction

contracting_typeenumYes

Kind of contracting transaction

Allowed: new_contract, additional_appointment, additional_line, additional_product, hierarchy_change, compensation_change, reactivation, renewal, termination, other

contracting_type_descriptionstringYes*

Custom value when contracting_type is other. Required when contracting_type is other. MUST NOT be set otherwise.

statusenumYes

Current contracting case status

Allowed: draft, in_progress, ready_to_submit, submitted, received, under_review, requirements_outstanding, approved, approved_with_conditions, declined, withdrawn, completed, terminated, other

status_descriptionstringYes*

Custom value when status is other. Required when status is other. MUST NOT be set otherwise.

created_datestring (date)No

Date the contracting case was created

submitted_datestring (date)No

Date the contracting case was submitted

completed_datestring (date)No

Date the contracting case was completed

Parties

producer_agency_id and carrier_id are required. Do not embed Producer / Agency or Carrier. submitting_organization_id is the organization facilitating the case. It is not necessarily the producer being contracted.

FieldTypeRequiredDescription
producer_agency_idstringYes

Producer / Agency being contracted

carrier_idstringYes

Carrier with which authority is being requested

submitting_organization_idstringNo

Organization submitting or facilitating the case

Requested Authority

Requested Authority describes what the Producer / Agency is asking the Carrier to authorize. Jurisdictions do not prove licensing or appointment. product_ids allow contracting at a specific Product level when the carrier uses that model.

FieldTypeRequiredDescription
jurisdictionsarray[string]No

Requested jurisdictions. U.S. states SHOULD use ISO 3166-2 such as US-OH.

lines_of_businessarray[enum]No

Requested Fat Agent Standard lines

Allowed: life, annuity, long_term_care, disability, personal_auto, property, personal_umbrella, commercial, other

line_of_business_descriptionstringYes*

Custom value when lines_of_business contains other. Required when lines_of_business contains other. MUST NOT be set otherwise.

product_idsarray[string]No

Optional Product identifiers when contracting is product-specific

Hierarchy

Hierarchy identifies where the producer sits for this case. hierarchy_level is a string because carrier naming varies. Hierarchy does not define commission percentages or override mathematics.

FieldTypeRequiredDescription
upline_producer_agency_idstringNo

Immediate upline Producer / Agency for this case

hierarchy_levelstringNo

Carrier or distribution hierarchy level

carrier_hierarchy_codestringNo

Optional carrier-assigned hierarchy identifier

Compensation

Compensation identifies the requested or agreed arrangement. It does not calculate commissions. Rates, schedules, advances, chargebacks, overrides, vesting, and payment calculations are outside Contracting v1.0.

FieldTypeRequiredDescription
compensation_levelstringNo

Carrier or distribution compensation level identifier

commission_schedule_idstringNo

Optional reference to a commission schedule maintained outside this object

assignment_typeenumNo

How compensation is assigned

Allowed: direct, assigned, split, other

assignment_type_descriptionstringYes*

Custom value when assignment_type is other. Required when assignment_type is other. MUST NOT be set otherwise.

Requirements

requirements[] are items needed to complete the case. document_id MAY reference Document / Evidence when a document satisfies the requirement.

FieldTypeRequiredDescription
requirement_idstringYes*

Unique requirement identifier

requirement_typeenumYes*

Kind of requirement

Allowed: producer_information, agency_information, license_verification, appointment_request, background_check, aml_training, product_training, state_training, e_and_o, w9, eft_banking, voided_check, business_entity_documents, ownership_information, hierarchy_approval, commission_assignment, carrier_agreement, disclosure, signature, document, other

requirement_type_descriptionstringYes*

Custom value when requirement_type is other. Required when requirement_type is other. MUST NOT be set otherwise.

statusenumYes*

Requirement status

Allowed: required, requested, pending, received, reviewed, accepted, rejected, waived, not_applicable, other

status_descriptionstringYes*

Custom value when status is other. Required when status is other. MUST NOT be set otherwise.

requested_datestring (date)No

Date the requirement was requested

received_datestring (date)No

Date the requirement was received

reviewed_datestring (date)No

Date the requirement was reviewed

document_idstringNo

Document or evidence that satisfies the requirement

notesstringNo

Optional notes

Compliance

Compliance summarizes major contracting compliance items. It does not replace licenses, training certificates, requirements, or the carrier decision.

FieldTypeRequiredDescription
background_check_statusenumNo

Status of required background review

Allowed: not_required, not_started, pending, current, expired, failed, waived, other

background_check_status_descriptionstringYes*

Custom value when background_check_status is other. Required when background_check_status is other. MUST NOT be set otherwise.

aml_statusenumNo

Anti-Money Laundering training or compliance status

Allowed: not_required, not_started, pending, current, expired, failed, waived, other

aml_status_descriptionstringYes*

Custom value when aml_status is other. Required when aml_status is other. MUST NOT be set otherwise.

e_and_o_statusenumNo

Errors and Omissions insurance requirement status

Allowed: not_required, not_started, pending, current, expired, failed, waived, other

e_and_o_status_descriptionstringYes*

Custom value when e_and_o_status is other. Required when e_and_o_status is other. MUST NOT be set otherwise.

training_statusenumNo

Overall required training status

Allowed: not_required, not_started, pending, current, expired, failed, waived, other

training_status_descriptionstringYes*

Custom value when training_status is other. Required when training_status is other. MUST NOT be set otherwise.

suitability_statusenumNo

Suitability-related qualification status

Allowed: not_required, not_started, pending, current, expired, failed, waived, other

suitability_status_descriptionstringYes*

Custom value when suitability_status is other. Required when suitability_status is other. MUST NOT be set otherwise.

Agreements

agreements[] record agreement or signature state. The Standard does not perform e-signature.

FieldTypeRequiredDescription
agreement_idstringYes*

Unique agreement identifier

agreement_typeenumYes*

Kind of agreement

Allowed: producer_agreement, agency_agreement, carrier_contract, commission_agreement, assignment_agreement, privacy_agreement, business_associate_agreement, disclosure, other

agreement_type_descriptionstringYes*

Custom value when agreement_type is other. Required when agreement_type is other. MUST NOT be set otherwise.

document_idstringNo

Document containing the agreement

signature_statusenumYes*

Signature state

Allowed: not_required, not_sent, sent, viewed, signed, declined, expired, other

signature_status_descriptionstringYes*

Custom value when signature_status is other. Required when signature_status is other. MUST NOT be set otherwise.

signed_datestring (date)No

Date the agreement was signed

Carrier Decision

carrier_decision records the Carrier's decision. reason_codes are carrier or system strings. producer_code and agency_code MAY later update Producer / Agency appointments.

FieldTypeRequiredDescription
decisionenumYes*

Carrier decision on the contracting request

Allowed: pending, approved, approved_with_conditions, declined, withdrawn, terminated, other

decision_descriptionstringYes*

Custom value when decision is other. Required when decision is other. MUST NOT be set otherwise.

decision_datestring (date)No

Date of the decision

effective_datestring (date)No

Date the decision becomes effective

reason_codesarray[string]No

Carrier or system reason codes

producer_codestringNo

Carrier-assigned producer identifier resulting from contracting

agency_codestringNo

Carrier-assigned agency identifier resulting from contracting

notesstringNo

Optional decision notes

Appointments

appointments[] are jurisdictional appointment results for this case. Producer / Agency stores the reusable current appointment relationship. Systems are not required to synchronize automatically.

FieldTypeRequiredDescription
appointment_idstringYes*

Unique appointment result identifier

jurisdictionstringYes*

Appointment jurisdiction. Use ISO 3166-2 such as US-OH when applicable.

statusenumYes*

Appointment result status

Allowed: pending, active, inactive, terminated, not_required, declined, other

status_descriptionstringYes*

Custom value when status is other. Required when status is other. MUST NOT be set otherwise.

appointment_datestring (date)No

Date the appointment became effective

termination_datestring (date)No

Date the appointment terminated

lines_of_businessarray[enum]No

Fat Agent Standard lines on the appointment result

Allowed: life, annuity, long_term_care, disability, personal_auto, property, personal_umbrella, commercial, other

line_of_business_descriptionstringYes*

Custom value when lines_of_business contains other. Required when lines_of_business contains other. MUST NOT be set otherwise.

External References

external_references preserve case or transaction IDs from carrier platforms, e-sign, licensing providers, and Fat Agent workflow. They MUST NOT contain proprietary integration logic.

FieldTypeRequiredDescription
systemstringYes*

External system

reference_idstringYes*

Identifier assigned by that system

reference_typestringNo

Type of reference

Contracting Types

contracting_type describes the kind of authority or relationship change being requested.

Line of BusinessAllowed product_type
new_contractEstablish a new producer/agency relationship with a Carrier
additional_appointmentRequest additional jurisdictional appointment or authority
additional_lineAdd a line of business
additional_productAdd authority for a specific Product
hierarchy_changeChange upline or distribution hierarchy
compensation_changeChange the applicable compensation level or schedule
reactivationRestore a previously inactive or terminated relationship
renewalRenew a contractual relationship when the carrier requires renewal
terminationEnd the contractual relationship or authority
otherRequires contracting_type_description

Lines of Business

Requested and appointment lines use Fat Agent Standard product lines. Health insurance and group insurance are outside Fat Agent Standard v1.0.

Line of BusinessAllowed product_type
lifelife
annuityannuity
long_term_carelong_term_care
disabilitydisability
personal_autopersonal_auto
propertyproperty
personal_umbrellapersonal_umbrella
commercialcommercial
otherother

Validation Rules

  1. contracting_id, contracting_type, status, producer_agency_id, and carrier_id MUST be supplied.
  2. 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.
  3. One Contracting object represents one contracting transaction or case.
  4. A Producer / Agency MAY have multiple Contracting records with the same Carrier over time.
  5. Contracting references Producer / Agency and Carrier rather than duplicating those objects.
  6. Requested jurisdictions describe the authority being requested. They do not prove licensing or appointment.
  7. Requested lines and products describe requested selling authority. Product definitions remain separate.
  8. Hierarchy identifies distribution relationships for the contracting transaction.
  9. Compensation fields identify the applicable or requested arrangement but do not calculate commissions.
  10. Commission rates, schedules, advances, chargebacks, overrides, vesting, and payment calculations are outside Contracting v1.0.
  11. Requirements MAY reference Document / Evidence.
  12. Compliance statuses summarize major contracting compliance items and do not replace source evidence.
  13. Agreements record agreement or signature state. The Standard does not perform e-signature.
  14. Carrier Decision records the Carrier's contracting decision.
  15. Appointment results MAY be used to populate or update reusable appointment data in Producer / Agency.
  16. Carrier producer and agency codes returned through contracting MAY be reused in Producer / Agency carrier appointments.
  17. External references preserve external case or transaction identifiers without embedding proprietary integration logic.
  18. Proprietary carrier API mappings, credentials, automation, routing, and submission logic remain outside the Standard.
  19. Health insurance remains outside Fat Agent Standard v1.0 product scope.
  20. Dates MUST use ISO 8601 date format (YYYY-MM-DD).