---
title: "LPSPayloadResponse"
url: "https://developers.zinnia.com/apis/policy-service-0-1-0/versions/8306e031-b41c-452a-a7ed-d73d65602086/schemas/LPSPayloadResponse"
---

> Full API specification: https://developers.zinnia.com/apis/policy-service-0-1-0/versions/8306e031-b41c-452a-a7ed-d73d65602086.md

# LPSPayloadResponse

## OpenAPI definition

```yaml
openapi: 3.0.0
info:
  title: Policy Service
  version: 0.0.21
servers:
  - url: https://qa.api.zinnia.io
components:
  schemas:
    Attributes:
      type: object
      properties:
        carrierCode:
          type: string
          example: carrierCode
          description: Carrier Code
        productCode:
          type: string
          example: productCode
          description: Product Code
        productType:
          type: string
          description: The Product Type refers to the specific category of life insurance
            or annuity based on its structure, premium flexibility, cash value
            potential, and investment options. It determines how the policy
            functions, how premiums are paid, and whether the policy includes a
            cash accumulation component
          example: productType
        planName:
          type: string
          description: The Product Name refers to the specific life insurance or annuity
            product selected by the contract owner at the time of policy
            issuance. It identifies the type of coverage, policy structure, and
            key features associated with the contract
          example: planName
        renewableIndicator:
          type: string
          example: renewableIndicator
          description: Renewable Indicator
        qualifiedPlanType:
          type: string
          example: qualifiedPlanType
          description: Qualified Plan Type
        payToYear:
          type: string
          example: payToYear
          description: Pay To Year
        policyYear:
          type: string
          description: The Policy Year refers to the number of years that have passed
            since the policy’s effective date. It is used to track policy
            duration, benefits, premium schedules, surrender charges, and other
            contractual provisions
          example: policyYear
        monthOfYear:
          type: string
          description: The Policy Months refers to the number of months that have passed
            since the policy’s effective date. It is used to track policy
            duration, premium schedules, benefits, and contractual provisions on
            a monthly basis
          example: monthOfYear
        policyNumber:
          type: string
          description: The Policy Number is a unique identifier assigned to a life
            insurance or annuity contract by the insurance carrier. It serves as
            the official reference number for tracking, managing, and servicing
            the policy throughout its lifetime
          example: policyNumber
        policyStatus:
          type: string
          description: The Policy Status refers to the current standing of a life
            insurance or annuity contract, indicating whether it is active,
            inactive, lapsed, or terminated. The status determines whether the
            policyholder has coverage and whether policy benefits remain in
            effect
          example: policyStatus
        issueType:
          type: string
          description: The Issue Type refers to the classification of how a life insurance
            or annuity contract is issued, based on underwriting approval,
            policy structure, or specific issuance conditions. It determines
            whether the policy was fully underwritten, simplified, guaranteed
            issue, or part of a group plan
          example: issueType
        residenceState:
          type: string
          example: residenceState
          description: Residence State
        jurisdiction:
          type: string
          example: jurisdiction
          description: Jurisdiction
        effectiveDate:
          type: string
          example: effectiveDate
          description: Effective Date
        applicationSignedDate:
          type: string
          example: applicationSignedDate
          description: Application Signed Date
        issueDate:
          type: string
          example: issueDate
          description: The Policy Issue Date, also known as the Policy Launch Date, is the
            date when the insurance company officially issues the policy to the
            client. This occurs after the application is approved, the insured
            accepts the offer, and payment information is provided. It marks the
            formal activation of the policy and triggers policy delivery
        contestabilityStartDate:
          type: string
          example: contestabilityStartDate
          description: The Contestability Start Date refers to the beginning of the
            contestability period, which is the time frame in which an insurance
            company can investigate and deny a claim if material
            misrepresentations or fraud are found in the application
        contestabilityEndDate:
          type: string
          example: contestabilityEndDate
          description: The Contestability End Date is the date when the contestability
            period expires, meaning the insurer can no longer deny a claim based
            on misrepresentation or omission in the application, unless fraud is
            proven
        policyDeliveryReceiptDate:
          type: string
          example: policyDeliveryReceiptDate
          description: Policy Delivery Receipt Date
        initialPaymentExpirationDate:
          type: string
          example: initialPaymentExpirationDate
          description: The Initial Payment Amount Expiration Date refers to the deadline
            by which the initial premium payment must be made to keep the policy
            offer valid and ensure the policy goes into effect., if not received
            Policy will be Canceled due to no Premium Set at Issuance
        nextAnniversaryDate:
          type: string
          example: nextAnniversaryDate
          description: The Next Policy Anniversary Date refers to the upcoming annual
            recurrence of the policy’s start date. It is based on the Policy
            Start Date and marks key policy milestones such as premium due
            dates, cash value updates, policy renewals, and benefit adjustments
        nextMonthiversaryDate:
          type: string
          example: nextMonthiversaryDate
          description: The Next Policy Monthiversary Date refers to the same day of each
            month that corresponds to the Policy Start Date, marking the monthly
            recurrence of the policy. It is used for monthly premium payments,
            cost deductions, cash value calculations, and interest crediting
        previousAnniversaryDate:
          type: string
          example: previousAnniversaryDate
          description: Previous Anniversary Date
        previousMonthiversaryDate:
          type: string
          example: previousMonthiversaryDate
          description: Previous Monthiversary Date
        expiryDate:
          type: string
          example: expiryDate
          description: Expiry Date
        terminationDate:
          type: string
          example: terminationDate
          description: Termination Date
        costBasisDate:
          type: string
          example: costBasisDate
          description: The Cost Basis Date refers to the date on which the cost basis
            value of a life insurance policy or annuity contract is calculated.
            The cost basis represents the total amount of after-tax money
            contributed to the policy or annuity and is used to determine the
            taxable portion of withdrawals, loans, or payouts
        costBasis:
          type: string
          example: costBasis
          description: The Cost Basis refers to the total cumulative amount of after-tax
            premiums paid into a life insurance policy or annuity contract. It
            represents the non-taxable portion of withdrawals, policy loans, or
            surrenders, ensuring that policyholders are only taxed on gains
            above this amount
        currency:
          type: string
          example: currency
          description: The Currency refers to the system of money in which a life
            insurance or annuity contract is denominated and transacted. It
            defines the monetary unit used for premium payments, policy
            benefits, withdrawals, and payouts
        claimApprovalDate:
          type: string
          example: claimApprovalDate
          description: The Claim Approval Date is the date when an insurance company
            officially approves a claim for payment after verifying the claim
            details, policy coverage, and required documentation
        certifiedReceivedDate:
          type: string
          example: certifiedReceivedDate
          description: The Certified Received Date refers to the date when the insurance
            company officially receives the certified death paperwork (such as a
            death certificate) required to process a life insurance claim. This
            date marks the beginning of the formal claims verification process
        lossReportDate:
          type: string
          example: lossReportDate
          description: Loss Report Date
      required:
        - carrierCode
        - productCode
        - productType
        - planName
        - renewableIndicator
        - qualifiedPlanType
        - payToYear
        - policyYear
        - monthOfYear
        - policyNumber
        - policyStatus
        - issueType
        - residenceState
        - jurisdiction
        - effectiveDate
        - applicationSignedDate
        - issueDate
        - contestabilityStartDate
        - contestabilityEndDate
        - policyDeliveryReceiptDate
        - initialPaymentExpirationDate
        - nextAnniversaryDate
        - nextMonthiversaryDate
        - previousAnniversaryDate
        - previousMonthiversaryDate
        - expiryDate
        - terminationDate
        - costBasisDate
        - costBasis
        - currency
        - claimApprovalDate
        - certifiedReceivedDate
        - lossReportDate
    AccountValue:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/AccountValueAttributes"
        policyMetrics:
          $ref: "#/components/schemas/PolicyMetrics"
        loan:
          $ref: "#/components/schemas/Loan"
        withdrawal:
          $ref: "#/components/schemas/Withdrawal"
      required:
        - attributes
        - policyMetrics
        - loan
        - withdrawal
    TestValue:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/TestValueAttributes"
      required:
        - attributes
    DeathBenefit:
      type: object
      properties:
        deathBenefitOption:
          $ref: "#/components/schemas/DeathBenefitOptionType"
        deathBenefitOptionEffectiveDate:
          type: string
          description: The Death Benefit Option Effective Date refers to the date when the
            selected death benefit option (Level, Increasing, or Return of
            Premium) officially takes effect in the policy. This date determines
            when the death benefit structure is set for payout upon the
            insured`s death
          format: date
          example: 2023-01-01
        deathBenefitOptionChangedEffectiveDate:
          type: string
          description: The Change in Death Benefit Option (DBO) Effective Date refers to
            the date when a requested change in the death benefit option is
            processed and officially takes effect in the policy. This allows
            tracking of modifications between Level (Option A), Increasing
            (Option B), or Return of Premium (Option C) death benefit structures
          format: date
          example: 2023-01-01
        deemedDeathBenefit:
          type: number
          description: Deemed Death Benefit refers to the minimum amount that must be
            considered the "death benefit" under an insurance contract as per
            IRS Section 7702(e)(1)(B). This is used for tax qualification
            purposes to ensure that a life insurance policy meets the statutory
            definition of life insurance (DLI) and retains its tax-advantaged
            status
          example: 12203.12
          format: double
        deathBenefitAgeGuarantee:
          type: number
          description: The Death Benefit Age Guarantee refers to the age until which the
            policy guarantees a death benefit, provided certain conditions such
            as premium payments and policy requirements are met. This guarantee
            ensures that the death benefit remains in force up to a specified
            age, regardless of market performance or policy cash value
            fluctuations
          format: int32
          example: 63
        disputedDebtAmount:
          type: number
          description: The Disputed Debt Amount refers to the total sum of all
            disbursement transactions processed on a life insurance policy
            between the insured`s Date of Death and the Date of Death Reported
            to the insurer. This amount may need to be reviewed and reconciled,
            as policy actions taken during this period may no longer be valid
          format: double
          example: 65068.27355
        deathBenefitInterest:
          type: number
          description: The Death Benefit Interest refers to the interest accrued on the
            life insurance death benefit amount from the insured’s Date of Death
            until the payment is made to the beneficiary. This interest is
            typically required by state regulations and compensates for the
            delay between the insured’s death and the claim settlement
          format: double
          example: 150.12241
        deathBenefitIndexCredit:
          type: number
          description: Partial index credit received as part of death benefit
          format: double
          example: 150.12241
        claimStatus:
          $ref: "#/components/schemas/ClaimStatus"
        proofOfDeathReceived:
          $ref: "#/components/schemas/ProofOfDeathReceived"
        remainingDeathBenefitPercentage:
          type: number
          description: The percentage of the beneficiary`s allocated share of the death
            benefit that remains to be paid after the policyowners death.
          format: double
          example: 75.5
    CoverageValue:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/CoverageValueAttributes"
      required:
        - attributes
    Coverages:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/CoveragesAttributes"
        participants:
          type: array
          items:
            $ref: "#/components/schemas/Participant"
        fees:
          type: array
          items:
            $ref: "#/components/schemas/Fee"
      required:
        - attributes
        - participants
        - fees
    Parties:
      type: object
      properties:
        partyType:
          $ref: "#/components/schemas/PartyType"
        partyRoleId:
          type: string
          description: TBD
        parentPartyId:
          type: string
          description: "The Parent Party ID is a unique identifier used to establish a
            hierarchical or relational link between multiple related parties
            within a life insurance or annuity contract. It is particularly
            useful in complex ownership or beneficiary structures, such as:
            Trust-owned policies, Multiple contingent beneficiaries linked to a
            single primary beneficiary, Parties acting in legal or fiduciary
            roles (e.g., grantors, trustees, custodians)"
          example: "1"
        beneficiaryPercentage:
          type: number
          description: Deprecated - kept for backward compatibility; instead use
            partyPercentage. The benefit percentage of the beneficiary
          example: 100
          format: double
        agentPercentage:
          type: number
          format: double
          description: Deprecated - kept for backward compatibility; instead use
            partyPercentage. Commission percentage for each agent
          example: 100
        agentExternalId:
          type: string
          description: The Id which user enters(Id validated in MCS) - Agent External ID
            and Compnay ID uniquely identifies the right Agent
          example: "3160000751"
        agentType:
          $ref: "#/components/schemas/AgentType"
        firstName:
          type: string
          description: The first name of the party/trustee
          example: Karen
        middleName:
          type: string
          description: The middle name of the party/trustee
          example: Anne
        lastName:
          type: string
          description: The last name of the party/trustee
          example: Bates
        fullName:
          type: string
          description: The full name of the party/The legal name of the Trust/Organization
          example: Karen Anne Bates
        prefix:
          $ref: "#/components/schemas/Prefix"
        suffix:
          type: string
          enum:
            - JR
            - SN
            - SR
            - I
            - II
            - III
            - IV
            - V
            - VI
            - VII
          description: The suffix of the party name
        gender:
          $ref: "#/components/schemas/Gender"
        dateOfBirth:
          type: string
          description: The date of birth of the party
          format: date
          example: 2023-01-01
        genderIdentity:
          type: string
          description: Gender Identity refers to an individual's self-identified internal
            sense of gender, which may differ from their sex assigned at birth.
            This value reflects how the individual personally defines their
            gender and may be expressed in free-text to allow for inclusivity
            and accuracy
          example: TBD
        attainedAge:
          type: integer
          description: Age calculated by date of birth and Policy year
          format: int32
          example: 55
        birthCountry:
          $ref: "#/components/schemas/Country"
        citizenCountry:
          $ref: "#/components/schemas/Country"
        birthState:
          $ref: "#/components/schemas/State"
        doingBusinessAs:
          type: string
          description: The name the organization is commonly known as
          example: TBD
        abbreviatedName:
          type: string
          description: The shortened/abbreviated version of the organization`s name that
            is unique to the organization
          example: TBD
        organizationCode:
          type: string
          description: Code to Identify organization
          example: TBD
        entityType:
          $ref: "#/components/schemas/EntityType"
        trustDate:
          type: string
          description: The trust agreement issued date to the party
          format: date
          example: 2023-01-01
        amendedTrustDate:
          type: string
          description: The Amended Trust Date refers to the most recent date on which the
            trust agreement was formally amended or restated, particularly when
            the trust is designated as the owner or beneficiary of a life
            insurance or annuity policy
          format: date
          example: 2023-01-01
        governingStateOfTrust:
          $ref: "#/components/schemas/State"
        trustType:
          $ref: "#/components/schemas/TrustType"
        trustTitle:
          type: string
          description: The title of the trustee
          example: TBD
        trustAccessCode:
          type: string
          description: Access code of the trustee
          example: TBD
        preferredCommunicationType:
          $ref: "#/components/schemas/PreferredCommunicationType"
        preferredAddressIndicator:
          type: string
          description: Deprecated - kept for backward compatibility; instead use
            preferredAddressIndicator under Address section
          example: "1"
        preferredAddressId:
          type: string
          description: The Preferred Address ID refers to the unique identifier of the
            address designated as the primary or preferred address for a given
            party when multiple addresses are associated with that individual or
            entity. This ensures consistent use of the correct address for
            communication, correspondence, and recordkeeping
          example: "1"
        preferredEmailId:
          type: string
          description: The Preferred Email ID refers to the unique identifier of the email
            address designated as the primary or preferred email contact for an
            individual or entity when multiple email addresses are on file
          example: "1"
        preferredPhoneId:
          type: string
          description: The Preferred Phone ID refers to the unique identifier of the phone
            number designated as the primary contact number for a given
            individual or entity when multiple phone numbers are associated with
            the same party
          example: "1"
        partyPercentage:
          type: number
          format: double
          description: Party Percentage refers to the proportion of ownership, benefits,
            or responsibility assigned to a party within an insurance or annuity
            contract. It is used to distribute policy ownership, benefit
            payouts, commission sharing, or annuity payments among multiple
            parties
          example: 12.1213
          deprecated: true
        formerName:
          $ref: "#/components/schemas/FormerName"
        identifications:
          type: array
          items:
            $ref: "#/components/schemas/Identification"
        taxWithholdings:
          type: array
          items:
            $ref: "#/components/schemas/TaxWithholding"
        partyStatus:
          $ref: "#/components/schemas/PartyStatus"
        isPartyBeneficiaryNonNatural:
          type: boolean
          description: A boolean field that indicates whether the beneficiary of a Party
            (when the Party is a Trust) is Non-Natural. This data point is
            captured for taxation purposes, as Trusts established for
            individuals are taxed differently from those benefiting entities
        isIrrevocable:
          type: boolean
          description: An indicator if the beneficiary is irrevocable. If yes, when doing
            any changes the beneficiary must also sign forms
        isRequiredMinimumDistributionDesignated:
          type: boolean
          description: An indicator if the beneficiary is designated to be included in
            Joint RMD calculations
        lastContactDate:
          type: string
          format: date
          description: Last Contact Date refers to the most recent date on which there was
            a direct or system-recorded interaction with a party (individual or
            entity) associated with a policy or contract. This party may be a
            policyholder, insured, beneficiary, payor, agent, or any other role
            relevant to life and annuity products.
          example: 2023-01-01
        beneficiaryShareMethod:
          type: string
          enum:
            - PERSTIRPESDISTRIBUTION
          description: The Beneficiary Share Method refers to the approach used to
            allocate the death benefit (or other payouts) among multiple
            beneficiaries listed under a policy or contract. It determines how
            the proceeds are divided in the event of the insureds death and is
            typically defined during policy setup or updated via a beneficiary
            change request.
        delegatedExecutionAuthorityType:
          $ref: "#/components/schemas/DelegatedExecutionAuthorityType"
        partyRoles:
          type: array
          items:
            $ref: "#/components/schemas/PolicyPartyRoles"
        partyId:
          type: string
          description: Party ID is a unique identifier assigned to a party (individual or
            entity) involved in an insurance or annuity contract. This
            identifier helps ensure accurate data exchange and tracking across
            insurance transactions
          example: Party_PB_Primary_Bene_1
        addresses:
          description: Array of addresses associated with the party
          type: array
          items:
            $ref: "#/components/schemas/Address"
        phones:
          description: Array of phone numbers associated with the party
          type: array
          items:
            $ref: "#/components/schemas/Phone"
        emails:
          description: Array of emails associated with the party
          type: array
          items:
            $ref: "#/components/schemas/Email"
        bankDetails:
          description: Array of bank accounts associated with the party
          type: array
          items:
            $ref: "#/components/schemas/BankAccount"
        deathDetails:
          $ref: "#/components/schemas/DeathDetail"
        impairmentDetails:
          $ref: "#/components/schemas/ImpairmentDetails"
        timestamp:
          type: string
          format: date-time
          description: TBD
          example: 2023-01-01T12:00:00.000Z
        customerId:
          type: string
          description: Assigned by Sales Force and used by all platforms
          example: 0017b000010N4bCAAS
        insured:
          description: Reference to the Insured model
          allOf:
            - $ref: "#/components/schemas/Insured"
        version:
          type: number
          format: int32
          example: 1
    PolicyFee:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/PolicyFeeAttributes"
      required:
        - attributes
    Features:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/FeaturesAttributes"
        lapseAssessment:
          $ref: "#/components/schemas/LapseAssessment"
        lapseProtection:
          $ref: "#/components/schemas/LapseProtection"
        reinstatement:
          $ref: "#/components/schemas/Reinstatement"
      required:
        - attributes
        - lapseAssessment
        - lapseProtection
        - reinstatement
    FundAllocations:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/FundAllocationsAttributes"
      required:
        - attributes
    Funds:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/FundAttributes"
        segments:
          type: array
          items:
            $ref: "#/components/schemas/Segment"
      required:
        - attributes
        - segments
    MatchSegment:
      type: object
      properties:
        segmentId:
          type: string
          description: TBA unique identifier assigned to a specific match segment within
            the policy, used to track matched contributions or benefits
          example: Match1
        matchAccountValue:
          type: number
          description: The present value of the matched amount/bonus in the segment,
            reflecting any growth, deductions, or adjustments
          format: double
          example: 1.985116
        cumulativeMatchPaymentAmount:
          type: number
          description: The total amount of matching contributions or eligible bonus
            contributions accumulated over time within the policy
          format: double
          example: 1.98
        yearToDateMatchValue:
          type: number
          description: The amount of matching contributions or eligible bonus
            contributions accumulated over the current policy year
          format: double
          example: 1.98
        maximumLifeTimeVestingAmount:
          type: number
          description: The highest total amount that can be matched or highest total
            eligible bonus over the lifetime of the policy, as per policy terms
          format: double
          example: 300
        maximumAnnualVestingAmount:
          type: number
          description: The maximum amount that can be matched or eligible bonus for
            current policy year
          format: double
          example: 300
        minimumPaymentsForMatch:
          type: number
          description: The minimum amount that can be matched or minimum eligible bonus
            over the lifetime of the policy, as per policy terms
          format: double
          example: 0
        unvestedPremiumBonus:
          type: number
          example: 10.12
          description: This is the current value that is not fully vested to the policy
            holder. It would be recaptured partially/fully at
            withdrawal/surrender.
          format: double
        totalRecapturedPremiumBonus:
          type: number
          example: 10.12
          description: The total amount of the premium bonus that was deducted from the
            policy value as a result of a partial or full withdrawal during the
            vesting period.
          format: double
        matchVestingDate:
          type: string
          description: The date on which the matched amount/ bonus becomes fully vested,
            meaning the policyholder gains full ownership rights over the
            matched funds/bonus.(match amount/bonus becomes part of account
            value)
          format: date
          example: 2023-01-01
        generalLedgerFundCode:
          type: string
          description: The accounting code used in the insurer’s general ledger system to
            track match/bonus related transactions
          example: V2201
        vestingPeriod:
          type: number
          description: The duration required before matched amount/bonus are fully vested,
            typically expressed in years or policy terms
          format: int32
          example: 10
    LoanSegment:
      type: object
      properties:
        segmentId:
          type: string
          description: A unique identifier assigned to each loan segment within the
            policy, representing a distinct loan transaction
          example: Loan1
        loanType:
          $ref: "#/components/schemas/LoanType"
        loanInterestType:
          $ref: "#/components/schemas/LoanInterestType"
        loanInterestDue:
          type: number
          format: double
          description: Calculated loan interest amount for a policy Owner to Pay before
            Anniversary
          example: 1000
        loanPrincipal:
          type: number
          format: double
          description: The original amount borrowed against the policy, excluding interest
          example: 1500
        loanBalance:
          type: number
          format: double
          description: The outstanding amount of the loan, including accrued interest if
            applicable
          example: 1500.72
        percentageOfAccountValue:
          type: number
          format: double
          description: Percentage of Account Value refers to a value that is calculated as
            a percentage of the total account value of an insurance or annuity
            contract. It is often used to determine allocations, fees, benefits,
            or charges that are based on how much money is currently held in the
            policy's account value.
          example: 1500.72
        loanCollateralAmount:
          type: number
          format: double
          description: This amount represents the total portion of the policy’s account
            value that is used as collateral when a loan is taken against the
            policy. It is calculated as follows:Loan Collateral Amount = Loan
            Principal + Loan Collateral Accrued Interest When a policyholder
            takes a loan, this amount reflects the loaned portion of the account
            value that is set aside as collateral. Interest is applied to this
            collateralized amount at a specific rate as per the policy terms
          example: 1500.72
        preInvestmentSegmentAmount:
          type: number
          format: double
          description: TBD
          example: 0
        loanInterestRate:
          type: number
          format: double
          description: The interest rate charged on the loan balance, which may be fixed
            or variable based on policy terms
          example: 4.5
        loanCreditRate:
          type: number
          format: double
          description: The interest rate charged to any collateralized portion of the
            policy’s cash value
          example: 4
        loanAccruedInterest:
          type: number
          format: double
          description: The interest accumulated on the outstanding loan balance that has
            not yet been paid
          example: 0.72
        loanCollateralAccruedInterest:
          type: number
          format: double
          description: The interest accumulated on the collateral portion of account value.
          example: 0.16
        yearToDateLoanTaken:
          type: number
          format: double
          description: The amount of loans taken against the policy in the current policy
            year
          example: 1500
        generalLedgerFundCode:
          type: string
          description: The accounting code used in the insurer’s general ledger system to
            track loan fund
          example: V2201
        startDate:
          type: string
          format: date
          description: The date when the loan segment becomes active and enforceable
            within the policy
          example: 2023-01-01
        endDate:
          type: string
          format: date
          description: The date when the loan segment is fully repaid, closed, or no
            longer applicable
          example: 2023-01-01
    Arrangements:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/ArrangementsAttributes"
        taxWithHolding:
          type: array
          items:
            $ref: "#/components/schemas/TaxWithHolding"
        payments:
          type: array
          items:
            $ref: "#/components/schemas/Payment"
        fees:
          type: array
          items:
            $ref: "#/components/schemas/ArrangementsFee"
        arrangementSources:
          type: array
          items:
            $ref: "#/components/schemas/ArrangementSource"
        loanSegments:
          type: array
          items:
            $ref: "#/components/schemas/ArrangementLoanSegment"
        matchSegment:
          $ref: "#/components/schemas/ArrangementsMatchSegment"
        deathClaim:
          $ref: "#/components/schemas/DeathClaim"
      required:
        - attributes
        - taxWithHolding
        - payments
        - fees
        - arrangementSources
        - loanSegments
        - matchSegment
        - deathClaim
    AccountValueAttributes:
      type: object
      properties:
        cashValueAmount:
          type: string
          example: "1000"
          description: Cash Value Amount
        beginningAccountValue:
          type: string
          example: "2000"
          description: The Account Value refers to the total cash value of a life
            insurance policy or annuity at the beginning of each transaction,
            including both loaned and unloaned amounts. It represents the
            policy’s accumulated value before deductions, withdrawals, or new
            transactions
        endingAccountValue:
          type: string
          example: "1500"
          description: The Current Account Value refers to the total cash value of a life
            insurance policy or annuity (including loaned and unloaned amounts)
            as of the last processed transaction. This value is used to
            determine the available account value (AV) for policyholders and is
            also the amount on which Fixed Interest is credited
        minimumAccountValue:
          type: string
          example: "500"
          description: Minimum Account Value
        cashValueByYear:
          type: string
          example: "200"
          description: Cash Value By Year
        unLoanedAcctValue:
          type: string
          example: "300"
          description: Unloaned Account Value
        loanedAcctValue:
          type: string
          example: "100"
          description: Loaned Account Value
        cashSurrenderValue:
          type: string
          example: "800"
          description: Cash Surrender Value
        netAmountAtRisk:
          type: string
          example: "50"
          description: The Net Amount at Risk (NAR) is the difference between the policy’s
            total death benefit and the policy’s account value (cash value). It
            represents the portion of the death benefit that the insurance
            company is at risk of paying out beyond the policyholder’s
            accumulated account value
        deemedCashValueAmount:
          type: string
          example: "400"
          description: Deemed Cash Value Amount
      required:
        - cashValueAmount
        - beginningAccountValue
        - endingAccountValue
        - minimumAccountValue
        - cashValueByYear
        - unLoanedAcctValue
        - loanedAcctValue
        - cashSurrenderValue
        - netAmountAtRisk
        - deemedCashValueAmount
    PolicyMetrics:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/PolicyMetricsAttributes"
      required:
        - attributes
    Loan:
      type: object
      properties:
        status:
          type: string
        principle:
          type: number
        interestPaid:
          type: number
        chargeRate:
          type: number
        creditRate:
          type: number
        balance:
          type: number
        maxAvailable:
          type: number
        loanIntDueAmt:
          type: number
        prefIntDueAmt:
          type: number
        loanFundValue:
          type: array
          items:
            $ref: "#/components/schemas/LoanFundValue"
    Withdrawal:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/WithdrawalAttributes"
      required:
        - attributes
    TestValueAttributes:
      type: object
      properties:
        guidelineLevelPremiumTestDate:
          type: string
          example: 2021-01-01
          description: Guideline Level Premium Test Date
        definitionOfLifeInsuranceMethod:
          type: string
          example: Method A
          description: "The Definition of Life Insurance (DLI) refers to the IRS-defined
            criteria that a life insurance policy must meet to maintain its
            tax-advantaged status. Policyholders must choose between two
            IRS-approved tests to ensure compliance: Guideline Premium Test
            (GPT) Cash Value Accumulation Test (CVAT) Each test has different
            implications on premium limits, cash value growth, and tax
            treatment"
        guidelineSinglePremium:
          type: string
          example: "500"
          description: The Guideline Single Premium (GSP) refers to the maximum single
            premium payment that can be made into a life insurance policy
            without violating the IRS`s Guideline Premium Test (GPT). It is used
            to ensure that the policy qualifies as life insurance and maintains
            its tax-advantaged status
        guidelineAnnualPremium:
          type: string
          example: "1000"
          description: Guideline Annual Premium
        guidelineLevelPremiumExcessPayAmount:
          type: string
          example: "200"
          description: Guideline Level Premium Excess Pay Amount
        cumulativeGuidelineAnnualPremium:
          type: string
          example: "2500"
          description: Cumulative Guideline Annual Premium
        modifiedEndowmentContractTestDate:
          type: string
          example: 2022-01-01
          description: The MEC Test Date refers to the last date on which the life
            insurance policy was tested to determine whether it qualifies as a
            Modified Endowment Contract (MEC) under IRS regulations. This date
            is updated whenever a new MEC test is performed, ensuring the policy
            remains compliant with federal tax rules
        modifiedEndowmentContractMaximumContribution:
          type: string
          example: "3000"
          description: Modified Endowment Contract Maximum Contribution
        modifiedEndowmentContractDate:
          type: string
          example: 2022-05-01
          description: Modified Endowment Contract Date
        modifiedEndowmentContractIndicator:
          type: string
          example: YES
          enum:
            - YES
            - NO
          description: Modified Endowment Contract Indicator
        sevenPayPremium:
          type: string
          example: "1500"
          description: The 7-Pay Premium refers to the maximum allowable premium that can
            be paid into a life insurance policy during the first seven years
            without triggering Modified Endowment Contract (MEC) status. It
            ensures that the policy remains a tax-advantaged life insurance
            contract rather than an investment vehicle
        sevenPayPremiumStartDate:
          type: string
          example: 2023-01-01
          description: Seven Pay Premium Start Date
        sevenPayYear:
          type: string
          example: "5"
          description: Seven Pay Year
        sevenPayTestBasis:
          type: string
          example: Basis A
          description: The 7-Pay Test Basis refers to the total cumulative premium paid
            into a life insurance policy during the first seven years (the 7-pay
            period), as measured against the IRS 7-Pay Test limit. This amount
            is used to determine whether the policy qualifies as a life
            insurance contract or is classified as a Modified Endowment Contract
            (MEC).
        sevenPayTestLimit:
          type: string
          example: "3000"
          description: Seven Pay Test Limit
        sevenPayTestYearInPeriod:
          type: string
          example: "2"
          description: The Year in Period refers to the current year within the seven-year
            time frame of the 7-Pay Test. It is crucial because the 7-Pay Limit
            increases each year, and the test is updated annually to ensure the
            policy remains within IRS limits
      required:
        - guidelineLevelPremiumTestDate
        - definitionOfLifeInsuranceMethod
        - guidelineSinglePremium
        - guidelineAnnualPremium
        - guidelineLevelPremiumExcessPayAmount
        - cumulativeGuidelineAnnualPremium
        - modifiedEndowmentContractTestDate
        - modifiedEndowmentContractMaximumContribution
        - modifiedEndowmentContractDate
        - sevenPayPremium
        - sevenPayPremiumStartDate
        - sevenPayYear
        - sevenPayTestBasis
        - sevenPayTestLimit
        - sevenPayTestYearInPeriod
    DeathBenefitOptionType:
      type: string
      enum:
        - LEVEL
        - INCREASING
    ClaimStatus:
      type: string
      enum:
        - APPROVED
        - NOTAPPROVED
        - PROCESSED
    ProofOfDeathReceived:
      type: string
      enum:
        - Yes
        - No
    CoverageValueAttributes:
      type: object
      properties:
        totalRiskAmount:
          type: string
          example: "500000"
          description: Total Risk Amount
        minimumBenefitAmount:
          type: string
          example: "10000"
          description: Minimum Benefit Amount
        maximumBenefitAmount:
          type: string
          example: "20000"
          description: Maximum Benefit Amount
        exerciseDate:
          type: string
          example: 2023-06-01
          description: Exercise Date
        band:
          type: string
          example: Band A
          description: Band
        grossDeathBenefitAmount:
          type: string
          example: "45000"
          description: Gross Death Benefit Amount
        lowDeathBenefit:
          type: string
          example: "40000"
          description: Low Death Benefit
        maximumNumberFaceChangesPerYear:
          type: string
          example: "4"
          description: Maximum Number of Face Changes Per Year
        minimumAmountDecrease:
          type: string
          example: "500"
          description: Minimum Amount Decrease
        maximumAmountDecrease:
          type: string
          example: "2000"
          description: Maximum Amount Decrease
        maximumAgeDecreaseAmount:
          type: string
          example: "70"
          description: Maximum Age Decrease Amount
        maximumNumberCoverageDecreasesPerYear:
          type: string
          example: "2"
          description: Maximum Number of Coverage Decreases Per Year
        minimumAmountIncrease:
          type: string
          example: "1000"
          description: Minimum Amount Increase
        maximumAmountIncrease:
          type: string
          example: "3000"
          description: Maximum Amount Increase
        maximumAgeIncreaseAmount:
          type: string
          example: "80"
          description: Maximum Age Increase Amount
        maximumNumberCoverageIncreasesPerYear:
          type: string
          example: "3"
          description: Maximum Number of Coverage Increases Per Year
        netDeathBenefitAmount:
          type: string
          example: "42000"
          description: Net Death Benefit Amount
        deathBenefitRemaining:
          type: string
          example: "20000"
          description: Death Benefit Remaining
      required:
        - totalRiskAmount
        - minimumBenefitAmount
        - maximumBenefitAmount
        - exerciseDate
        - band
        - grossDeathBenefitAmount
        - lowDeathBenefit
        - maximumNumberFaceChangesPerYear
        - minimumAmountDecrease
        - maximumAmountDecrease
        - maximumAgeDecreaseAmount
        - maximumNumberCoverageDecreasesPerYear
        - minimumAmountIncrease
        - maximumAmountIncrease
        - maximumAgeIncreaseAmount
        - maximumNumberCoverageIncreasesPerYear
        - netDeathBenefitAmount
        - deathBenefitRemaining
    CoveragesAttributes:
      type: object
      properties:
        coverageId:
          type: string
          example: COV123
          description: Coverage ID
        indicatorCode:
          type: string
          example: IND123
          description: Indicator Code
        productCode:
          type: string
          example: PROD456
          description: Product Code
        planName:
          type: string
          example: Platinum Plan
          description: The Product Name refers to the specific life insurance or annuity
            product selected by the contract owner at the time of policy
            issuance. It identifies the type of coverage, policy structure, and
            key features associated with the contract
        selectionIndicator:
          type: string
          example: Y
          enum:
            - Y
            - N
          description: Selection Indicator
        currentAmount:
          type: string
          example: "20000"
          description: Current Amount
        priorCoverageAmount:
          type: string
          example: "18000"
          description: Prior Coverage Amount
        minimumBenefitAmount:
          type: string
          example: "15000"
          description: Minimum Benefit Amount
        maximumBenefitAmount:
          type: string
          example: "25000"
          description: Maximum Benefit Amount
        grossDeathBenefitAmount:
          type: string
          example: "5000"
          description: Gross Death Benefit Amount
        lowDeathBenefit:
          type: string
          example: "2000"
          description: Low Death Benefit
        coverageChangeAmount:
          type: string
          example: "3000"
          description: Coverage Change Amount
        effectiveDate:
          type: string
          example: 2022-01-01
          description: Effective Date
        coverageChangeEffectiveDate:
          type: string
          example: 2021-12-01
          description: Coverage Change Effective Date
        terminationDate:
          type: string
          example: 2022-12-31
          description: Termination Date
        currentNumberOfUnits:
          type: string
          example: "100"
          description: Current Number of Units
        valuePerUnit:
          type: string
          example: "50"
          description: Value Per Unit
        premiumModalFactor:
          type: string
          example: "1.5"
          description: Premium Modal Factor
        exerciseDate:
          type: string
          example: 2023-03-15
          description: Exercise Date
        lifeCoverageStatus:
          type: string
          example: Active
          description: Life Coverage Status
        claimStatus:
          type: string
          example: Pending
          description: The Claim Status refers to the current stage of a life insurance
            claim, indicating whether the claim has been processed, approved,
            denied, or is still under review. This status helps policyholders,
            beneficiaries, and insurers track the progress of a claim from
            submission to payout
        nextEvaluationDate:
          type: string
          example: 2023-12-01
          description: Next Evaluation Date
        paymentMode:
          type: string
          example: Monthly
          description: Payment Mode
        maximumBenefitPercent:
          type: string
          example: 80%
          description: Maximum Benefit Percent
        maximumPayPeriod:
          type: string
          example: "365"
          description: Maximum Pay Period
        guidelineSinglePremium:
          type: string
          example: "5000"
          description: The Guideline Single Premium (GSP) refers to the maximum single
            premium payment that can be made into a life insurance policy
            without violating the IRS`s Guideline Premium Test (GPT). It is used
            to ensure that the policy qualifies as life insurance and maintains
            its tax-advantaged status
        guidelineAnnualPremium:
          type: string
          example: "2000"
          description: Guideline Annual Premium
        sevenPayPremium:
          type: string
          example: "700"
          description: The 7-Pay Premium refers to the maximum allowable premium that can
            be paid into a life insurance policy during the first seven years
            without triggering Modified Endowment Contract (MEC) status. It
            ensures that the policy remains a tax-advantaged life insurance
            contract rather than an investment vehicle
        coverageReferenceId:
          type: string
          example: REF456
          description: Coverage Reference ID
        tier1MaximumBenefitAmount:
          type: string
          example: "10000"
          description: Tier 1 Maximum Benefit Amount
        tier1MaximumBenefitPercent:
          type: string
          example: 60%
          description: Tier 1 Maximum Benefit Percent
        tier2MaximumBenefitAmount:
          type: string
          example: "15000"
          description: Tier 2 Maximum Benefit Amount
        tier2MaximumBenefitPercent:
          type: string
          example: 70%
          description: Tier 2 Maximum Benefit Percent
      required:
        - coverageId
        - indicatorCode
        - productCode
        - planName
        - currentAmount
        - priorCoverageAmount
        - minimumBenefitAmount
        - maximumBenefitAmount
        - grossDeathBenefitAmount
        - lowDeathBenefit
        - coverageChangeAmount
        - effectiveDate
        - coverageChangeEffectiveDate
        - terminationDate
        - currentNumberOfUnits
        - valuePerUnit
        - premiumModalFactor
        - exerciseDate
        - lifeCoverageStatus
        - claimStatus
        - nextEvaluationDate
        - paymentMode
        - maximumBenefitPercent
        - maximumPayPeriod
        - guidelineSinglePremium
        - guidelineAnnualPremium
        - sevenPayPremium
        - coverageReferenceId
        - tier1MaximumBenefitAmount
        - tier1MaximumBenefitPercent
        - tier2MaximumBenefitAmount
        - tier2MaximumBenefitPercent
    Participant:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/ParticipantAttributes"
        flatExtra:
          type: array
          items:
            $ref: "#/components/schemas/FlatExtra"
      required:
        - attributes
        - flatExtra
    Fee:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/FeeAttributes"
      required:
        - attributes
    PartyType:
      type: string
      enum:
        - INDIVIDUAL
        - ORGANIZATION
        - TRUST
        - INSURED
    AgentType:
      type: string
      enum:
        - ACCOUNTMANAGER
        - ADDITIONALCOMPENSATIONRECIPIENT
        - ADVANCEDUNDERWRITINGCONSULTANT
        - AGENCYORGENERALAGENT
        - AGENCYDIRECTOR
        - AGENCYSUPERINTENDENT
        - AGENCYVICEPRESIDENT
        - AGENTORPRODUCER
        - ASSISTANT
        - ASSISTANTGROUPUNDERWRITER
        - ASSISTANTMANAGER
        - ASSISTANTVICEPRESIDENT
        - ASSISTANTVPCOMPLIANCE
        - ASSOCIATEAGENCYMANAGER
        - ASSOCIATEFINANCIALPLANNER
        - ASSOCIATEOFFICERMANAGER
        - ASSOCIATESALEDEVELOPMENTMANAGERINTRAINING
        - ASSOCIATESALESDEVELOPMENTMANAGER
        - BANK
        - BANKEMPLOYEE
        - BRANCHMANAGER
        - BROKER
        - BROKERORDEALER
        - BROKERAGEDIRECTOR
        - BROKERAGEGENERALAGENT
        - CERTIFIEDFINANCIALPLANNER
        - DISTRIBUTOR
        - FINANCIALCONSULTANT
        - FINANCIALPLANNER
        - MANAGINGDIRECTOR
        - MANAGINGGENERALAGENT
        - OFFICEMANAGER
        - OTHER
        - PLATFORMREP
        - QUALIFYINGOFFICER
        - REGISTEREDFINANCIALPLANNER
        - REGISTEREDREPRESENTATIVE
        - SALESDEVELOPMENTMANAGER
        - SECONDLINEMANAGER
        - SENIORADMINISTRATIVECONSULTANT
        - SENIORADVANCEDUNDERWRITINGCONSULTANT
        - SENIORFINANCIALPLANNER
        - SENIORGROUPACCOUNTEXECUTIVE
        - SENIORGROUPSALESREPRESENTATIVE
        - SENIORPARTNER
        - SENIORSALESDEVELOPMENTMANAGER
        - SENIORVICEPRESIDENT
        - SERVICINGBROKER
        - SERVICINGONLYAGENT
        - SOLICITOR
        - TEAM
        - UNKNOWN
    Prefix:
      type: string
      enum:
        - MR
        - MS
        - MISS
        - MRS
        - DR
    Gender:
      type: string
      enum:
        - MALE
        - FEMALE
        - UNISEX
    Country:
      type: string
      enum:
        - US
        - CA
        - RU
        - EG
        - ZA
        - GR
        - NL
        - BE
        - FR
        - ES
        - HU
        - IT
        - RO
        - CH
        - AT
        - GB
        - DK
        - SE
        - NO
        - PL
        - DE
        - PE
        - MX
        - CU
        - AR
        - BR
        - CL
        - CO
        - VE
        - MY
        - AU
        - ID
        - PH
        - NZ
        - SG
        - TH
        - JP
        - VN
        - CN
        - TR
        - IN
        - PK
        - AF
        - LK
        - IR
        - MA
        - DZ
        - TN
        - LY
        - GM
        - SN
        - MR
        - ML
        - GN
        - BF
        - NE
        - TG
        - BJ
        - MU
        - LR
        - SL
        - GH
        - NG
        - CF
        - TD
        - CM
        - CV
        - ST
        - GQ
        - GA
        - BS
        - AO
        - BB
        - AX
        - SD
        - RW
        - ET
        - SO
        - DJ
        - KE
        - TZ
        - UG
        - BI
        - MZ
        - ZM
        - MG
        - RE
        - ZW
        - NA
        - MW
        - LS
        - BW
        - AG
        - KM
        - GW
        - CD
        - VG
        - SH
        - AW
        - FO
        - GL
        - KY
        - GI
        - PT
        - LU
        - IE
        - IS
        - AL
        - MT
        - CY
        - FI
        - BG
        - GG
        - LT
        - LV
        - EE
        - MD
        - AM
        - BY
        - AD
        - SM
        - UA
        - HR
        - SI
        - BA
        - MK
        - XK
        - CZ
        - SK
        - LI
        - BM
        - GD
        - FK
        - BZ
        - GT
        - SV
        - HN
        - NI
        - CR
        - PM
        - HT
        - PR
        - VI
        - GS
        - SX
        - BQ
        - GP
        - BO
        - GY
        - EC
        - GF
        - PY
        - MQ
        - SR
        - UY
        - AN
        - TC
        - BL
        - MF
        - MS
        - GU
        - AQ
        - BN
        - NR
        - PG
        - TO
        - SB
        - VU
        - FJ
        - WF
        - CK
        - NU
        - AS
        - KI
        - NC
        - TV
        - PF
        - MP
        - PW
        - MH
        - FM
        - SS
        - LC
        - DM
        - VC
        - DO
        - HK
        - MO
        - KH
        - LA
        - TT
        - KN
        - JM
        - BD
        - TW
        - MM
        - KR
        - KP
        - LB
        - JO
        - SY
        - IQ
        - KW
        - SA
        - OM
        - AE
        - IL
        - BH
        - QA
        - BT
        - NP
        - TJ
        - TM
        - AZ
        - GE
        - UZ
        - AI
        - PA
        - CI
        - ER
        - KZ
        - KG
        - CC
        - MN
        - BV
        - SC
        - IO
        - WS
        - TL
        - TF
        - YT
        - PN
        - SJ
        - TK
        - UM
        - EH
        - MV
        - CX
        - NF
        - CG
        - MC
        - VA
        - SZ
        - PS
        - JE
        - IM
        - RS
        - ME
        - HM
        - CW
        - CS
        - YE
        - YD
        - SU
        - YU
        - ZR
    State:
      type: string
      enum:
        - AA
        - AE
        - AL
        - AP
        - AK
        - AZ
        - AR
        - AS
        - CA
        - CO
        - CT
        - DC
        - DE
        - FL
        - GA
        - GU
        - HI
        - ID
        - IL
        - IN
        - IA
        - KS
        - KY
        - LA
        - ME
        - MD
        - MA
        - MI
        - MN
        - MS
        - MO
        - MP
        - MT
        - NE
        - NV
        - NH
        - NJ
        - NM
        - NY
        - NC
        - ND
        - OH
        - OK
        - OR
        - PA
        - PR
        - RI
        - SC
        - SD
        - TN
        - TX
        - UM
        - UT
        - VT
        - VA
        - VI
        - WA
        - WV
        - WI
        - WY
    EntityType:
      type: string
      enum:
        - SOLEPROPRIETORSHIP
        - GENERALPARTNERSHIP
        - LIMITEDPARTNERSHIP
        - CCORPORATION
        - SCORPORATION
        - LIMITEDLIABILITYCOMPANY
        - CHARITABLEORGANIZATION
        - ESTATE
        - TRUST
        - CORPORATION
        - UNKNOWN
    TrustType:
      type: string
      enum:
        - INDIVIDUALTRUST
        - CORPORATETRUST
        - TESTAMENTARYTRUST
        - INTERVIVOSTRUST
        - GRANTORTRUST
        - PETTRUST
    PreferredCommunicationType:
      type: string
      enum:
        - EMAIL
        - REGULARMAIL
        - PHONE
        - FAX
        - TEXT
        - NOPREFERENCESPECIFIED
        - POSTAL
        - OTHER
    FormerName:
      type: object
      properties:
        firstName:
          type: string
          description: Former first name of the party/trustee
          example: Karen
        middleName:
          type: string
          description: Former middle name of the party/trustee
          example: Anne
        lastName:
          type: string
          description: Former last name of the party/trustee
          example: Bates
        prefix:
          $ref: "#/components/schemas/Prefix"
        suffix:
          type: string
          enum:
            - JR
            - SN
            - SR
            - I
            - II
            - III
            - IV
            - V
            - VI
            - VII
          description: The suffix of the party name
        fullName:
          type: string
          description: Former full name of the party/Former legal name of the
            Trust/Organization
          example: Karen Anne Bates
        abbreviatedName:
          type: string
          description: The former shortened/abbreviated version of the organization`s name
            that is unique to the organization
          example: TBD
        doingBusinessAs:
          type: string
          description: The former name the organization is commonly known as
          example: TBD
    Identification:
      type: object
      properties:
        identificationId:
          type: string
          description: A unique system-generated ID for tracking individual identifier
            records
          example: "1"
        startDate:
          type: string
          description: The date from which the party`s identifier is considered valid.
            Date (with pattern "yyyy-mm-dd")
          example: 2023-01-01
          format: date
        endDate:
          type: string
          description: The date after which the party`s identifier is no longer valid.
            Date (with pattern "yyyy-mm-dd")
          example: 2023-01-01
          format: date
        identificationType:
          type: string
          enum:
            - PASSPORT
            - STATEPHOTOID
            - DRIVERLICENSENUMBER
            - SSN
            - TIN
            - EXTERNAL
            - EIN
            - NATIONALPRODUCERNUMBER
            - OTHER
          description: Specifies the kind of identifier provided for a party. It describes
            what type of document or number is being used to recognize or verify
            the party's identity
          nullable: true
        identificationKey:
          type: string
          example: 666-50-8548
          description: A unique code (such as ECN, Life Party ID, or Series Code) used to
            uniquely identify and manage individuals, entities, or product
            groupings within life insurance and annuity systems
        identificationValue:
          type: string
          example: 666-50-8548
          description: The unique number of the selected identification type
          nullable: true
        identificationDescription:
          type: string
          example: Employee Control Number
          description: A brief description of the identifier.
        issueState:
          type: string
          enum:
            - AA
            - AE
            - AL
            - AP
            - AK
            - AZ
            - AR
            - AS
            - CA
            - CO
            - CT
            - DC
            - DE
            - FL
            - GA
            - GU
            - HI
            - ID
            - IL
            - IN
            - IA
            - KS
            - KY
            - LA
            - ME
            - MD
            - MA
            - MI
            - MN
            - MS
            - MO
            - MP
            - MT
            - NE
            - NV
            - NH
            - NJ
            - NM
            - NY
            - NC
            - ND
            - OH
            - OK
            - OR
            - PA
            - PR
            - RI
            - SC
            - SD
            - TN
            - TX
            - UM
            - UT
            - VT
            - VA
            - VI
            - WA
            - WV
            - WI
            - WY
          nullable: true
        issueCountry:
          type: string
          enum:
            - US
            - CA
            - RU
            - EG
            - ZA
            - GR
            - NL
            - BE
            - FR
            - ES
            - HU
            - IT
            - RO
            - CH
            - AT
            - GB
            - DK
            - SE
            - NO
            - PL
            - DE
            - PE
            - MX
            - CU
            - AR
            - BR
            - CL
            - CO
            - VE
            - MY
            - AU
            - ID
            - PH
            - NZ
            - SG
            - TH
            - JP
            - VN
            - CN
            - TR
            - IN
            - PK
            - AF
            - LK
            - IR
            - MA
            - DZ
            - TN
            - LY
            - GM
            - SN
            - MR
            - ML
            - GN
            - BF
            - NE
            - TG
            - BJ
            - MU
            - LR
            - SL
            - GH
            - NG
            - CF
            - TD
            - CM
            - CV
            - ST
            - GQ
            - GA
            - BS
            - AO
            - BB
            - AX
            - SD
            - RW
            - ET
            - SO
            - DJ
            - KE
            - TZ
            - UG
            - BI
            - MZ
            - ZM
            - MG
            - RE
            - ZW
            - NA
            - MW
            - LS
            - BW
            - AG
            - KM
            - GW
            - CD
            - VG
            - SH
            - AW
            - FO
            - GL
            - KY
            - GI
            - PT
            - LU
            - IE
            - IS
            - AL
            - MT
            - CY
            - FI
            - BG
            - GG
            - LT
            - LV
            - EE
            - MD
            - AM
            - BY
            - AD
            - SM
            - UA
            - HR
            - SI
            - BA
            - MK
            - XK
            - CZ
            - SK
            - LI
            - BM
            - GD
            - FK
            - BZ
            - GT
            - SV
            - HN
            - NI
            - CR
            - PM
            - HT
            - PR
            - VI
            - GS
            - SX
            - BQ
            - GP
            - BO
            - GY
            - EC
            - GF
            - PY
            - MQ
            - SR
            - UY
            - AN
            - TC
            - BL
            - MF
            - MS
            - GU
            - AQ
            - BN
            - NR
            - PG
            - TO
            - SB
            - VU
            - FJ
            - WF
            - CK
            - NU
            - AS
            - KI
            - NC
            - TV
            - PF
            - MP
            - PW
            - MH
            - FM
            - SS
            - LC
            - DM
            - VC
            - DO
            - HK
            - MO
            - KH
            - LA
            - TT
            - KN
            - JM
            - BD
            - TW
            - MM
            - KR
            - KP
            - LB
            - JO
            - SY
            - IQ
            - KW
            - SA
            - OM
            - AE
            - IL
            - BH
            - QA
            - BT
            - NP
            - TJ
            - TM
            - AZ
            - GE
            - UZ
            - AI
            - PA
            - CI
            - ER
            - KZ
            - KG
            - CC
            - MN
            - BV
            - SC
            - IO
            - WS
            - TL
            - TF
            - YT
            - PN
            - SJ
            - TK
            - UM
            - EH
            - MV
            - CX
            - NF
            - CG
            - MC
            - VA
            - SZ
            - PS
            - JE
            - IM
            - RS
            - ME
            - HM
            - CW
            - CS
            - YE
            - YD
            - SU
            - YU
            - ZR
          nullable: true
    TaxWithholding:
      type: object
      properties:
        appliesToPartyId:
          type: string
          description: Party ID at Policy Level that comes in from External source (for
            Everly it will be Acord 103). This ties to the Party Type this tax
            withholding corresponds to.
          example: Party_PI_1
        taxWithholdingType:
          $ref: "#/components/schemas/TaxWithholdingType"
        effectiveDate:
          type: string
          format: date
          example: 2024-01-01
          description: Date on which the tax withholding instruction becomes effective for
            the party.
        endDate:
          type: string
          format: date
          example: 2024-12-31
          description: Date on which the tax withholding instruction is no longer
            applicable for the party.
        taxRateToUse:
          $ref: "#/components/schemas/TaxRateToUse"
        filingStatus:
          $ref: "#/components/schemas/FilingStatus"
        dollar:
          type: number
          description: The dollar amount of tax withheld
          format: double
          example: 0
        percentage:
          type: number
          description: The percentage amount of tax withheld
          format: double
          example: 0
        exemptions:
          type: number
          description: The total exemptions claimed for tax purposes
          format: int32
          example: 0
        taxJurisdiction:
          type: string
          description: This is not input field i.e. user does not select or set this
            value. For Tax Withholding Type = State , DAML will set this value
            using PartyLevelAddressCountry_PartyLevelAddressState referring to
            ACCORD standard. For Tax Withholding Type = Federal , DAML will set
            this value using PartylevelAddressCountry using ACCORD standard.For
            FedeFor MVP, NRA jurisdictions are out of scope
          example: USA_WY
        contribution:
          $ref: "#/components/schemas/Contribution"
        taxFormType:
          $ref: "#/components/schemas/TaxFormType"
        w4p:
          $ref: "#/components/schemas/W4P"
    PartyStatus:
      type: string
      enum:
        - APPROVED
        - NOTAPPROVED
        - PROCESSED
    DelegatedExecutionAuthorityType:
      type: string
      enum:
        - INDEPENDENT
        - TOGETHER
        - MAJORITY
    PolicyPartyRoles:
      type: object
      properties:
        partyRoleId:
          type: string
          example: "8"
          format: int32
          description: The Party Role ID is a unique identifier assigned to a specific
            role that a party (individual or entity) plays within an insurance
            or annuity contract. It serves to distinctly track and manage the
            relationship between the party and the contract, especially when a
            party may have multiple roles across different policies or within
            the same policy
        partyRole:
          $ref: "#/components/schemas/PartyRole"
        partyId:
          type: string
          example: Party_PI_1
          description: Party ID is a unique identifier assigned to a party (individual or
            entity) involved in an insurance or annuity contract. This
            identifier helps ensure accurate data exchange and tracking across
            insurance transactions
        relationshipToInsured:
          type: string
          enum:
            - TRUSTEE
            - TRUSTEEOFMINOR
            - TRUSTEEOFINCOMPETENT
            - POWEROFATTORNEY
            - CONTROLLINGPERSONOFENTITY
            - BROTHER
            - CHILD
            - DAUGHTER
            - DOMESTICPARTNER
            - EXECUTORS
            - FATHER
            - FIANCE
            - GRANDCHILD
            - LIFEPARTNER
            - MOTHER
            - SISTER
            - SON
            - SPOUSE
            - STEPFATHER
            - STEPMOTHER
            - SELF
            - LEGALGUARDIAN
            - BUSINESS
            - BUSINESSASSOCIATE
            - PARTNER
            - EMPLOYER
            - FORMERSPOUSE
            - GRANDPARENT
            - PARENT
            - OWNER
            - SIBLING
            - STEPCHILD
            - STEPARENT
            - OTHER
            - AUNT
            - GRANDFATHER
            - GRANDMOTHER
            - HUSBAND
            - WIFE
            - UNCLE
            - NIECE
            - NEPHEW
            - ESTATE
            - TRUST
            - GRANDSON
            - GRANDDAUGHTER
            - NONSPOUSE
            - CHILDRENEQUALLY
            - CHILDRENPERSTIRPES
            - PERSTIRPES
            - SURVIVINGSPOUS
            - COMORTGAGER
            - DEPENDENT
          description: The type of relationship to the party
        relationshipToParty:
          type: string
          enum:
            - TRUSTEE
            - TRUSTEEOFMINOR
            - TRUSTEEOFINCOMPETENT
            - POWEROFATTORNEY
            - CONTROLLINGPERSONOFENTITY
            - BROTHER
            - CHILD
            - DAUGHTER
            - DOMESTICPARTNER
            - EXECUTORS
            - FATHER
            - FIANCE
            - GRANDCHILD
            - LIFEPARTNER
            - MOTHER
            - SISTER
            - SON
            - SPOUSE
            - STEPFATHER
            - STEPMOTHER
            - SELF
            - LEGALGUARDIAN
            - BUSINESS
            - BUSINESSASSOCIATE
            - PARTNER
            - EMPLOYER
            - FORMERSPOUSE
            - GRANDPARENT
            - PARENT
            - OWNER
            - SIBLING
            - STEPCHILD
            - STEPARENT
            - OTHER
            - AUNT
            - GRANDFATHER
            - GRANDMOTHER
            - HUSBAND
            - WIFE
            - UNCLE
            - NIECE
            - NEPHEW
            - ESTATE
            - TRUST
            - GRANDSON
            - GRANDDAUGHTER
            - NONSPOUSE
            - CHILDRENEQUALLY
            - CHILDRENPERSTIRPES
            - PERSTIRPES
            - SURVIVINGSPOUS
            - COMORTGAGER
            - DEPENDENT
          description: The type of relationship to the party
        startDate:
          type: string
          format: date
          example: 2023-01-01
          description: Date the Party was added to the Policy
        endDate:
          type: string
          format: date
          example: 2023-01-01
          description: Date the Party was Terminated from the Policy
        preferredCommunicationType:
          $ref: "#/components/schemas/CommunicationType"
        preferredAddressId:
          type: string
          example: "1"
          description: Deprecated - kept for backward compatibility. Use
            preferredAddressId under party section. The Preferred Address ID
            refers to the unique identifier of the address designated as the
            primary or preferred address for a given party when multiple
            addresses are associated with that individual or entity. This
            ensures consistent use of the correct address for communication,
            correspondence, and recordkeeping
        preferredEmailId:
          type: string
          example: "1"
          description: Deprecated - kept for backward compatibility. Use preferredEmailId
            under party section. The Preferred Email ID refers to the unique
            identifier of the email address designated as the primary or
            preferred email contact for an individual or entity when multiple
            email addresses are on file
        preferredPhoneId:
          type: string
          example: "1"
          description: Deprecated - kept for backward compatibility. Use preferredPhoneId
            under party section. The Preferred Phone ID refers to the unique
            identifier of the phone number designated as the primary contact
            number for a given individual or entity when multiple phone numbers
            are associated with the same party
        isAddressSameAsOwner:
          type: boolean
          description: Boolean 0 = No 1 = Yes to denote if the email is the preferred
        lastContactDate:
          type: string
          example: 2023-01-01
          description: Last Contact Date refers to the most recent date on which there was
            a direct or system-recorded interaction with a party (individual or
            entity) associated with a policy or contract. This party may be a
            policyholder, insured, beneficiary, payor, agent, or any other role
            relevant to life and annuity products.
          format: date
        beneficiaryShareMethod:
          type: string
          enum:
            - PERSTIRPESDISTRIBUTION
          description: Roles that are essential in structuring life insurance and annuity
            contracts to meet the financial goals of policyholders and
            beneficiaries.
        collateralAmount:
          type: number
          format: double
          description: The Collateral Amount of an Assignee refers to the portion of a
            life insurance policy's value or benefit that is pledged as
            collateral to a third party (the assignee) under a collateral
            assignment agreement. This is commonly used when a policyholder uses
            a life insurance policy as security for a loan or other financial
            obligation.
          example: 1023.21
        powerOfAttorneyAccessLevelType:
          $ref: "#/components/schemas/PowerOfAttorneyAccessLevelType"
        partyPercentage:
          type: number
          format: double
          description: Party Role Percentage refers to the proportion of ownership,
            benefits, or responsibility assigned to a party within an insurance
            or annuity contract. It is used to distribute policy ownership,
            benefit payouts, commission sharing, or annuity payments among
            multiple parties.
          example: 1023.21
    Address:
      type: object
      properties:
        startDate:
          type: string
          description: The start date of the party address. Date (with pattern "yyyy-mm-dd")
          example: 2023-01-01
        endDate:
          type: string
          description: The end date of the party address. Date (with pattern "yyyy-mm-dd")
          example: 2023-01-01
        addressType:
          $ref: "#/components/schemas/AddressType"
        addressLine1:
          type: string
          description: Address Line 1 of the party address
          example: 1112 Pickle Street
        addressLine2:
          type: string
          description: Address Line 2 of the party address
          example: South Jersey
        addressLine3:
          type: string
          description: Address Line 3 of the party address
          example: 1234 Post box
        city:
          type: string
          description: City of the party address
          example: Garden City
        state:
          $ref: "#/components/schemas/State"
        zipCode:
          type: string
          description: Zip code of the party address
          example: "67846"
        zipCodeExtension:
          type: string
          description: Unit of the party address
          example: "23"
        country:
          $ref: "#/components/schemas/Country"
        isPreferred:
          type: boolean
          description: TBD
        addressId:
          type: string
          description: The record Id stored internally in zahara for each address
          example: "1"
        preferredAddress:
          type: boolean
          description: TBD
          example: false
    Phone:
      type: object
      properties:
        startDate:
          type: string
          description: The start date of when the party can be reached via the phone.Date
            (with pattern "yyyy-mm-dd")
          example: 2023-01-01
          format: date
        endDate:
          type: string
          description: The end date of when the party can be reached via the phone. Date
            (with pattern "yyyy-mm-dd")
          example: 2023-01-01
          format: date
        phoneType:
          $ref: "#/components/schemas/PhoneType"
        countryCode:
          type: string
          description: Country Code of the phone
          example: "9"
        areaCode:
          type: string
          description: Area code of the phone
          example: "973"
        dialNumber:
          type: string
          description: Dial number of the phone
          example: "765789"
        extension:
          type: string
          description: Dial in Extension for phone
          example: "null"
        bestTime:
          type: string
          description: The best time to contact the party via phone
          example: "null"
        timezone:
          type: string
          description: Timezone for the entered phone details
          example: "null"
        isPreferred:
          type: boolean
          description: The Preferred Phone Indicator is a boolean flag or attribute
            assigned to each phone number associated with a party, used to
            identify which phone number should be used as the primary contact
            number for communication
        phoneId:
          type: string
          description: The record Id stored internally in zahara for each phone
          example: "1"
    Email:
      type: object
      properties:
        startDate:
          type: string
          description: The start date of when the party can be reached via email.Date
            (with pattern "yyyy-mm-dd")
          example: 2023-01-01
          format: date
        endDate:
          type: string
          description: The end date of when the party can be reached via email. Date (with
            pattern "yyyy-mm-dd")
          example: 2023-01-01
          format: date
        emailType:
          $ref: "#/components/schemas/EmailType"
        emailAddress:
          type: string
          description: Email address of the party
          example: user@example.com
        isPreferred:
          type: boolean
          description: The Preferred Email Indicator is a boolean flag associated with
            each email address linked to a party, used to designate which email
            address should be treated as the primary contact for electronic
            communications
        emailId:
          type: string
          description: The record Id stored internally in zahara for each email
          example: "1"
    BankAccount:
      type: object
      properties:
        startDate:
          type: string
          description: Date the Bank Account of the Party was added to the Policy. Date
            (with pattern "yyyy-mm-dd")
          example: 2023-01-01
          format: date
        endDate:
          type: string
          description: Date the Bank Account of the Party was terminated from the Policy.
            Date (with pattern "yyyy-mm-dd")
          example: 2023-01-01
          format: date
        nameOnAccount:
          type: string
          description: Name of the Party on Bank Account
          example: abcdqwe
        accountStatus:
          $ref: "#/components/schemas/AccountStatus"
        accountType:
          $ref: "#/components/schemas/AccountType"
        bankAccountPurpose:
          $ref: "#/components/schemas/BankAccountPurpose"
        accountNumber:
          type: string
          description: The 7+ digit checking or savings account number
          example: "34567777745678"
        routingNumber:
          type: string
          description: The 9-digit routing transit number for the bank account/branch
          example: "123456789"
        internationalBankAccountNumber:
          type: string
          description: The bank account number for an international bank account (this
            field does not have check-digit validation)
          example: ibanNumber_66
        branchName:
          type: string
          description: The name of the bank (such as Chase Manhattan)
          example: branch_66
        branchPhoneNumber:
          type: string
          description: Phone Number of the Bank Branch
          example: "7766667777"
        branchAddress:
          $ref: "#/components/schemas/BranchAddress"
        bankId:
          type: string
          description: In the context of ACORD standards (the global data standards body
            for insurance), Bank ID refers to a unique identifier used to
            specify a financial institution involved in a disbursement, premium
            collection, or electronic funds transfer (EFT). It is critical for
            ensuring correct routing of payments or deposits between insurers,
            policyholders, beneficiaries, and third parties
          example: "1"
        appliesToPartyId:
          type: string
          example: Party_PI_1
          description: This unique id ties to the Party Role that the bank details
            correspondes to.
    DeathDetail:
      type: object
      properties:
        dateOfDeath:
          type: string
          format: date
          description: The date on which the insured/annuitant died
          example: 2023-01-01
        causeOfDeath:
          $ref: "#/components/schemas/CauseOfDeath"
        deathNotificationDate:
          type: string
          format: date
          description: The date on which carrier was notified of the death
          example: 2023-01-01
        dateOfDueProof:
          type: string
          format: date
          description: Date the appropriate death paperwork was received (example - death
            certificate receive date)
          example: 2023-01-01
    ImpairmentDetails:
      type: object
      properties:
        disabled:
          type: boolean
          description: Any disability details of the insured
        disabilityStartDate:
          type: string
          format: date
          description: The disability start date of the insured
          example: 2023-01-01
    Insured:
      type: object
      properties:
        existingLifeInsurance:
          type: boolean
          description: Any existing life insurance details of the insured
        existingLifeInsuranceAmount:
          type: number
          format: double
          example: 0
          description: The existing life insurance amount of the insured
        replaceLifeInsurance:
          type: boolean
          description: Any life insurance replacement details of the insured
        pendingOrPlanToBuyAdditional:
          type: boolean
          description: Any details of pending or plan to buy additional life insurance of
            the insured
        isDependent:
          type: boolean
          description: Any dependent details of the insured
        employed:
          type: boolean
          description: Any employment details of the insured
        employmentStatus:
          $ref: "#/components/schemas/EmploymentStatus"
        occupation:
          type: string
          description: Occupation of the insured
          example: Salesman
        householdIncome:
          type: number
          format: double
          description: Household income of the insured
          example: 50000
        deathDetails:
          $ref: "#/components/schemas/DeathDetail"
        impairmentDetails:
          $ref: "#/components/schemas/ImpairmentDetails"
    PolicyFeeAttributes:
      type: object
      properties:
        feeId:
          type: string
          example: FEE123
          description: Fee ID
        feeType:
          type: string
          example: Admin Fee
          description: Fee Type
        startDate:
          type: string
          example: 2022-01-01
          description: Start Date
        effectiveRate:
          type: string
          example: 5%
          enum:
            - 5%
            - 10%
            - 15%
          description: Effective Rate
        feeAmount:
          type: string
          example: "50"
          description: Fee Amount
        netAmountAtRisk:
          type: string
          example: "100"
          description: The Net Amount at Risk (NAR) is the difference between the policy’s
            total death benefit and the policy’s account value (cash value). It
            represents the portion of the death benefit that the insurance
            company is at risk of paying out beyond the policyholder’s
            accumulated account value
      required:
        - feeId
        - feeType
        - startDate
        - feeAmount
        - netAmountAtRisk
    FeaturesAttributes:
      type: object
      properties:
        freeLookInvestDuration:
          type: string
          example: "12"
          description: Free Look-Invest Duration
        freeLookExpirationDate:
          type: string
          example: 2022-06-30
          description: Free Look-Invest Expiration Date
      required:
        - freeLookInvestDuration
        - freeLookExpirationDate
    LapseAssessment:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/LapseAssessmentAttributes"
      required:
        - attributes
    LapseProtection:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/LapseProtectionAttributes"
      required:
        - attributes
    Reinstatement:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/ReinstatementAttributes"
      required:
        - attributes
    FundAllocationsAttributes:
      type: object
      properties:
        productFullName:
          type: string
          example: Product A
          description: Product Full Name
        fundId:
          type: string
          example: FUND123
          description: Fund ID
        allocationPercent:
          type: string
          example: 20%
          description: Allocation Percent
        startDate:
          type: string
          example: 2022-01-01
          description: Start Date
        endDate:
          type: string
          example: 2022-12-31
          description: End Date
      required:
        - productFullName
        - fundId
        - allocationPercent
        - startDate
        - endDate
    FundAttributes:
      type: object
      properties:
        fundId:
          type: string
          example: FUND456
          description: Fund ID
        accountType:
          type: string
          example: Savings Account
          description: Account Type
        fundFullName:
          type: string
          example: Fund XYZ
          description: Fund Full Name
        ledgerCode:
          type: string
          example: ABC123
          description: Ledger Code
        totalValue:
          type: string
          example: "5000"
          description: Total Value
      required:
        - fundId
        - accountType
        - fundFullName
        - ledgerCode
        - totalValue
    Segment:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/SegmentAttributes"
      required:
        - attributes
    LoanType:
      type: string
      enum:
        - PREFERRED
        - NONPREFERREDSTANDARDLOAN
        - INDEXLOAN
    LoanInterestType:
      type: string
      enum:
        - FIXED
        - INDEXED
        - VARIABLE
        - ADJUSTABLE
    ArrangementsAttributes:
      type: object
      properties:
        arrangementId:
          type: string
        arrangementType:
          type: string
        arrangementMode:
          type: string
        paymentForm:
          type: string
        numberOfModalOccurences:
          type: string
        requestedAmount:
          type: string
        appliedAmount:
          type: string
        calculatedAmount:
          type: string
        taxableGainAmount:
          type: string
        loanType:
          type: string
        loanInterestType:
          type: string
        loanPaymentType:
          type: string
        disbursementType:
          type: string
        sourceTransferAmountType:
          type: string
        requestedPercent:
          type: string
        requestedDate:
          type: string
        effectiveDate:
          type: string
        totalChargeAmount:
          type: string
        arrStatus:
          type: string
        startDate:
          type: string
        reason:
          type: string
        nextActivityDate:
          type: string
        lastActivityDate:
          type: string
        endDate:
          type: string
        valueAdjustmentFundId:
          type: string
        valueAdjustmentCoverageId:
          type: string
        valueAdjustmentPriorAmount:
          type: string
        valueAdjustmentSegmentId:
          type: string
      required:
        - arrangementId
        - arrangementType
        - arrangementMode
        - paymentForm
        - numberOfModalOccurences
        - requestedAmount
        - appliedAmount
        - calculatedAmount
        - taxableGainAmount
        - loanType
        - loanInterestType
        - loanPaymentType
        - disbursementType
        - sourceTransferAmountType
        - requestedPercent
        - requestedDate
        - effectiveDate
        - totalChargeAmount
        - arrStatus
        - startDate
        - reason
        - nextActivityDate
        - lastActivityDate
        - endDate
        - valueAdjustmentFundId
        - valueAdjustmentCoverageId
        - valueAdjustmentPriorAmount
        - valueAdjustmentSegmentId
    TaxWithHolding:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/TaxWithHoldingAttributes"
      required:
        - attributes
    Payment:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/PaymentAttributes"
      required:
        - attributes
    ArrangementsFee:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/ArrangementsFeeAttributes"
      required:
        - attributes
    ArrangementSource:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/ArrangementSourcesAttributes"
        segments:
          type: array
          items:
            $ref: "#/components/schemas/ArrangementSegment"
      required:
        - attributes
        - segments
    ArrangementLoanSegment:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/ArrangementLoanSegmentAttributes"
        financialActivity:
          $ref: "#/components/schemas/ArrangementLoanSegmentFinancialActivity"
      required:
        - attributes
        - financialActivity
    ArrangementsMatchSegment:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/ArrangementsMatchSegmentAttributes"
        financialActivity:
          $ref: "#/components/schemas/MatchSegmentFinancialActivity"
      required:
        - attributes
        - financialActivity
    DeathClaim:
      type: object
      properties:
        correlationId:
          type: string
          example: 657b717b7dcf554abf9ef067
          description: The unique ID to track transaction request across all systems
        effectiveDate:
          type: string
          example: 2023-01-01
          description: Date (with pattern "yyyy-mm-dd") when the transaction was
            originally scheduled or expected to happen, can be a non-business
            day
          format: date
        reverseInitiator:
          type: boolean
          default: false
          description: A boolean flag that applies only to financial transactions. When
            set to true, it allows a backdated transaction to be processed. This
            triggers a reversal on the policy to the earliest transaction on the
            specified effective date, applies the new transaction, and then
            reprocesses all subsequent transactions (similar to (R&R) process).
            This ensures that the policy`s financial history remains accurate
            and aligned with the backdated change
        charges:
          type: array
          items:
            $ref: "#/components/schemas/Charge"
        transactionAmounts:
          $ref: "#/components/schemas/DeathClaimTransactionAmounts"
        transactionReason:
          type: string
          enum:
            - ONETIMEPREMIUM
            - GRACEPERIODPREMIUM
            - REINSTATEMENTPREMIUM
            - EXCHANGE1035
            - SURRENDER
            - AMOUNTEXCESSTOMEC
            - AMOUNTEXCESSTOGUIDELINE
            - CURRENTVALUE
            - COSTBASIS
            - GUIDELINESINGLEPREMIUM
            - GUIDELINELEVELPREMIUM
            - SEVENPAYPREMIUM
            - TOTALYTDPREMIUMAMOUNT
            - FACEDECREASECOVERAGE
            - FACEINCREASECOVERAGE
            - MECAUTHORIZATION
            - INITIALPREMIUMEXPIRATION
            - COMPLIANCE
            - STARTINGPRICE
            - LUMPSUM
            - FIVEYEARDEFERRAL
            - SPOUSALCONTINUATION
            - DISCOUNT
            - CONTROLBUSINESSINDICATOR
            - NATIONALCHANGEOFADDRESS
            - DATEOFDEATH
            - INITIALDEATHNOTIFICATION
            - PRODUCTDEFAULT
            - GWBRIDERDISBURSEMENT
            - GWBPHASECHANGE
            - PREMIUMLOAN
            - PAYMENTDUEDATE
          description: The justification or business reason for the transaction
        payeeOrBeneficiary:
          deprecated: true
          type: array
          items:
            $ref: "#/components/schemas/DeathClaimPayeeOrBeneficiary"
        parties:
          type: array
          items:
            $ref: "#/components/schemas/AdhocDisbursementParty"
        policy:
          $ref: "#/components/schemas/DeathClaimAdhocPolicy"
        externalIdentifiers:
          $ref: "#/components/schemas/AdhocExternalIdentifiers"
        payoutInformation:
          $ref: "#/components/schemas/PayoutInformation"
        taxWithholdingInstructions:
          $ref: "#/components/schemas/TaxWithholdingInstructions"
        suppression:
          type: array
          items:
            $ref: "#/components/schemas/Suppression"
    PolicyMetricsAttributes:
      type: object
      properties:
        initialPaymentAmount:
          type: string
          example: "5000"
          description: Initial Payment Amount
        initialPremiumAppliedAmount:
          type: string
          example: "4800"
          description: The Initial Premium Applied Amount refers to the portion of the
            initial premium payment that is officially applied to the policy
            after processing. This amount determines when the policy becomes
            active and how funds are allocated within the contract
        initialPaymentAmountReceivedDate:
          type: string
          example: 2021-01-01
          description: The Initial Premium Amount Received Date refers to the date when
            the insurance company`s home office officially receives the first
            premium payment for a life insurance policy or annuity contract.
            This date is crucial as it determines when the policy processing
            begins and may impact policy activation timelines
        grossPremiumAmountSinceIssue:
          type: string
          example: "7500"
          description: Gross Premium Amount Since Issue
        totalCumulativePremiumAmount:
          type: string
          example: "20000"
          description: Total Cumulative Premium Amount
        modifiedEndowmentContractAuthorizationIndicator:
          type: string
          example: YES
          enum:
            - YES
            - NO
          description: MEC Authorization refers to the approval process required when a
            life insurance policy is classified as a Modified Endowment Contract
            (MEC). A MEC is a permanent life insurance policy that fails the IRS
            "7-Pay Test," resulting in different tax treatment of policy loans
            and withdrawals. MEC Authorization is typically required from the
            policyholder before processing transactions that could convert the
            policy into a MEC, ensuring they understand the tax consequences
        projectedLapseIndicator:
          type: string
          example: YES
          enum:
            - YES
            - NO
          description: The Projected Lapse Indicator is a forecast that indicates whether
            a life insurance policy is expected to lapse within the next policy
            year based on its current account value, premium payments, cost of
            insurance (COI), and other policy charges
        policyGainAmount:
          type: string
          example: "3000"
          description: The Policy Gain Amount is the difference between the policy’s total
            account value and the cost basis. It represents the amount of gain
            that may be subject to taxation if withdrawn or surrendered
      required:
        - initialPaymentAmount
        - initialPremiumAppliedAmount
        - initialPaymentAmountReceivedDate
        - grossPremiumAmountSinceIssue
        - totalCumulativePremiumAmount
        - policyGainAmount
    LoanFundValue:
      type: object
      properties:
        toTotValPct:
          type: number
        fundName:
          type: string
        fundNumber:
          type: string
        fundTypeCd:
          type: string
        interestRate:
          type: number
        fundValueAmt:
          type: number
    WithdrawalAttributes:
      type: object
      properties:
        totalWithdrawalAmountSinceIssue:
          type: string
          example: "5000"
          description: The Total Withdrawal Amount refers to the cumulative amount of
            funds withdrawn from a life insurance policy or annuity by the
            policyholder. This includes all withdrawals made since the policy’s
            inception, whether taken as partial surrenders, cash value
            withdrawals, or systematic distributions
        freeWithdrawalAmount:
          type: string
          example: "1000"
          description: The Free Withdrawal Amount refers to the maximum amount a
            policyholder can withdraw from their life insurance policy or
            annuity in a contract year without incurring a surrender charge.
            This limit is set by the insurer and is typically expressed as a
            percentage of the account value or premiums paid
        minimumWithdrawalAmount:
          type: string
          example: "200"
          description: The Minimum Withdrawal Amount refers to the smallest amount a
            policyholder can withdraw from their life insurance policy or
            annuity in a single transaction, as defined by the insurer. This
            ensures that withdrawals remain administratively efficient and align
            with policy rules
        maximumWithdrawalAmount:
          type: string
          example: "100"
          description: The Maximum Withdrawal Amount refers to the highest amount a
            policyholder can withdraw from their life insurance policy or
            annuity in a single transaction or within a policy year, as set by
            the insurer. This ensures that withdrawals do not deplete the
            policy’s cash value too quickly or violate contract terms
        maximumWithdrawalAmountSinceAnniversary:
          type: string
          example: "10"
        numberWithdrawalDuringVestingPeriod:
          type: string
          example: "10"
        numberWithdrawalAfterVestingPeriod:
          type: string
          example: "10"
        cumulativeWithdrawalAmountSinceAnniversary:
          type: string
          example: "10"
        numberWithdrawalSinceIssue:
          type: string
          example: "10"
        withdrawalAllowedStartDate:
          type: string
          description: The Withdrawal Allowed Start Date refers to the calculated date
            from which the policyholder is permitted to make withdrawals from
            the policy’s cash value or annuity funds. This date is determined
            based on policy terms, surrender charge periods, and regulatory
            restrictions
          example: "10"
      required:
        - totalWithdrawalAmountSinceIssue
        - freeWithdrawalAmount
        - minimumWithdrawalAmount
        - maximumWithdrawalAmount
        - maximumWithdrawalAmountSinceAnniversary
        - numberWithdrawalDuringVestingPeriod
        - numberWithdrawalAfterVestingPeriod
        - cumulativeWithdrawalAmountSinceAnniversary
        - numberWithdrawalSinceIssue
        - withdrawalAllowedStartDate
    ParticipantAttributes:
      type: object
      properties:
        partyId:
          type: string
          example: PARTY123
          description: Party ID is a unique identifier assigned to a party (individual or
            entity) involved in an insurance or annuity contract. This
            identifier helps ensure accurate data exchange and tracking across
            insurance transactions
        issueAge:
          type: string
          example: "30"
          description: Issue Age
        underwritingClass:
          type: string
          example: Preferred
          enum:
            - Preferred
            - Standard
          description: Underwriting Class
        temporaryTableRating:
          type: string
          example: Table A
          description: Temporary Table Rating
      required:
        - partyId
        - issueAge
        - temporaryTableRating
    FlatExtra:
      type: object
      properties:
        flatExtraType:
          type: string
          enum:
            - TEMPORARY
            - PERMANENT
          description: A Flat Extra is an additional dollar amount added to the base
            premium for a life insurance policy due to increased risk factors.
            Insurers apply Flat Extras on top of standard risk classifications
            (e.g., Preferred, Standard, or Substandard ratings).Flat Extras can
            be classified into two types "Temporary Flat Extra" and "Permanent
            Flat Extra"
        flatExtraDuration:
          type: number
          description: The Flat Extra Duration refers to the length of time a Flat Extra
            premium charge is applied to a life insurance policy. This duration
            depends on whether the Flat Extra is temporary or permanent, and it
            is determined by the insurer based on the risk factor associated
            with the insured
          format: int32
          example: 0
        flatExtraAmount:
          type: number
          description: The Flat Extra Amount refers to an additional charge per $1,000 of
            coverage that an insurer applies to a life insurance policy due to
            an increased risk factor. This extra cost is added on top of the
            standard premium and can be temporary or permanent, depending on the
            nature of the risk
          format: double
          example: 0
        flatExtraStartDate:
          type: string
          description: The Flat Extra Start Date refers to the date when an additional,
            fixed premium charge (Flat Extra) begins on a life insurance policy.
            This charge is typically applied due to an increased underwriting
            risk, such as hazardous occupations, high-risk hobbies, or medical
            conditions
          format: date
          example: 2023-01-01
    FeeAttributes:
      type: object
      properties:
        feeType:
          type: string
          example: Admin Fee
          description: Fee Type
        feeAmount:
          type: string
          example: "50"
          description: Fee Amount
        startDate:
          type: string
          example: 2022-01-01
          description: Start Date
        effectiveRate:
          type: string
          example: 5%
          enum:
            - 5%
            - 10%
            - 15%
          description: Effective Rate
        feeWaivedIndicator:
          type: string
          example: Y
          enum:
            - Y
            - N
          description: Fee Waived Indicator
      required:
        - feeType
        - feeAmount
        - startDate
    TaxWithholdingType:
      type: string
      enum:
        - FEDERAL
        - STATE
        - NRA
        - BACKUP
    TaxRateToUse:
      type: string
      enum:
        - NOWITHHOLDINGELECTED
        - USEVALUESENTERED
        - NOWITHHOLDINGALLOWED
        - USEDEFAULTTABLE
        - ADDITIONALWITHHOLDING
        - TAKEINPUTTEDVALUE
    FilingStatus:
      type: string
      enum:
        - SINGLE
        - DOMESTICPARTNERSHIP
        - DEFAULT
        - MARRIED
        - HEADOFHOUSEHOLD
        - WIDOWED
        - DIVORCED
        - MARRIEDFILINGSEPARATELY
    Contribution:
      type: string
      enum:
        - NOTAPPLICABLE
        - EMPLOYEEVOLUNTARY
        - EMPLOYEEDISCRETIONARY
    TaxFormType:
      type: string
      enum:
        - T1035COSTBASIS
        - T1035LOANTRANSFER
        - T1035SURRENDER
        - T1035TAXADVANTAGE
        - T1099R
        - TAXDISCLOSUREFORMW4P
        - TAXDISCLOSUREFORMW8
        - USW4TAXFORM
        - W9
        - VOIDCHECK
    W4P:
      type: object
      properties:
        totalAmountOfOtherIncomeAndOtherPensionsOrAnnuities:
          type: number
          format: double
          example: 12.12
          description: "Below Amounts are for periodic Payments Only  - Certain States
            Require these amounts to be entered "
        totalAmountOfClaimsAndOtherCredits:
          type: number
          format: double
          example: 213.73
          description: "This indicates the total amount of tax claims and credits party is
            eligible for to reduce the tax liabilities "
        otherIncome:
          type: number
          format: double
          example: 144.53
          description: "Not from Jobs or Pension/Annuities "
        otherDeduction:
          type: number
          format: double
          example: 42.83
          description: If Standard Deduction is not used
    PartyRole:
      type: string
      enum:
        - OWNER
        - PRIMARYBENEFICIARY
        - CONTINGENTBENEFICIARY
        - INSURED
        - PAYOR
        - PAYEE
        - AGENT
        - PRIMARYWRITINGAGENT
        - PRIMARYSERVICINGAGENT
        - ADDITIONALSERVICINGAGENT
        - ADDITIONALWRITINGAGENT
        - THIRDPARTYDESIGNEE
        - JOINTOWNER
        - COVERAGEINSURED
        - ASSIGNEE
        - ANNUITANT
        - EXCHANGECOMPANY
        - JOINTANNUITANT
        - GRANTOR
        - TRUSTEE
        - POWEROFATTORNEY
        - AUTHORIZEDSIGNATORY
        - OTHERINTERESTEDPARTY
        - CONTINGENTOWNER
        - THIRDPARTYADMINISTRATOR
        - CARRIER
        - SUCCESSORTRUSTEE
        - COVERAGEJOINTINSURED
    CommunicationType:
      type: string
      enum:
        - EMAIL
        - REGULARMAIL
        - PHONE
        - FAX
        - TEXT
        - NOPREFERENCESPECIFIED
        - POSTAL
        - OTHER
    PowerOfAttorneyAccessLevelType:
      type: string
      enum:
        - FULLACCESS
        - LIMITEDACCESSFINANCIAL
        - LIMITEDACCESSNONFINANCIAL
    AddressType:
      type: string
      enum:
        - RESIDENCE
        - BUSINESS
        - POBOX
        - SEASONAL
        - SECONDARY
        - MAILING
    PhoneType:
      type: string
      enum:
        - MOBILE
        - HOME
        - BUSINESS
        - CLAIMCENTER
        - CUSTOMERSERVICE
        - CORPORATEOFFICE
        - FAX
        - UNKNOWN
        - OTHER
    EmailType:
      type: string
      enum:
        - PERSONAL
        - BUSINESS
        - CUSTOMERSERVICE
        - OTHER
    AccountStatus:
      type: string
      enum:
        - ACTIVEBANKACCOUNT
        - TERMINATEDBANKACCOUNT
    AccountType:
      type: string
      enum:
        - CHECKING
        - SAVINGS
        - CREDITCARD
        - DEBITCARD
        - BROKERAGEACCOUNT
        - CERTIFICATEOFDEPOSIT
        - WIRE
    BankAccountPurpose:
      type: string
      enum:
        - LOANINTERESTBILLING
        - DISBURSEMENTS
        - LOANPRINCIPALBILLING
        - PREMIUMBILLING
        - ONETIMEPREMIUMBILLING
        - PAYOUT
        - ONETIMEWIRE
    BranchAddress:
      type: object
      properties:
        addressType:
          $ref: "#/components/schemas/AddressType"
        addressLine1:
          type: string
          example: 1112 Pickle Street
          description: Address line 1 of the Bank
        addressLine2:
          type: string
          example: South Jersey
          description: Address line 2 of the Bank
        addressLine3:
          type: string
          example: 1234 Post box
          description: Address Line 3 of the bank
        city:
          type: string
          example: Garden City
          description: City of the bank address
        state:
          $ref: "#/components/schemas/State"
        zipCode:
          type: string
          example: "67846"
          description: Zip code of the bank address
        zipCodeExtension:
          type: string
          example: "23"
          description: Unit of the bank address
        country:
          $ref: "#/components/schemas/Country"
    CauseOfDeath:
      type: string
      enum:
        - AIDS
        - ACCIDENTOTHER
        - ACCIDENTBYFIRE
        - ACCIDENTALDROWNING
        - ACCIDENTALFALL
        - ACCIDENTALPOISONING
        - AIRCRAFTACCIDENT
        - ALCOHOLISM
        - ALLERGICDISORDERS
        - ANEMIA
        - APPENDICITIS
        - ARTERIALDISEASE
        - AVITAMINOSIS
        - BENIGNTUMOR
        - BIRTHINJURY
        - BRONCHITIS
        - BRONCHOPNEUMONIA
        - COVID
        - CANCERBONE
        - CANCERBREAST
        - CANCERCERVIX
        - CANCERESOPHAGUS
        - CANCERINTESTINE
        - CANCERLARYNX
        - CANCERLUNG
        - CANCERMOUTH
        - CANCEROTHER
        - CANCERPROSTATE
        - CANCERRECTUM
        - CANCERSKIN
        - CANCERSTOMACH
        - CANCERUTERUS
        - CIRCULATORYOTHER
        - CIRRHOSIS
        - CONGENITALDISORDER
        - DIABETES
        - DIGESTIVEDISEASEOTHER
        - DIPTHERIA
        - DRUGOVERDOSE
        - DYSENTERY
        - EARINFECTION
        - EMPHYSEMA
        - ENCEPHALITIS
        - ENLARGEDPROSTATE
        - EPILEPSY
        - FIREARMACCIDENT
        - FLU
        - GALLSTONE
        - GASTRITIS
        - GASTROENTERITIS
        - GOITERNONTOXIC
        - HEARTARTERIOSCLEROTIC
        - HEARTOTHER
        - HEARTRHEUMATIC
        - HERNIA
        - HOMICIDE
        - HYPERTENSIONHEART
        - HYPERTENSIONNOHEART
        - KIDNEYINFECTION
        - KIDNEYSTONE
        - LEUKAEMIA
        - LUNGDISEASEOTHER
        - LYMPHORSARCOMA
        - MACHINERYACCIDENT
        - MALARIA
        - MEASLES
        - MENINGITISMENIN
        - MENINGITISNONMENIN
        - MENTALDISORDER
        - MOTORVEHICLEACCIDENT
        - MULTIPLESCLEROSIS
        - NATURALDEATH
        - NEPHRITIS
        - NERVOUSSYSTEMOTHER
        - NEWBORNDISORDEROTHER
        - NEWBORNINFECTION
        - OSTEOMYELITIS
        - PARASITICDISEASEOTHER
        - PLEURISY
        - PNEUMONIALOBAR
        - PNEUMONIAOTHER
        - POLIO
        - PREGNANCYDISORDER
        - RHEUMATICFEVER
        - SCARLETFEVER
        - SENILITY
        - SEPTICAEMIA
        - SKINDISEASEOTHER
        - SKININFECTION
        - SUICIDE
        - SYPHILIS
        - TETANUS
        - THYROTOXICOSIS
        - TUBERCULOSIS
        - TYPHOID
        - TYPHUS
        - ULCEROFDUODENUM
        - ULCEROFSTOMACH
        - UNKNOWN
        - URINARYDISEASEOTHER
        - VASCULARLESIONS
        - WAR
        - WHOOPINGCOUGH
        - PENDINGINVESTIGATION
        - ACCIDENT
    EmploymentStatus:
      type: string
      enum:
        - ACTIVE
        - RETIRED
        - DISABLED
        - LAIDOFF
        - LEAVEDUETOCHILDBIRTH
        - LEAVEDUETOMILITARYSERVICE
        - LEAVEOFABSENCE
        - RESIGNED
        - SHORTTERMDISABILITY
        - TERMINATED
        - UNKNOWN
        - OTHER
    LapseAssessmentAttributes:
      type: object
      properties:
        lapseIndicator:
          type: string
          example: Y
          enum:
            - Y
            - N
          description: Lapse Indicator
        gracePeriodStartDate:
          type: string
          example: 2022-03-15
          description: Grace Period Start Date
        gracePeriodEndDate:
          type: string
          example: 2022-06-15
          description: Grace Period End Date
        lapseEffectiveDate:
          type: string
          example: 2022-06-15
          description: Lapse Effective Date
        totalLapsePendingAmount:
          type: string
          example: "150"
          description: Total Lapse Pending Amount
        minimumLapsePendingAmount:
          type: string
          example: "50"
          description: Minimum Lapse Pending Amount
      required:
        - gracePeriodStartDate
        - gracePeriodEndDate
        - lapseEffectiveDate
        - totalLapsePendingAmount
        - minimumLapsePendingAmount
    LapseProtectionAttributes:
      type: object
      properties:
        startDate:
          type: string
          example: 2022-01-01
          description: Start Date
        endDate:
          type: string
          example: 2022-12-31
          description: End Date
        monthlyPayment:
          type: string
          example: "20"
          description: Monthly Payment
        cumulativePayment:
          type: string
          example: "120"
          description: Cumulative Payment
        guaranteedPeriod:
          type: string
          example: "24"
          description: Guaranteed Period
      required:
        - startDate
        - endDate
        - monthlyPayment
        - cumulativePayment
        - guaranteedPeriod
    ReinstatementAttributes:
      type: object
      properties:
        lastReinstatementDate:
          type: string
          example: 2021-12-31
          description: Last Reinstatement Date
        maxReinstatementYrs:
          type: string
          example: "3"
          description: Max Reinstatement Years
        underwritingDecision:
          type: string
          example: Approved
          description: Underwriting Decision
        approvalDate:
          type: string
          example: 2022-01-01
          description: Approval Date
        effectiveDate:
          type: string
          example: 2022-03-15
          description: Effective Date
        expirationDate:
          type: string
          example: 2022-12-31
          description: Expiration Date
        paymentAmount:
          type: string
          example: "30"
          description: Payment Amount
      required:
        - lastReinstatementDate
        - maxReinstatementYrs
        - underwritingDecision
        - approvalDate
        - effectiveDate
        - expirationDate
        - paymentAmount
    SegmentAttributes:
      type: object
      properties:
        segmentId:
          type: string
          example: SEG123
          description: Segment ID
        originalDepositAmount:
          type: string
          example: "1000"
          description: Original Deposit Amount
        originalDepositDate:
          type: string
          example: 2022-01-01
          description: Original Deposit Date
        depositDate:
          type: string
          example: 2022-01-15
          description: Deposit Date
        depositAmount:
          type: string
          example: "500"
          description: Deposit Amount
        currentAmount:
          type: string
          example: "600"
          description: Current Amount
        numberOfUnits:
          type: string
          example: "10"
          description: Number of Units
        renewalDate:
          type: string
          example: 2023-01-01
          description: Renewal Date
        sweepAccountId:
          type: string
          example: SWEEP001
          description: Sweep Account ID
        startDate:
          type: string
          example: 2022-01-01
          description: Start Date
        endDate:
          type: string
          example: 2022-12-31
          description: End Date
      required:
        - segmentId
        - originalDepositAmount
        - originalDepositDate
        - depositDate
        - depositAmount
        - currentAmount
        - numberOfUnits
        - renewalDate
        - sweepAccountId
        - startDate
        - endDate
    TaxWithHoldingAttributes:
      type: object
      properties:
        taxWithholdingPlace:
          type: string
        partyId:
          type: string
          description: Party ID is a unique identifier assigned to a party (individual or
            entity) involved in an insurance or annuity contract. This
            identifier helps ensure accurate data exchange and tracking across
            insurance transactions
        taxWithheldAmount:
          type: string
        taxWithheldPercent:
          type: string
        taxWithholdingType:
          type: string
        withholdingNumberExemptions:
          type: string
        maritalStatus:
          type: string
        taxJurisdiction:
          type: string
        taxableAmount:
          type: string
      required:
        - taxWithholdingPlace
        - partyId
        - taxWithheldAmount
        - taxWithheldPercent
        - taxWithholdingType
        - withholdingNumberExemptions
        - maritalStatus
        - taxJurisdiction
        - taxableAmount
    PaymentAttributes:
      type: object
      properties:
        partyRole:
          type: string
        partyId:
          type: string
          description: Party ID is a unique identifier assigned to a party (individual or
            entity) involved in an insurance or annuity contract. This
            identifier helps ensure accurate data exchange and tracking across
            insurance transactions
        bankId:
          type: string
        allocationPercent:
          type: string
        paymentAmount:
          type: string
      required:
        - partyRole
        - partyId
        - bankId
        - allocationPercent
        - paymentAmount
    ArrangementsFeeAttributes:
      type: object
      properties:
        feeType:
          type: string
        feeAmount:
          type: string
        startDate:
          type: string
        effectiveRate:
          type: string
        feeWaivedIndicator:
          type: string
      required:
        - feeType
        - feeAmount
        - startDate
        - effectiveRate
        - feeWaivedIndicator
    ArrangementSourcesAttributes:
      type: object
      properties:
        fundId:
          type: string
        transferAmount:
          type: string
        transferPercent:
          type: string
      required:
        - fundId
        - transferAmount
        - transferPercent
    ArrangementSegment:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/ArrangementSegmentAttributes"
        financialActivity:
          $ref: "#/components/schemas/ArrangementFinancialActivity"
      required:
        - attributes
        - financialActivity
    ArrangementLoanSegmentAttributes:
      type: object
      properties:
        segmentId:
          type: string
        requestedAmount:
          type: string
      required:
        - segmentId
        - requestedAmount
    ArrangementLoanSegmentFinancialActivity:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/ArrangementLoanSegmentFinancialActivityAttributes"
      required:
        - attributes
    ArrangementsMatchSegmentAttributes:
      type: object
      properties:
        segmentId:
          type: string
        requestedAmount:
          type: string
      required:
        - segmentId
        - requestedAmount
    MatchSegmentFinancialActivity:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/MatchSegmentFinancialActivityAttributes"
      required:
        - attributes
    Charge:
      type: object
      properties:
        chargeType:
          $ref: "#/components/schemas/TransactionChargeType"
        chargeWaiverIndicator:
          $ref: "#/components/schemas/ChargeWaiverIndicator"
        chargeWaiverReason:
          type: string
          description: The reason why a charge was waived (e.g., Promotional Waiver,
            Policy Exception)
          example: "100"
        partyId:
          type: string
          description: The partyId to which the charge is applied.
          example: Party_PI_1
    DeathClaimTransactionAmounts:
      type: object
      properties:
        claimStatutoryInterestAmount:
          type: number
          example: 90
          description: The statutory interest amount paid as part of a claim settlement.
            This is the SSI amount
          format: double
        deathBenefitInterestCalculatedFromDate:
          $ref: "#/components/schemas/DeathBenefitInterestCalculatedFromDate"
        claimStatutoryInterestRate:
          type: number
          example: 10
          format: double
          description: The state specific interest rate applied to the statutory claim
            payout
        distributionCode:
          $ref: "#/components/schemas/DistributionCode"
        accountNumber:
          type: string
          example: "123456789"
          description: The unique identifier representing the policy or account associated
            with the transaction for DTCC money movement.
        participantId:
          type: string
          example: DTCC12345
          description: The DTCC Participant ID (also known as DTCC Number or Participant
            Number) assigned by DTCC to financial institutions.
    DeathClaimPayeeOrBeneficiary:
      type: object
      properties:
        partyId:
          type: string
          description: A unique identifier linking the party to the policy
          example: Party_PI_1
        paymentForm:
          $ref: "#/components/schemas/PaymentForm"
        allocationPercentage:
          type: number
          description: The percentage of the total disbursement allocated to the payee
          example: 100
          format: double
        bankId:
          type: string
          example: Bank_1
          description: A unique identifier for the financial institution handling the
            transaction
        partyRole:
          $ref: "#/components/schemas/PartyRole"
      required:
        - allocationPercentage
    AdhocDisbursementParty:
      type: object
      properties:
        partyRole:
          $ref: "#/components/schemas/PartyRole"
        partyId:
          type: string
          description: unique identifier linking the party to the policy
          example: Party_PI_1
        paymentForm:
          $ref: "#/components/schemas/PaymentForm"
        allocationPercentage:
          type: number
          description: The percentage of the total disbursement allocated to the payee
          example: 100
          format: double
        bankId:
          type: string
          description: A unique identifier for the financial institution handling the
            transaction
          example: Bank_1
        addressId:
          type: string
          description: A unique identifier for the address associated with the payee or
            policyholder
          example: "1"
        forBenefitOfOrForFurtherCredit:
          type: string
          description: FBO - For Benefit Of, FFC - For Further Credit. (To notate a second
            beneficiary or to designate a person or organization when funds are
            disbursed out)
          example: John Doe
        forBenefitOfOrForFurtherCreditIndicator:
          type: boolean
          example: true
          description: Indicates whether the outgoing funds are being requested for the
            benefit of or for further credit to another person or organization.
    DeathClaimAdhocPolicy:
      type: object
      properties:
        policyDates:
          $ref: "#/components/schemas/DeathClaimAdhocPolicyDates"
        deathBenefit:
          $ref: "#/components/schemas/DeathClaimAdhocDeathBenefit"
        party:
          $ref: "#/components/schemas/DeathClaimAdhocParty"
        charges:
          $ref: "#/components/schemas/Charge"
    AdhocExternalIdentifiers:
      type: object
      properties:
        referenceNumber:
          type: string
          description: The unique payment reference number for all premium-related
        externalTransactionId:
          type: string
          description: The unique ID to identify transaction on carrier side
    PayoutInformation:
      type: object
      properties:
        payoutType:
          $ref: "#/components/schemas/PayoutType"
    TaxWithholdingInstructions:
      type: object
      properties:
        partyId:
          type: string
          description: A unique identifier linking the party to the policy
          example: Party_PI_1
        partyRole:
          type: string
          enum:
            - OWNER
            - PRIMARYBENEFICIARY
            - CONTINGENTBENEFICIARY
            - INSURED
            - PAYOR
            - PAYEE
            - AGENT
            - PRIMARYWRITINGAGENT
            - PRIMARYSERVICINGAGENT
            - ADDITIONALSERVICINGAGENT
            - ADDITIONALWRITINGAGENT
            - THIRDPARTYDESIGNEE
            - JOINTOWNER
            - COVERAGEINSURED
            - ASSIGNEE
            - ANNUITANT
            - EXCHANGECOMPANY
            - JOINTANNUITANT
            - GRANTOR
            - TRUSTEE
            - POWEROFATTORNEY
            - AUTHORIZEDSIGNATORY
            - OTHERINTERESTEDPARTY
            - CONTINGENTOWNER
            - THIRDPARTYADMINISTRATOR
            - CARRIER
            - SUCCESSORTRUSTEE
            - COVERAGEJOINTINSURED
          description: Roles that are essential in structuring life insurance and annuity
            contracts to meet the financial goals of policyholders and
            beneficiaries
        taxWithholdingType:
          $ref: "#/components/schemas/TaxWithholdingType"
        taxRateToUse:
          $ref: "#/components/schemas/TaxRateToUse"
        filingStatus:
          $ref: "#/components/schemas/FilingStatus"
        dollar:
          type: number
          description: The amount portion of the taxable transaction amount to be withheld
          example: 10
          format: double
        percentage:
          type: number
          description: The percentage of the taxable transaction amount to be withheld
          example: 50
          format: double
        exemptions:
          type: number
          description: The number of exemptions claimed for tax withholding within a tax
            year
          example: 0
          format: int32
        taxJurisdiction:
          type: string
          description: The legal tax authority (state or federal) governing the
            withholding process
          example: USA_WY
        contribution:
          type: string
          enum:
            - NOTAPPLICABLE
            - EMPLOYEEVOLUNTARY
            - EMPLOYEEDISCRETIONARY
          description: Not applicable, Employee Voluntary and Employee Discretionary
        taxFormType:
          type: string
          enum:
            - T1035COSTBASIS
            - T1035LOANTRANSFER
            - T1035SURRENDER
            - T1035TAXADVANTAGE
            - T1099R
            - TAXDISCLOSUREFORMW4P
            - TAXDISCLOSUREFORMW8
            - USW4TAXFORM
            - W9
            - VOIDCHECK
          description: The Tax Form Type refers to the specific IRS or government form
            used as the basis for determining an individual’s or entity’s tax
            withholding status on financial products such as life insurance
            policies, annuities, or investment accounts
        w4p:
          $ref: "#/components/schemas/W4P"
    Suppression:
      type: object
      properties:
        suppressionType:
          $ref: "#/components/schemas/SuppressionType"
        suppressionReason:
          type: string
          description: Specifies the specific reason or justification for applying the
            suppression. It explains why the suppression was applied.
    ArrangementSegmentAttributes:
      type: object
      properties:
        segmentId:
          type: string
        requestedAmount:
          type: string
      required:
        - segmentId
        - requestedAmount
    ArrangementFinancialActivity:
      type: object
      properties:
        attributes:
          $ref: "#/components/schemas/ArrangementFinancialActivityAttributes"
      required:
        - attributes
    ArrangementLoanSegmentFinancialActivityAttributes:
      type: object
      properties:
        interestPostingRate:
          type: string
        amount:
          type: string
      required:
        - interestPostingRate
        - amount
    MatchSegmentFinancialActivityAttributes:
      type: object
      properties:
        interestPostingRate:
          type: string
        amount:
          type: string
      required:
        - interestPostingRate
        - amount
    TransactionChargeType:
      type: string
      enum:
        - COSTOFINSURANCE
        - EXPENSECHARGE
        - UNITEXPENSECHARGE
        - RIDERCHARGE
        - SURRENDERCHARGE
        - WITHDRAWALCHARGE
        - PAYMENTCHARGE
        - COVERAGECHARGE
        - COVERAGECREDIT
        - PREMIUMTAX
        - MARKETVALUEADJUSTMENT
        - BONUSRECAPTURE
        - EQUITYINDEXADJUSTMENT
        - PRODUCTLIMITS
        - DEATHBENEFITINTEREST
        - FUTURECHARGESFORTRANSACTION
        - REDEMPTIONFEE
        - MAILCHARGE
        - FUNDFEE
        - INEFFECT
        - ALL
        - OVERNIGHTMAIL
        - WIRE
    ChargeWaiverIndicator:
      type: string
      enum:
        - Yes
        - No
    DeathBenefitInterestCalculatedFromDate:
      type: string
      enum:
        - DATEOFDEATH
        - DATEOFDEATHREPORTED
    DistributionCode:
      type: string
      enum:
        - DEFAULT
        - PREMATUREDISTRIBUTION
        - EXCEPTIONAPPLIES
        - DISABILITY
        - DEATH
        - DEATHEXCLUSION
        - DEATHROLLOVER
        - EXCHANGE1035
        - NORMALDISTRIBUTION
        - COSTOFCURRENTLIFEINSURANCEPROTECTION
        - QUALIFIEDROLLOVER
        - ROTHDISTRIBUTIONNOEXCEPTION
        - QUALIFIEDLOANDISTRIBUTION
        - PREMATURELOANDISTRIBUTION
        - QUALIFIEDROTHINDIVIDUALRETIREMENTARRANGEMENTDISTRIBUTION
        - ROTHINDIVIDUALRETIREMENTACCOUNTSDISTRIBUTIONEXCEPTIONAPPLIES
        - EXCESSCONTRIBUTIONSPLUSEARNINGSEXCESSDEFERRALSTAXABLEIN2009
        - NONTAXABLEEVENT
        - GROSSPAIDTOATTORNEY
        - OTHERINCOME
        - NONEMPLOYEECOMPENSATION
        - PREMATUREEXCEPTION
        - ROYALTIES
        - DEATHTRANSFER4H
        - PROHIBITEDTRANSACTION
        - TENYEARTAXOPTION
        - TRUSTEETOTRUSTEETRANSFER
        - QUALIFIEDDOMESTICRELATIONSORDERLIKETOLIKENO1099
        - DISTRIBUTIONSUNDEREMPLOYEEPLANSCOMPLIANCERESOLUTIONSYSTEM
        - CHARITABLEGIFT
        - LOANSASDISTRIBUTIONS
        - QUALIFIEDPLANLOANOFFSET
        - RECHARACTERIZEDINDIVIDUALRETIREMENTARRANGEMENTCURRENTYEAR
        - EXCESSCONTRIBUTION1YEARPRIORTAX
        - RECHARACTERIZEDINDIVIDUALRETIREMENTACCOUNTSPREVIOUSYEAR
        - EARLYDISTRIBUTIONFROMSAVINGSINCENTIVEMATCHPLANFOREMPLOYEES
        - DIRECTTRANSFER
        - EXCESSCONTRIBUTIONSPLUSEARNINGSEXCESSDEFERRALSANDOREARNINGSTAXABLEIN2024
        - EXCESSCONTRIBUTIONS2YEARPRIORTAX
        - DIRECTROLLOVERQUALPLANTAXSHELTEREDANNUITY
        - SEPARATIONFROMSERVICE
        - INDIVIDUALRETIREMENTARRANGEMENTTOROTHINDIVIDUALRETIREMENTARRANGEMENT
        - QUALIFIEDDOMESTICRELATIONSORDERROLLOVERTOINDIVIDUALRETIREMENTARRANGEMENT2G
        - QUALIFIEDDOMESTICRELATIONSORDERPAYMENTTOSPOUSE
        - FIRSTTIMEHOMEBUYERINDIVIDUALRETIREMENTARRANGEMENTONLY
        - EDUCATIONEXPENSE
        - MEDICALEXPENSE
        - FEEADMIN
        - FEEASSET
        - FEECONTRIBUTION
        - FEELUMPSUMDEATH
        - FEELUMPSUMDISABILITY
        - FEELUMPSUMPURCHASEDANNUITY
        - FEELUMPSUMOTHER
        - FEENEWRETIREEWITHPERPAYMENT
        - FEEEXISTINGRETIREMENTINFORCE
        - FEECONTRACT
        - FEEEXISTINGRETIREMENTINCREASE
        - FEETHIRDPARTY
        - LUMPSUMDEATH
        - LUMPSUMDISABILITY
        - LUMPSUMPURCHASEDANNUITY
        - LUMPSUMOTHER
        - FEEINTERNATIONALPROGRAMSGROUPEXPENSE
        - FROMFUND
        - RELEASERESERVE
        - HEALTHDEDUCTION
        - FEEMARKETVALUE
        - FEEANNUITYADMINISTRATION
        - SECTION1035EXCHANGEPARTIAL
        - QUALIFIEDDOMESTICRELATIONSORDERNORMALDISTRIBUTION
        - QUALIFIEDDOMESTICRELATIONSORDERSECTION1035
        - FEELONGTERMCAREINSURANCE
        - DESIGNATEDROTHACCOUNTDISTRIBUTION
        - REPORTABLEDEATHBENEFITSUNDERSECTION6050Y
        - DISTRIBUTIONOFTRADITIONALINDIVIDUALRETIREMENTARRANGEMENTASSETSNOTHAVINGAREADILYAVAILABLEFAIRMARKETVALUE
        - DIVIDENDSDISTRIBUTEDFROMANEMPLOYEESTOCKOWNERSHIPPLANSUNDERSECTION404K
        - DIRECTROLLOVEROFADESIGNATEDROTHACCOUNT
        - DEATHQUALIFIEDCHARITABLEDISTRIBUTION
        - NORMALQUALIFIEDCHARITABLEDISTRIBUTION
    PaymentForm:
      type: string
      enum:
        - DTCC
        - CREDITCARD
        - ACH
        - CHECK
        - WIRE
        - EXCHANGE
        - PREMIUMLOAN
    DeathClaimAdhocPolicyDates:
      type: object
      properties:
        claimApprovalDate:
          type: string
          example: 2024-02-21
          format: date
          description: The Claim Approval Date is the date when an insurance company
            officially approves a claim for payment after verifying the claim
            details, policy coverage, and required documentation
        certifiedReceivedDate:
          type: string
          example: 2024-02-21
          format: date
          description: The Certified Received Date refers to the date when the insurance
            company officially receives the certified death paperwork (such as a
            death certificate) required to process a life insurance claim. This
            date marks the beginning of the formal claims verification process
    DeathClaimAdhocDeathBenefit:
      type: object
      properties:
        claimStatus:
          $ref: "#/components/schemas/ClaimStatus"
        proofOfDeathReceived:
          type: boolean
          description: Whether proof of death is received
    DeathClaimAdhocParty:
      type: object
      properties:
        beneficiaryPercentage:
          type: number
          example: 100
          format: double
          description: The benefit percentage of the beneficiary
        partyStatus:
          $ref: "#/components/schemas/PartyStatus"
    PayoutType:
      type: string
      enum:
        - LUMPSUM
        - FIVEYEARDEFERRAL
        - SPOUSALCONTINUATION
    SuppressionType:
      type: string
      description: Specifies the category or type of suppression being applied to a
        transaction. It indicates what kind of suppression is in effect.
      enum:
        - CORRESPONDENCE
        - TAX
        - DISBURSEMENT
        - COMMISSION
    ArrangementFinancialActivityAttributes:
      type: object
      properties:
        interestPostingRate:
          type: string
        amount:
          type: string
      required:
        - interestPostingRate
        - amount
    LPSPayloadResponse:
      type: object
      properties:
        attributes:
          description: Attributes
          allOf:
            - $ref: "#/components/schemas/Attributes"
        accountValue:
          description: Account Value
          allOf:
            - $ref: "#/components/schemas/AccountValue"
        testValue:
          description: Test Value
          allOf:
            - $ref: "#/components/schemas/TestValue"
        deathBenefit:
          description: Death Benefit
          allOf:
            - $ref: "#/components/schemas/DeathBenefit"
        coverageValue:
          description: Coverage Value
          allOf:
            - $ref: "#/components/schemas/CoverageValue"
        coverages:
          description: Array of Coverages
          type: array
          items:
            $ref: "#/components/schemas/Coverages"
        parties:
          description: Array of Parties
          type: array
          items:
            $ref: "#/components/schemas/Parties"
        policyFee:
          description: Policy Fee
          allOf:
            - $ref: "#/components/schemas/PolicyFee"
        features:
          description: Features
          allOf:
            - $ref: "#/components/schemas/Features"
        fundAllocations:
          description: Array of Fund Allocations
          type: array
          items:
            $ref: "#/components/schemas/FundAllocations"
        funds:
          description: Array of Funds
          type: array
          items:
            $ref: "#/components/schemas/Funds"
        matchSegment:
          description: Match Segment
          allOf:
            - $ref: "#/components/schemas/MatchSegment"
        loanSegments:
          description: Array of Loan Segments
          type: array
          items:
            $ref: "#/components/schemas/LoanSegment"
        arrangements:
          description: Array of Arrangements
          type: array
          items:
            $ref: "#/components/schemas/Arrangements"
      required:
        - attributes
        - accountValue
        - testValue
        - deathBenefit
        - coverageValue
        - coverages
        - parties
        - policyFee
        - features
        - fundAllocations
        - funds
        - matchSegment
        - loanSegments
        - arrangements
```
