---
title: "PaymentV3"
url: "https://developers.zinnia.com/apis/new-business-annuity/versions/45a989ab-c3aa-4f85-8f67-f05c41747ed7/schemas/PaymentV3"
---

> Full API specification: https://developers.zinnia.com/apis/new-business-annuity/versions/45a989ab-c3aa-4f85-8f67-f05c41747ed7.md

# PaymentV3

## OpenAPI definition

```yaml
openapi: 3.1.0
info:
  title: Zinnia New Business Annuity API
  version: 0.7.0
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:
    TaxInfoV3:
      type: object
      additionalProperties: false
      properties:
        currentContribAmount:
          type: number
          description: Amount of the current-year contribution for tax reporting purposes.
          format: double
          example: 238500.5
        priorContribAmount:
          type: number
          description: Amount of prior-year contributions included in the payment.
          format: double
          example: 238500.5
        taxYear:
          type: string
          description: Tax year to which the contribution applies.
        totalBasis:
          type: number
          description: Total cost basis associated with the payment for tax calculation.
        pretefraBasis:
          type: number
          description: Cost basis attributable to contributions made before TEFRA rules.
        posttefraBasis:
          type: number
          description: Cost basis attributable to contributions made after TEFRA rules.
        post88Amount:
          type: number
          description: Contribution amount made after the 1988 tax law changes.
          format: double
          example: 238500.5
    PolicyHistory:
      type: object
      additionalProperties: false
      required:
        - amount
        - carrier
        - previousPolicyNumber
        - exchangeType
        - addressDetail
      properties:
        previousPolicyNumber:
          type: string
          description: Previous policy number in case of Exchange/Replace
        emailId:
          type: string
          description: Company email address
          example: abc@gmail.com
        carrier:
          type: string
          description: Name of the carrier.
        priorCarrierProcessLocation:
          type: string
          description: Processing location used by the prior carrier for the exchanged
            policy.
        useExistingPolicyFunds:
          type: boolean
          description: Indicates whethe existing policy funds can be used or not.
        amount:
          type: number
          description: Premium amount received for Exhange/Replace application.
          format: double
          example: 238500.5
        status:
          type: string
          description: Policy status
          enum:
            - ACTIVE
            - LAPSED
            - TERMINATED
        replacementCoverageAmount:
          type: number
          description: Represents the total amount from the existing policy being replaced.
          format: double
          example: 238500.5
        issueDate:
          type: string
          description: The official date on which the policy is issued and becomes
            effective.
          format: date
        productType:
          type: string
          description: Indicates the category of the insurance product associated with the
            policy
          enum:
            - MUTUALFUND
            - CERTIFICATEOFDEPOSIT
            - BROKERAGE
            - OTHER
            - LIFE
            - ANNUITY
        productSubType:
          type: string
          description: Subtype of the product involved in an exchange or replacement
            transaction.
          enum:
            - DISABILITY
            - FIXEDINDEXANNUITY
            - FIXEDANNUITYPRODUCTS
            - FIXEDIMMEDIATEANNUITY
            - FIXEDUNIVERSALLIFEINSURANCE
            - FIXEDWHOLELIFEINSURANCE
            - INDEXLIFE
            - INDEXVARIABLEANNUITY
            - LONGTERMCARE
            - MARKETVALUEADJUSTMENT
            - MONEYMARKETPRODUCTS
            - OFFSHOREINVESTMENTPRODUCTS
            - PENSIONPLAN
            - REGISTEREDINDEXANNUITY
            - RETIREMENTPLAN
            - TERMLIFE
            - VARIABLEANNUITYPRODUCTS
            - VARIABLEIMMEDIATEANNUITY
            - VARIABLEUNIVERSALLIFEINSURANCE
            - VARIABLEWHOLELIFEINSURANCE
            - DEFERREDINCOMEANNUITY
            - CONTINGENTDEFERREDANNUITY
        exchangeType:
          type: string
          description: Specifies the type of policy exchange or replacement transaction
            being performed.
          enum:
            - EXTERNAL1035
            - INTERNAL1035
            - EXTERNALDIRECTTRANSFER
            - INTERNALDIRECTTRANSFER
            - EXTERNALROLLOVERQUALIFIED
            - INTERNALROLLOVERQUALIFIED
            - EXTERNALROTHROLLOVER
            - INTERNALROTHROLLOVER
            - EXTERNALROTHDIRECTTRANSFER
            - INTERNALROTHDIRECTTRANSFER
            - BENEFITPROCEEDS
            - CASHCONTRIBUTIONS
            - EXTERNAL1035PARTIAL
            - INTERNAL1035PARTIAL
            - EXTERNALDIRECTTRANSFERREPLACEMENT
            - INTERNALDIRECTTRANSFERREPLACEMENT
            - CLIENTINITIATEDTRANSFER
            - BIRTHORADOPTIONREPAYMENT
        taxId:
          type: string
          description: Tax identification number of the prior carrier or contract owner.
          format: AAA-GG-SSSS
        originalCostBasis:
          type: string
          description: Original cost basis of the policy being exchanged or replaced.
        applyRateLock:
          type: string
          description: Indicator specifying whether a rate lock applies to the exchange or
            replacement.
        priorEstTransValue:
          type: number
          description: Estimated transfer value from the prior policy at the time of
            exchange.
        addressDetail:
          $ref: "#/components/schemas/AddressDetail"
        qualificationType:
          type: string
          description: Indicates the tax qualification status of the policy or account.
          enum:
            - Q401K
            - SOLO401K
            - HEALTHREIMBURSEMENT501C9
            - Q457B
            - HR10KEOGH
            - INHERITEDINDIVIDUALRETIREMENTACCOUNT
            - NONQUALIFIEDSTRETCH
            - INHERITEDROTHINDIVIDUALRETIREMENTACCOUNT
            - INDIVIDUALRETIREMENTACCOUNTREGULAR
            - INDIVIDUALRETIREMENTACCOUNTROLLOVER
            - NONQUALIFIED
            - PENSIONPLAN
            - SALARYREDUCTIONSIMPLIFIEDEMPLOYEEPENSION
            - SIMPLIFIEDEMPLOYEEPENSIONINDIVIDUALRETIREMENTACCOUNT
            - INDIVIDUALRETIREMENTACCOUNTSPOUSAL
            - INDIVIDUALRETIREMENTACCOUNTTRANSFER
            - CASHBALANCEPLANDEFINEDCONTRIBUTIONS
            - CASHBALANCEPLANDEFINEDBENEFIT
            - SOLODEFINEDBENEFIT
            - Q403B
            - Q401GFORMERLY403G
            - Q412IPLAN
            - INDIVIDUALRETIREMENTACCOUNTSIMPLE
            - ROTHINDIVIDUALRETIREMENTACCOUNT
            - ROTH401K
            - ROTH403B
            - EDUCATIONALINDIVIDUALRETIREMENTACCOUNT
            - PROFITSHARINGPLAN
            - MONEYPURCHASEPLAN
            - WELFAREBENEFITPLAN419PLAN
            - LONGTERMCARE7702B
            - NOUNITEDSTATESTAXATIONUSEDFOROFFSHOREPRODUCTS
            - Q401A
            - TEXASOPTIONALRETIREMENTPROGRAM
            - TARGETBENEFITPLAN
            - Q403BTRANSFERSONLY
            - ROTH457
            - CUSTODIALINDIVIDUALRETIREMENTACCOUNT
            - CUSTODIALROTHINDIVIDUALRETIREMENTACCOUNT
            - CUSTODIALROLLOVERINDIVIDUALRETIREMENTACCOUNT
            - CONVERTEDROTHINDIVIDUALRETIREMENTACCOUNT
            - CUSTODIALINHERITEDINDIVIDUALRETIREMENTACCOUNT
            - CUSTODIALINHERITEDROTHINDIVIDUALRETIREMENTACCOUNT
            - CUSTODIALSPOUSEINDIVIDUALRETIREMENTACCOUNT
            - CUSTODIALINDIVIDUALRETIREMENTACCOUNTSIMPLIFIEDEMPLOYEEPENSION
            - QUALIFIED
            - UNIFORMGIFTSORTRANSFERSTOMINORACT
            - CONVERTEDINDIVIDUALRETIREMENTACCOUNT
            - CORPORATEPENSION
            - GROUPTAXSHELTEREDANNUITY
            - CORPORATEDEFERREDCOMPENSATION404
            - QN457B
            - CONVERTED
            - SPOUSAL
            - CUSTODIAL
        mecIndicator:
          type: string
          description: Indicates whether the policy is classified as a Modified Endowment
            Contract (MEC) or not Default = False
          enum:
            - YES
            - NO
        internalExcInd:
          type: string
          description: Yes/No indicator that identifies whether the exchange is an
            internal exchange within the same carrier.
          enum:
            - YES
            - NO
        exchangeDate:
          type: string
          description: Date on which the old policy is replaced by the new one.
          format: date
    BankInformationV3:
      type: object
      additionalProperties: false
      properties:
        bankId:
          type: string
          description: Unique identifier for the bank associated with the account.
        nameOnAccount:
          type: string
          description: Name of the account holder as it appears on the bank account.
        accountStatus:
          type: string
          description: Current status of the bank account.
        accountNumber:
          type: string
          description: Bank account number used for transactions.
        routingNumber:
          type: string
          description: Bank routing number used to identify the financial institution.
        accountType:
          type: string
          description: Type of bank account, such as checking or savings.
          enum:
            - CHECKING
            - MONEYMARKETACCOUNT
            - BROKERAGEACCOUNT
            - CREDITCARD
            - DEBITCARD
            - DIGITALPAYMENT
            - MUTUALFUND
            - SAVINGS
            - CERTIFICATEOFDEPOSIT
        ibaNumber:
          type: string
          description: International Bank Account (IBA) number associated with the account.
        abaNumber:
          type: string
          description: American Bankers Association (ABA) number used to identify the bank.
        bankName:
          type: string
          description: Name of the bank branch associated with the account.
        address:
          $ref: "#/components/schemas/BankAddress"
    AddressDetail:
      type: object
      additionalProperties: false
      required:
        - addressType
        - addressLine1
      properties:
        addressType:
          type: string
          description: Type of address
          enum:
            - RESIDENCE
            - BUSINESS
            - POBOX
            - SEASONAL
            - SECONDARY
            - MAILING
        addressLine1:
          type: string
          description: Address Line 1
        addressLine2:
          type: string
          description: Address Line 2
        addressLine3:
          type: string
          description: Address Line 3
        city:
          type: string
          description: City of residence for the prior carrier or policy owner.
        state:
          type: string
          description: state of residence for the prior carrier or policy owner.
        zipCode:
          type: string
          description: ZIP code (5 digits)
        country:
          type: string
          description: Two letter ISO Country Code
    BankAddress:
      type: object
      additionalProperties: false
      properties:
        addressType:
          type: string
          description: Bank Address Type
          enum:
            - RESIDENCE
            - BUSINESS
            - POBOX
            - SEASONAL
            - SECONDARY
            - MAILING
        addressLine1:
          type: string
          description: Bank Address Line 1
        addressLine2:
          type: string
          description: Bank Address Line 2
        addressLine3:
          type: string
          description: Bank Address Line 3
        city:
          type: string
          description: State in which the bank is located.
        state:
          type: string
          description: State in which the bank is located.
        zipCode:
          type: string
          description: Zip code (5 Digit)
        zipCodeExt:
          type: string
          description: Zip extension (4 Digit)
        country:
          type: string
          description: Country in which the bank is located.
    PaymentV3:
      type: object
      additionalProperties: false
      required:
        - paymentId
        - netAmount
        - grossAmount
        - method
        - currentAlloc
      properties:
        paymentId:
          type: string
          description: Unique id for the payment made
          format: Integer
        referenceNumber:
          type: string
          description: Reference Numbe for the payment made
        netAmount:
          type: string
          description: Premium received (Net Amount)
          format: double
          example: "238500.50"
        grossAmount:
          type: string
          description: Premium received (Gross Amount)
          format: double
          example: "238500.50"
        method:
          type: string
          description: Method through which the payment is made
          enum:
            - CREDITCARD
            - DEBITCARD
            - CHECK
            - ACH
            - DIGITALPAYMENT
            - WIRE
            - DTCC
            - EXCHANGE
            - PAYROLLDEDUCTION
        internalExchIndicator:
          type: string
          description: DTCC defined Indicator that states whether an exchange type
            application is internal of external.
          enum:
            - YES
            - NO
        withdrawalIndicator:
          type: string
          description: Premium received withdrawal indicator
          enum:
            - FULL
            - PARTIAL
        partialWithdrawType:
          type: string
          description: If Withdrawal indicator is input then Partial Withdrawal Type
            become mandatory
          enum:
            - SPECIFIEDAMOUNTWITHDRAWAL
            - PERCENTOFCONTRACTWITHDRAWAL
            - PERCENTOFCONTRACTPREMIUMWITHDRAWAL
            - PERCENTOFFUNDWITHDRAWAL
            - RIDERFREEAMOUNTWITHDRAWAL
            - SURRENDERFREEAMOUNTWITHDRAWALPENALTYFREEWITHDRAWAL
            - INTERESTONLYWITHDRAWAL
            - REQUIREDMINIMUMDISTRIBUTIONWITHDRAWAL
            - SUBSTANTIALLYEQUALPAYMENTS
            - INTERESTONLYSURRENDERFREEAMOUNTWITHDRAWAL
            - REQUIREMENTMINIMUMDISTRIBUTIONCALCULATED
            - REQUIREMENTMINIMUMDISTRIBUTIONSPECIFIEDAMOUNT
        surrenderingDateInstruction:
          type: string
          description: If Withdrawal indicator is input then Partial Withdrawal Type
            become mandatory
          enum:
            - UPONRECEIPT
            - SPECIFICDATE
        frequency:
          type: string
          description: Frequency of premium payments
          enum:
            - DAILY
            - EVERYTWOWEEKS
            - MONTHLY
            - SEMIANNUAL
            - QUARTERLY
            - ANNUAL
            - SINGLEPAYMENT
        paymentDate:
          type: string
          format: date
          description: Date when the payment is made (with pattern “yyyy-mm-dd”)
        draftDate:
          type: string
          format: date
          description: Date when the payment draft is created (with pattern “yyyy-mm-dd”)
        externalTransactionId:
          type: string
          description: Transaction ID from external system
        externalArrangementId:
          type: string
          description: Arrangement ID from external system
        automaticPayment:
          type: boolean
          description: Whhether this payment is automatic - TRUE/FALSE
        premType:
          type: string
          description: DTCC-defined code identifying the type of premium payment.
          enum:
            - DIRECTROLLOVER
            - INDIRECTROLLOVER
            - CONTRIBUTION
            - FULL1035EXCHANGE
            - PARTIAL1035EXCHANGE
            - QUALIFIEDTRANSFER
            - NONQUALIFIEDTRANSFEROFASSETS
            - EMPLOYEECONTRIBUTION
            - EMPLOYERCONTRIBUTION
        currentAlloc:
          type: string
          description: Indicates whether Funds to be considered for Future Allocations or
            not
          enum:
            - YES
            - NO
        waivePremium:
          type: string
          description: Indicator specifying whether the premium is waived.
        distributorId:
          type: string
          description: This is same as Tracking ID.If there are multiple payments, first
            payment distributorId will be the TrackingID. This unique system
            generated number is assigned by the B/D system and sent with each
            premium to the NSCC, to send to the Insurance Company. This number
            is assigned by the broker dealer, by which the premium can be
            located. Required for clearing house and detail level transactions.
            Broker/dealer would expect this back for chargebacks, reversals,
            etc. Can be returned on the "FAR" and the "COM" by the insurance
            carrier to identify the transaction processed.
        party:
          type: array
          description: Associated PartyIds for given payment
          items:
            type: string
            description: Party ID associated with this payment.
            format: uuid
        taxInfo:
          $ref: "#/components/schemas/TaxInfoV3"
        policyHistory:
          $ref: "#/components/schemas/PolicyHistory"
        bankInformation:
          $ref: "#/components/schemas/BankInformationV3"
```
