---
title: "PolicyPatch"
url: "https://developers.zinnia.com/apis/new-business/versions/b8532e16-b28e-4393-9305-def50b91e40e/schemas/PolicyPatch"
---

> Full API specification: https://developers.zinnia.com/apis/new-business/versions/b8532e16-b28e-4393-9305-def50b91e40e.md

# PolicyPatch

## OpenAPI definition

```yaml
openapi: 3.1.0
info:
  title: Zinnia New Business API.
  version: 0.9.8
servers:
  - url: https://qa.api.zinnia.io
    description: QA Environment
  - url: https://dev.api.zinnia.io
    description: DEV Environment
  - url: https://uat.api.zinnia.io
    description: UAT Environment
  - url: https://api.zinnia.io
    description: PROD Environment
components:
  schemas:
    State:
      type: string
      example: CA
      enum:
        - AL
        - AK
        - AZ
        - AR
        - AS
        - AA
        - AE
        - AP
        - CA
        - CO
        - CT
        - DC
        - DE
        - FL
        - GA
        - GU
        - HI
        - ID
        - IL
        - IN
        - IA
        - KS
        - KY
        - LA
        - ME
        - MD
        - MA
        - MI
        - MN
        - MS
        - MO
        - MT
        - MP
        - NE
        - NV
        - NH
        - NJ
        - NM
        - NY
        - NC
        - ND
        - OH
        - OK
        - OR
        - PA
        - PR
        - RI
        - SC
        - SD
        - TN
        - TX
        - UT
        - UM
        - VT
        - VA
        - VI
        - WA
        - WV
        - WI
        - WY
      description: Abbreviated names for states
    CoveragePatch:
      type: object
      properties:
        faceAmount:
          type: number
          format: double
          minimum: 0
          description: Face amount of the policy
          example: 250000
        deathBenefitOption:
          type: string
          enum:
            - LEVEL
            - INCREASING
          description: Death benefit option type
          example: LEVEL
        deathBenefitComplianceTest:
          type: string
          enum:
            - GPT
            - CVAT
          description: Death benefit compliance test type
          example: GPT
        plannedPremiumAmount:
          type: number
          format: double
          description: Planned premium amount
          example: 2500
        fixedCostPeriod:
          type: integer
          enum:
            - 10
            - 15
            - 20
            - 25
            - 30
            - 65
          description: Fixed cost period duration
          example: 10
        tableRatings:
          type: object
          properties:
            tableRating:
              type: string
              enum:
                - TABLEA
                - TABLEB
                - TABLEC
                - TABLED
                - TABLEE
                - TABLEF
                - TABLEG
                - TABLEH
                - TABLEI
                - TABLEJ
                - TABLEK
                - TABLEL
                - TABLEM
                - TABLEN
                - TABLEO
                - TABLEP
                - NONETABLE
              description: Table rating classification
              example: TABLEA
            flatExtras:
              type: array
              items:
                anyOf:
                  - $ref: "#/components/schemas/FlatExtraPatchPermanent"
                  - $ref: "#/components/schemas/FlatExtraPatchTemporary"
          description: Table ratings and flat extras for the coverage
        party:
          type: array
          items:
            type: string
            description: Associated PartyIds for given coverage
            example: 5f8f2f5c-6c3b-4e3b-8f2f-5c6c3b4e3b8f
    RiderDetailPatch:
      type: object
      properties:
        type:
          type: string
          enum:
            - Rider_OWP
            - Rider_ABRTRM
            - Rider_CTR
            - Rider_ABRCHR
            - Rider_ADR
            - Rider_WPR
            - Rider_CGR
            - Rider_GIBR
            - Rider_OPR
            - Rider_OWDR
            - Rider_WDR
            - Rider_NHR
            - Rider_ABRCRI
          description: Type of rider
          example: Rider_ABRTRM
        faceAmount:
          type: number
          format: double
          minimum: 0
          description: Face amount for the rider opted by owner
          example: 250000
        premium:
          type: number
          format: double
          minimum: 0
          description: Premium amount for the rider
          example: 250000
        status:
          type: string
          enum:
            - ACTIVE
            - TERMINATED
            - PENDING
            - SUSPENDED
          description: Status of the rider. It should be always APPROVED.
          example: ACTIVE
        optedForPolicy:
          type: string
          enum:
            - YES
            - NO
          description: Whether the rider is opted for this policy or not.
          example: YES
        tableRating:
          type: string
          enum:
            - TABLEA
            - TABLEB
            - TABLEC
            - TABLED
            - TABLEE
            - TABLEF
            - TABLEG
            - TABLEH
            - TABLEI
            - TABLEJ
            - TABLEK
            - TABLEL
            - TABLEM
            - TABLEN
            - TABLEO
            - TABLEP
            - NONETABLE
          description: Table rating classification
          example: TABLEA
        party:
          type: array
          items:
            type: string
            description: Associated PartyIds for given rider
            example: 5f8f2f5c-6c3b-4e3b-8f2f-5c6c3b4e3b8f
    NonforfeitureOption:
      allOf:
        - type: object
          properties:
            nonForFeitureOption:
              type: string
              enum:
                - AUTOMATICPOLICYLOAN
                - REDUCEDPAIDUP
              description: Type of policy restriction
              example: REDUCEDPAIDUP
    PaymentV2Patch:
      type: object
      properties:
        referenceNumber:
          type: string
          example: 5f2e0c1a-6b3d-4d3f-8b7f-3f7b6d5e4c3a
        method:
          type: string
          enum:
            - CREDITCARD
            - ACH
            - CHECK
            - WIRE
            - EXCHANGE
            - DTCC
          example: ACH
        frequency:
          type: string
          enum:
            - DAILY
            - EVERYTWOWEEKS
            - MONTHLY
            - SEMIANNUAL
            - QUARTERLY
            - ANNUAL
            - SINGLEPAYMENT
          description: Frequency of premium payments
          example: MONTHLY
        amount:
          type: number
          format: double
          example: 250000
        automaticPayment:
          type: boolean
          default: true
          example: true
        draftDate:
          type: string
          format: date
          pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$
          description: Date (with pattern "yyyy-mm-dd")
          example: 2023-01-01
        paymentDate:
          type: string
          format: date
          pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$
          description: Date (with pattern "yyyy-mm-dd")
          example: 2023-01-01
        externalTransactionId:
          type: string
          description: Transaction ID from external system
          example: A12345
        externalArrangementId:
          type: string
          description: Arrangement ID from external system
          example: A12345
        party:
          type: array
          items:
            type: string
            description: Associated PartyIds for given payment
            example: 5f8f2f5c-6c3b-4e3b-8f2f-5c6c3b4e3b8f
        bankInformation:
          $ref: "#/components/schemas/BankInformationV2Patch"
    FlatExtraPatchPermanent:
      type: object
      properties:
        type:
          type: string
          enum:
            - PERMANENT
          description: Type of flat extra (permanent or temporary)
          example: PERMANENT
        amount:
          type: number
          format: double
          minimum: 0
          description: Amount of flat extra per 1000 of face amount
          example: 250000
        duration:
          type: integer
          minimum: 1
          description: Duration of flat extra
          example: 250000
        durationType:
          type: string
          enum:
            - YEARS
            - MONTHS
          description: Unit of duration measurement
          example: YEARS
    FlatExtraPatchTemporary:
      type: object
      properties:
        type:
          type: string
          enum:
            - TEMPORARY
          description: Type of flat extra (permanent or temporary)
          example: TEMPORARY
        amount:
          type: number
          format: double
          minimum: 0
          description: Amount of flat extra per 1000 of face amount
          example: 250000
        duration:
          type: integer
          minimum: 1
          description: Duration of flat extra
          example: 250000
        durationType:
          type: string
          enum:
            - YEARS
            - MONTHS
          description: Unit of duration measurement
          example: YEARS
    BankInformationV2Patch:
      type: object
      properties:
        nameOnAccount:
          type: string
          example: abc
        accountStatus:
          type: string
          example: Active
        accountNumber:
          type: string
          example: "1234567890"
        routingNumber:
          type: string
          example: "123456789"
        accountType:
          type: string
          enum:
            - CHECKING
            - SAVINGS
            - CREDITCARD
            - DEBITCARD
            - BROKERAGEACCOUNT
            - CERTIFICATEOFDEPOSIT
            - WIRE
          example: CHECKING
        ibaNumber:
          type: string
          example: "123456789"
        branchName:
          type: string
          example: XYZ Branch
        address:
          $ref: "#/components/schemas/PaymentAddressPatch"
    PaymentAddressPatch:
      type: object
      properties:
        addressType:
          type: string
          enum:
            - RESIDENCE
            - BUSINESS
            - POBOX
            - SEASONAL
            - SECONDARY
            - MAILING
          description: Type of address
          example: RESIDENCE
        addressLine1:
          type: string
          description: Primary address line
          example: 123 Main St
        addressLine2:
          type: string
          description: Secondary address line (optional)
          example: Apt 4B
        addressLine3:
          type: string
          description: Third address line (optional)
          example: Apt 4B
        city:
          type: string
          description: City name
          example: San Francisco
        state:
          $ref: "#/components/schemas/State"
        zipCode:
          type: string
          pattern: ^\d{5}?$
          description: ZIP code (5 digits)
          example: "94105"
        zipCodeExt:
          type: string
          description: ZIP code extension
          example: "4465"
        country:
          $ref: "#/components/schemas/CountryV2"
    CountryV2:
      type: string
      example: US
      description: ISO Country Code
        https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes
      enum:
        - US
        - AF
        - AL
        - DZ
        - AS
        - AD
        - AO
        - AI
        - AQ
        - AG
        - AR
        - AM
        - AW
        - AU
        - AT
        - AZ
        - BS
        - BH
        - BD
        - BB
        - BY
        - BE
        - BZ
        - BJ
        - BM
        - BT
        - BO
        - BQ
        - BA
        - BW
        - BV
        - BR
        - IO
        - BN
        - BG
        - BF
        - BI
        - CV
        - KH
        - CM
        - CA
        - KY
        - CF
        - TD
        - CL
        - CN
        - CX
        - CC
        - CO
        - KM
        - CD
        - CG
        - CK
        - CR
        - HR
        - CU
        - CW
        - CY
        - CZ
        - CI
        - DK
        - DJ
        - DM
        - DO
        - EC
        - EG
        - SV
        - GQ
        - ER
        - EE
        - SZ
        - ET
        - FK
        - FO
        - FJ
        - FI
        - FR
        - GF
        - PF
        - TF
        - GA
        - GM
        - GE
        - DE
        - GH
        - GI
        - GR
        - GL
        - GD
        - GP
        - GU
        - GT
        - GG
        - GN
        - GW
        - GY
        - HT
        - HM
        - VA
        - HN
        - HK
        - HU
        - IS
        - IN
        - ID
        - IR
        - IQ
        - IE
        - IM
        - IL
        - IT
        - JM
        - JP
        - JE
        - JO
        - KZ
        - KE
        - KI
        - KP
        - KR
        - KW
        - KG
        - LA
        - LV
        - LB
        - LS
        - LR
        - LY
        - LI
        - LT
        - LU
        - MO
        - MG
        - MW
        - MY
        - MV
        - ML
        - MT
        - MH
        - MQ
        - MR
        - MU
        - YT
        - MX
        - FM
        - MD
        - MC
        - MN
        - ME
        - MS
        - MA
        - MZ
        - MM
        - NA
        - NR
        - NP
        - NL
        - NC
        - NZ
        - NI
        - NE
        - NG
        - NU
        - NF
        - MP
        - NO
        - OM
        - PK
        - PW
        - PS
        - PA
        - PG
        - PY
        - PE
        - PH
        - PN
        - PL
        - PT
        - PR
        - QA
        - MK
        - RO
        - RU
        - RW
        - RE
        - BL
        - SH
        - KN
        - LC
        - MF
        - PM
        - VC
        - WS
        - SM
        - ST
        - SA
        - SN
        - RS
        - SC
        - SL
        - SG
        - SX
        - SK
        - SI
        - SB
        - SO
        - ZA
        - GS
        - SS
        - ES
        - LK
        - SD
        - SR
        - SJ
        - SE
        - CH
        - SY
        - TW
        - TJ
        - TZ
        - TH
        - TL
        - TG
        - TK
        - TO
        - TT
        - TN
        - TR
        - TM
        - TC
        - TV
        - UG
        - UA
        - AE
        - GB
        - UM
        - UY
        - UZ
        - VU
        - VE
        - VN
        - VG
        - VI
        - WF
        - XK
        - EH
        - YE
        - ZM
        - ZW
        - AX
    PolicyPatch:
      type: object
      properties:
        policyNumber:
          type: string
          description: If no policy number is provided, Zinnia will generate policy number
            according to business rules in BPM
          example: "1234567890"
        previousPolicyNumber:
          type: string
          description: Previous policy number in case of Policy Conversion
          example: "1234567890"
        planCode:
          type: string
          description: Plan code for the policy
          example: TL0101
        productType:
          type: string
          enum:
            - INDEXEDUNIVERSALLIFE
            - UNIVERSALLIFE
            - TERM
            - WHOLELIFE
          description: Type of insurance product
          example: INDEXEDUNIVERSALLIFE
        policyStatus:
          type: string
          enum:
            - APPLIEDFOR
            - APPROVED
            - SUBMITTEDTOUNDERWRITING
            - PENDING
            - DECLINED
            - QUOTED
            - RISKNOTACCEPTABLE
            - NOTTAKEN
            - PENDINGISSUED
            - ISSUED
            - CLOSED
            - CANCELLED
            - EXPIRED
            - CONVERSION
          description: Status of the policy
          example: ISSUED
        policyHoldingForm:
          type: string
          enum:
            - INDIVIDUAL
            - GROUP
            - JOINTINDIVIDUAL
          description: Policy holding form (Individual, Organization, or Trust)
          example: INDIVIDUAL
        policyEffectiveDate:
          type: string
          format: date
          pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}$
          description: Date (with pattern "yyyy-mm-dd")
          example: 2022-01-01
        issueState:
          $ref: "#/components/schemas/State"
        issueCountry:
          type: string
          enum:
            - US
          description: Policy Issue Country
          example: US
        coverage:
          $ref: "#/components/schemas/CoveragePatch"
        riders:
          type: array
          items:
            $ref: "#/components/schemas/RiderDetailPatch"
          description: List of riders details
        feature:
          type: object
          properties:
            type:
              type: string
              enum:
                - SURPLUSDISTRIBUTION
              example: SURPLUSDISTRIBUTION
            subType:
              type: string
              enum:
                - PAIDUPADDITION
                - CASH
              example: PAIDUPADDITION
            discounts:
              type: array
              items:
                type: string
                enum:
                  - MULTIPRODUCT
                  - NON
                description: Type of discount
                example: MULTIPRODUCT
          allOf:
            - $ref: "#/components/schemas/NonforfeitureOption"
            - type: object
              properties:
                customFeatures:
                  type: array
                  items:
                    type: string
                  enum:
                    - CONTROLBUSINESSINDICATOR
                    - MULTIPLEPOLICYDISCOUNT
                  description: Custom features
        fundDetails:
          type: array
          items:
            type: object
            properties:
              fundType:
                type: string
                enum:
                  - FIXED
                  - INDEXED
                  - VARIABLE
                description: Type of fund
                example: FIXED
              fundName:
                type: string
                description: >
                  - If fundType FIXED, allowed fundName one of ['Short Term
                  Holding Account', 'Fixed Account', 'Everly Fixed IUL Fund']

                  - If fundType INDEXED, allowed fundName one of ['S&P 500', 'S
                  AND P 500 Price Return Annual Point-to-Point with Cap
                  Account', 'S AND P 500 Price Return Annual Point-to-Point with
                  Participation Rate Account', 'S&P MARC 5% ER']

                  - If fundType VARIABLE, allowed fundName any string
                example: Fixed Account
              percentage:
                type: string
                description: Percentage
                example: "100"
        payment:
          $ref: "#/components/schemas/PaymentV2Patch"
```
