cdac.medinfo.sdk.hl7282.baselibs.segments

## Class IVC

- java.lang.Object
- - cdac.medinfo.sdk.hl7282.baselibs.segments.Segment
  - - cdac.medinfo.sdk.hl7282.baselibs.segments.IVC

- All Implemented Interfaces:
    ISegment

      public class IVC
      extends Segment

  IVC - Invoice Segment

  Represents an HL7 IVC message segment. This segment has the following fields:

  IVC-1 Provider Invoice Number (EI)Required
  IVC-2 Payer Invoice Number (EI) Optional
  IVC-3 Contract/Agreement Number (EI) Optional
  IVC-4 Invoice Control (CWE) Required
  IVC-5 Invoice Reason (CWE) Required
  IVC-6 Invoice Type (CWE) Required
  IVC-7 Invoice Date/Time (DTM) Required
  IVC-8 Invoice Amount (CP) Required
  IVC-9 Payment Terms (ST) Optional
  IVC-10 Provider Organization (XON) Required
  IVC-11 Payer Organization (XON) Required
  IVC-12 Attention (XCN) Optional
  IVC-13 Last Invoice Indicator (ID) Optional
  IVC-14 Invoice Booking Period (DTM)Optional
  IVC-15 Origin (ST) Optional
  IVC-16 Invoice Fixed Amount (CP) Optional
  IVC-17 Special Costs (CP) Optional
  IVC-18 Amount for Doctors Treatment (CP) Optional
  IVC-19 Responsible Physician (XCN) Optional
  IVC-20 Cost Center (CX) Optional
  IVC-21 Invoice Prepaid Amount (CP) Optional
  IVC-22 Total Invoice Amount without Prepaid Amount (CP) Optional
  IVC-23 Total-Amount of VAT (CP) Conditional
  IVC-24 VAT-Rates applied (NM) Optional
  IVC-25 Benefit group (CWE) Required
  IVC-26 Provider Tax ID (ST) Optional
  IVC-27 Payer Tax ID (ST) Optional
  IVC-28 Provider Tax Status (CWE) Optional
  IVC-29 Payer Tax Status (CWE) Optional
  IVC-30 Sales Tax ID (ST) Optional
  This class provides mechanism to validate message against HL7 v 2.8.2 standard. The class provides accessors & mutators for the elements mentioned above. The class has validate method which validates Message against HL7 v 2.8.2 standard.

  User can also create Segment through `SegmentFactory`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `IVC()` Constructs the IVC segment.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addVATRatesApplied(NM objVATRatesApplied)` Set VAT-Rates applied (NM) This field tells us Applied VAT Rates on Invoice.
    `void` | `addVATRatesApplied(java.lang.String strVATRatesAmount)` Set VAT-Rates applied (NM) This field tells us Applied VAT Rates on Invoice.
    `CP` | `getAmountForDoctorsTreatment()` Retrieve Amount for Doctors Treatment (CP) This field tells about Special amount for doctor's treatment.
    `XCN` | `getAttention()` Retrieve Attention (XCN) This field is about Attention to individual in Payer Organization who needs to review this Invoice.
    `CWE` | `getBenefitGroup()` Retrieve Benefit group (CWE) This field is about Code indicating the Benefit group.
    `EI` | `getContractOrAgreementNumber()` Retrieve Contract/Agreement Number (EI) This field defines about Contract/agreement number issued by Payer which must be specified in some circumstances by the Provider.
    `CX` | `getCostCenter()` Retrieve Cost Center (CX) Cost centers are organizational units or activities that provide goods and services.
    `CP` | `getInvoiceAmount()` Retrieve Invoice Amount (CP) This field is all about Sum total of Product/Service Billed Amount on PSL for all Product/Service Line Items for this Invoice.
    `DTM` | `getInvoiceBookingPeriod()` Retrieve Invoice Booking Period (DTM) This field is about Period in which the invoice must be booked.
    `CWE` | `getInvoiceControl()` Retrieve Invoice Control (CWE) This field is to explain about Code describing reason for this Invoice.
    `DTM` | `getInvoiceDateOrTime()` Retrieve Invoice Date/Time (DTM) This field tells about Date Invoice was created.
    `CP` | `getInvoiceFixedAmount()` Retrieve Invoice Fixed Amount (CP) This field is about Fixed Amount for this invoice.
    `CP` | `getInvoicePrepaidAmount()` Retrieve Invoice Prepaid Amount (CP) This field tells about Deposit paid to the service Provider prior to admission.
    `CWE` | `getInvoiceReason()` Retrieve Invoice Reason (CWE) This field is to explain about Code describing reason for this Invoice.
    `CWE` | `getInvoiceType()` Retrieve Invoice Type (CWE) This field is to explain about Code indicating the type of Invoice.
    `ID` | `getLastInvoiceIndicator()` Retrieve Last Invoice Indicator (ID) This field Can be set to indicate that this is the last Invoice for a particular Case, Claim and/or Encounter.
    `ST` | `getOrigin()` Retrieve Origin (ST) This field is about Responsible Person for this specific invoice.
    `EI` | `getPayerInvoiceNumber()` Retrieve Payer Invoice Number (EI) This field is about Unique Invoice Number assigned by the Payer Application.
    `XON` | `getPayerOrganization()` Retrieve Payer Organization (XON) The business organization that is designated as Payer for this Invoice.
    `ST` | `getPayerTaxID()` Retrieve Payer Tax ID (ST) This field is about The Tax ID of the Payer (general Tax identification number or VAT number).
    `CWE` | `getPayerTaxStatus()` Retrieve Payer Tax Status (CWE) This field is about Code indicating the Payer Tax Status.
    `ST` | `getPaymentTerms()` Retrieve Payment Terms (ST) This field is about Terms for Payer payment of Invoice
    `EI` | `getProviderInvoiceNumber()` Retrieve Provider Invoice Number (EI) This Field is Unique Invoice Number assigned by the Provider Application.
    `XON` | `getProviderOrganization()` Retrieve Provider Organization (XON) Business organization that is responsible for the invoice.
    `ST` | `getProviderTaxID()` Retrieve Provider Tax ID (ST) This field is about The Tax ID of the Provider (general Tax identification number or VAT number).
    `CWE` | `getProviderTaxStatus()` Retrieve Provider Tax Status (CWE) This field is about Code indicating the Provider Tax Status.
    `XCN` | `getResponsiblePhysician()` Retrieve Responsible Physician (XCN) This field is about Doctor who is responsible for this invoice.
    `ST` | `getSalesTaxID()` Retrieve Sales Tax ID (ST) This field is about The Tax ID of the Sales (general Tax identification number or VAT number).
    `CP` | `getSpecialCosts()` Retrieve Special Costs (CP) This field tells about Special costs for this invoice.
    `CP` | `getTotlaAmountOfVAT()` Retrieve Total-Amount of VAT (CP) This field tells about Total Amount of VAT included in the Total Invoice Amount (IVC-8).
    `CP` | `getTotlaInvoiceAmountWithoutPrepaidAmount()` Retrieve Total Invoice Amount without Prepaid Amount (CP) This field tells about Total amount of Invoice without the prepaid deposit .
    `ISingleCollection<NM>` | `getVATRatesApplied()` Retrieve VAT-Rates applied (NM) This field tells us Applied VAT Rates on Invoice.
    `void` | `setAmountForDoctorsTreatment(CP objAmountForDoctorsTreatment)` Set Amount for Doctors Treatment (CP) This field is about Special amount for doctor's treatment.
    `void` | `setAmountForDoctorsTreatment(MO objPrice, java.lang.String strPriceType, java.lang.String strFormValue, java.lang.String strToValue, CWE objRangeUnits, java.lang.String strRangeType)` Set Amount for Doctors Treatment (CP) This field is about Special amount for doctor's treatment.
    `void` | `setAttention(java.lang.String strIDNumber, FN objFamilyName, java.lang.String strGivenName, java.lang.String strSecondAndFurtherGivenNamesOrInitialsThereof, java.lang.String strSuffix, java.lang.String strPrefix, CWE objSourceTable, HD objAssigningAuthority, java.lang.String strNameTypeCode, java.lang.String strIdentifierCheckDigit, java.lang.String strCheckDigitScheme, java.lang.String strIdentifierTypeCode, HD objAssigningFacility, java.lang.String strNameRepresentationCode, CWE objNameContext, java.lang.String strNameAssemblyOrder, java.lang.String strEffectiveDate, java.lang.String strExpirationDate, java.lang.String strProfessionalSuffix, CWE objAssigningJurisdiction, CWE objAssigningAgencyOrDepratment, java.lang.String strSecurityCheck, java.lang.String strSecurityCheckScheme)` Set Attention (XCN) This field is about Attention to individual in Payer Organization who needs to review this Invoice.
    `void` | `setAttention(XCN objAttention)` Set Attention (XCN) This field is about Attention to individual in Payer Organization who needs to review this Invoice.
    `void` | `setBenefitGroup(CWE objBenefitGroup)` Set Benefit group (CWE) This field is about Code indicating the Benefit group.
    `void` | `setBenefitGroup(java.lang.String strIdentifier, java.lang.String strText, java.lang.String strNameOfCodingSystem, java.lang.String strAlternateIdentifier, java.lang.String strAlternateText, java.lang.String strNameOfAlternateCodingSystem, java.lang.String strCodingSystemVersionID, java.lang.String strAlternateCodingSystemVersionId, java.lang.String strOriginalText, java.lang.String strSecondAlternateIdentifier, java.lang.String strSecondAlternateText, java.lang.String strNameofSecondAlternateCodingSystem, java.lang.String strSecondAlternateCodingSystemVersionID, java.lang.String strCodingSystemOID, java.lang.String strValueSetOID, java.lang.String strValueSetVersionID, java.lang.String strAlternateCodingSystemOID, java.lang.String strAlternateValueSetOID, java.lang.String strAlternateValueSetVersionID, java.lang.String strSecondAlternateCodingSystemOID, java.lang.String strSecondAlternateValueSetOID, java.lang.String strSecondAlternateValueSetVersionID)` Set Benefit group (CWE) This field is about Code indicating the Benefit group.
    `void` | `setContractOrAgreementNumber(EI objContractOrAgreementNumber)` Set Contract/Agreement Number (EI) This field defines about Contract/agreement number issued by Payer which must be specified in some circumstances by the Provider.
    `void` | `setContractOrAgreementNumber(java.lang.String strEntityIdentifier, java.lang.String strNamespaceID, java.lang.String strUniversalID, java.lang.String strUniversalIDType)` Set Contract/Agreement Number (EI) This field defines about Contract/agreement number issued by Payer which must be specified in some circumstances by the Provider.
    `void` | `setCostCenter(CX objCostCenter)` Set Cost Center (CX) Cost centers are organizational units or activities that provide goods and services.
    `void` | `setCostCenter(java.lang.String strIDNumber, java.lang.String strCheckDigit, java.lang.String strCheckDigitScheme, HD objAssigningAuthority, java.lang.String strIdentifierTypeCode, HD objAssigningFacility, java.lang.String strEffectiveDate, java.lang.String strExpirationDate, CWE objAssigningJurisdiction, CWE objAssigningAgencyOrDepartment, java.lang.String strSecurityCheck, java.lang.String strSecurityCheckScheme)` Set Cost Center (CX) Cost centers are organizational units or activities that provide goods and services.
    `void` | `setInvoiceAmount(CP objInvoiceAmount)` Retrieve Invoice Amount (CP) This field is all about Sum total of Product/Service Billed Amount on PSL for all Product/Service Line Items for this Invoice.
    `void` | `setInvoiceAmount(MO objPrice, java.lang.String strPriceType, java.lang.String strFormValue, java.lang.String strToValue, CWE objRangeUnits, java.lang.String strRangeType)` Retrieve Invoice Amount (CP) This field is all about Sum total of Product/Service Billed Amount on PSL for all Product/Service Line Items for this Invoice.
    `void` | `setInvoiceBookingPeriod(DTM objInvoiceBookingPeriod)` Set Invoice Booking Period (DTM) This field is about Period in which the invoice must be booked.
    `void` | `setInvoiceBookingPeriod(java.lang.String strInvoiceBookingPeriod)` Set Invoice Booking Period (DTM) This field is about Period in which the invoice must be booked.
    `void` | `setInvoiceControl(CWE objInvoiceControl)` Set Invoice Control (CWE) This field is to explain about Code indicating what action is being performed by this message.
    `void` | `setInvoiceControl(java.lang.String strIdentifier, java.lang.String strText, java.lang.String strNameOfCodingSystem, java.lang.String strAlternateIdentifier, java.lang.String strAlternateText, java.lang.String strNameOfAlternateCodingSystem, java.lang.String strCodingSystemVersionID, java.lang.String strAlternateCodingSystemVersionId, java.lang.String strOriginalText, java.lang.String strSecondAlternateIdentifier, java.lang.String strSecondAlternateText, java.lang.String strNameofSecondAlternateCodingSystem, java.lang.String strSecondAlternateCodingSystemVersionID, java.lang.String strCodingSystemOID, java.lang.String strValueSetOID, java.lang.String strValueSetVersionID, java.lang.String strAlternateCodingSystemOID, java.lang.String strAlternateValueSetOID, java.lang.String strAlternateValueSetVersionID, java.lang.String strSecondAlternateCodingSystemOID, java.lang.String strSecondAlternateValueSetOID, java.lang.String strSecondAlternateValueSetVersionID)` Set Invoice Control (CWE) This field is to explain about Code describing reason for this Invoice
    `void` | `setInvoiceDateOrTime(DTM objInvoiceDateOrTime)` Set Invoice Date Or Time (DTM) This field tells about Date Invoice was created.
    `void` | `setInvoiceDateOrTime(java.lang.String strInvoiceDateOrTime)` Set Invoice Date Or Time (DTM) This field tells about Date Invoice was created.
    `void` | `setInvoiceFixedAmount(CP objInvoiceFixedAmount)` Set Invoice Fixed Amount (CP) This field is about Fixed Amount for this invoice.
    `void` | `setInvoiceFixedAmount(MO objPrice, java.lang.String strPriceType, java.lang.String strFormValue, java.lang.String strToValue, CWE objRangeUnits, java.lang.String strRangeType)` Set Invoice Fixed Amount (CP) This field is about Fixed Amount for this invoice.
    `void` | `setInvoicePrepaidAmount(CP objInvoicePrepaidAmount)` Set Invoice Prepaid Amount (CP) This field is about Deposit paid to the service Provider prior to admission.
    `void` | `setInvoicePrepaidAmount(MO objPrice, java.lang.String strPriceType, java.lang.String strFormValue, java.lang.String strToValue, CWE objRangeUnits, java.lang.String strRangeType)` Set Invoice Prepaid Amount (CP) This field is about Deposit paid to the service Provider prior to admission.
    `void` | `setInvoiceReason(CWE objInvoiceReason)` Set Invoice Reason (CWE) This field is to explain about Code describing reason for this Invoice.
    `void` | `setInvoiceReason(java.lang.String strIdentifier, java.lang.String strText, java.lang.String strNameOfCodingSystem, java.lang.String strAlternateIdentifier, java.lang.String strAlternateText, java.lang.String strNameOfAlternateCodingSystem, java.lang.String strCodingSystemVersionID, java.lang.String strAlternateCodingSystemVersionId, java.lang.String strOriginalText, java.lang.String strSecondAlternateIdentifier, java.lang.String strSecondAlternateText, java.lang.String strNameofSecondAlternateCodingSystem, java.lang.String strSecondAlternateCodingSystemVersionID, java.lang.String strCodingSystemOID, java.lang.String strValueSetOID, java.lang.String strValueSetVersionID, java.lang.String strAlternateCodingSystemOID, java.lang.String strAlternateValueSetOID, java.lang.String strAlternateValueSetVersionID, java.lang.String strSecondAlternateCodingSystemOID, java.lang.String strSecondAlternateValueSetOID, java.lang.String strSecondAlternateValueSetVersionID)` Set Invoice Reason (CWE) This field is to explain about Code describing reason for this Invoice.
    `void` | `setInvoiceType(CWE objInvoiceType)` Set Invoice Type (CWE) This field is to explain about Code indicating the type of Invoice.
    `void` | `setInvoiceType(java.lang.String strIdentifier, java.lang.String strText, java.lang.String strNameOfCodingSystem, java.lang.String strAlternateIdentifier, java.lang.String strAlternateText, java.lang.String strNameOfAlternateCodingSystem, java.lang.String strCodingSystemVersionID, java.lang.String strAlternateCodingSystemVersionId, java.lang.String strOriginalText, java.lang.String strSecondAlternateIdentifier, java.lang.String strSecondAlternateText, java.lang.String strNameofSecondAlternateCodingSystem, java.lang.String strSecondAlternateCodingSystemVersionID, java.lang.String strCodingSystemOID, java.lang.String strValueSetOID, java.lang.String strValueSetVersionID, java.lang.String strAlternateCodingSystemOID, java.lang.String strAlternateValueSetOID, java.lang.String strAlternateValueSetVersionID, java.lang.String strSecondAlternateCodingSystemOID, java.lang.String strSecondAlternateValueSetOID, java.lang.String strSecondAlternateValueSetVersionID)` Set Invoice Type (CWE) This field is to explain about Code indicating the type of Invoice.
    `void` | `setLastInvoiceIndicator(ID objlastInvoiceIndicator)` Set Last Invoice Indicator (ID) This field Can be set to indicate that this is the last Invoice for a particular Case, Claim and/or Encounter.
    `void` | `setLastInvoiceIndicator(java.lang.String strlastInvoiceIndicator)` Set Last Invoice Indicator (ID) This field Can be set to indicate that this is the last Invoice for a particular Case, Claim and/or Encounter.
    `void` | `setOrigin(ST objOrigin)` Set Origin (ST) This field is about Responsible Person for this specific invoice.
    `void` | `setOrigin(java.lang.String strOrigin)` Set Origin (ST) This field is about Responsible Person for this specific invoice.
    `void` | `setPayerInvoiceNumber(EI objPayerInvoiceNumber)` Set Provider Invoice Number (EI) This Field is Unique Invoice Number assigned by the Payer Application.
    `void` | `setPayerInvoiceNumber(java.lang.String strEntityIdentifier, java.lang.String strNamespaceID, java.lang.String strUniversalID, java.lang.String strUniversalIDType)` Set Payer Invoice Number (EI) This Field is Unique Invoice Number assigned by the Payer Application.
    `void` | `setPayerOrganization(java.lang.String strOrganizationName, CWE objOrganizationNameTypeCode, HD objAssigningAuthority, java.lang.String strIdentifierTypeCode, HD objAssigningFacility, java.lang.String strNameRepresentationCode, java.lang.String strOrganizationIdentifier)` Set Payer Organization (XON) The business organization that is designated as Payer for this Invoice.
    `void` | `setPayerOrganization(XON objPayerOrganization)` Set Payer Organization (XON) The business organization that is designated as Payer for this Invoice.
    `void` | `setPayerTaxID(ST objPayerTaxID)` Set Sales Tax ID (ST) This field is about The Tax ID of the Sales (general Tax identification number or VAT number).
    `void` | `setPayerTaxID(java.lang.String strPayerTaxID)` Set Payer Tax ID (ST) This field is about The Tax ID of the Payer (general Tax identification number or VAT number).
    `void` | `setPayerTaxStatus(CWE objPayerTaxStatus)` Set Payer Tax Status (CWE) This field is about Code indicating the Payer Tax Status.
    `void` | `setPayerTaxStatus(java.lang.String strIdentifier, java.lang.String strText, java.lang.String strNameOfCodingSystem, java.lang.String strAlternateIdentifier, java.lang.String strAlternateText, java.lang.String strNameOfAlternateCodingSystem, java.lang.String strCodingSystemVersionID, java.lang.String strAlternateCodingSystemVersionId, java.lang.String strOriginalText, java.lang.String strSecondAlternateIdentifier, java.lang.String strSecondAlternateText, java.lang.String strNameofSecondAlternateCodingSystem, java.lang.String strSecondAlternateCodingSystemVersionID, java.lang.String strCodingSystemOID, java.lang.String strValueSetOID, java.lang.String strValueSetVersionID, java.lang.String strAlternateCodingSystemOID, java.lang.String strAlternateValueSetOID, java.lang.String strAlternateValueSetVersionID, java.lang.String strSecondAlternateCodingSystemOID, java.lang.String strSecondAlternateValueSetOID, java.lang.String strSecondAlternateValueSetVersionID)` Set Payer Tax Status (CWE) This field is about Code indicating the Payer Tax Status.
    `void` | `setPaymentTerms(ST objPaymentTerms)` Set Payment Terms (ST) This field is about Terms for Payer payment of Invoice.
    `void` | `setPaymentTerms(java.lang.String strPaymentTerms)` Set Payment Terms (ST) This field is about Terms for Payer payment of Invoice.
    `void` | `setProviderInvoiceNumber(EI objProviderInvoiceNumber)` Set Provider Invoice Number (EI) This Field is Unique Invoice Number assigned by the Provider Application.
    `void` | `setProviderInvoiceNumber(java.lang.String strEntityIdentifier, java.lang.String strNamespaceID, java.lang.String strUniversalID, java.lang.String strUniversalIDType)` Set Provider Invoice Number (EI) This Field is Unique Invoice Number assigned by the Provider Application.
    `void` | `setProviderOrganization(java.lang.String strOrganizationName, CWE objOrganizationNameTypeCode, HD objAssigningAuthority, java.lang.String strIdentifierTypeCode, HD objAssigningFacility, java.lang.String strNameRepresentationCode, java.lang.String strOrganizationIdentifier)` Set Provider Organization (XON) Business organization that is responsible for the invoice.
    `void` | `setProviderOrganization(XON objProviderOrganization)` Set Provider Organization (XON) Business organization that is responsible for the invoice.
    `void` | `setProviderTaxID(ST objProviderTaxID)` Set Provider Tax ID (ST) This field is about The Tax ID of the Provider (general Tax identification number or VAT number).
    `void` | `setProviderTaxID(java.lang.String strProviderTaxID)` Set Provider Tax ID (ST) This field is about The Tax ID of the Provider (general Tax identification number or VAT number).
    `void` | `setProviderTaxStatus(CWE objProviderTaxStatus)` Set Provider Tax Status (CWE) This field is about Code indicating the Provider Tax Status.
    `void` | `setProviderTaxStatus(java.lang.String strIdentifier, java.lang.String strText, java.lang.String strNameOfCodingSystem, java.lang.String strAlternateIdentifier, java.lang.String strAlternateText, java.lang.String strNameOfAlternateCodingSystem, java.lang.String strCodingSystemVersionID, java.lang.String strAlternateCodingSystemVersionId, java.lang.String strOriginalText, java.lang.String strSecondAlternateIdentifier, java.lang.String strSecondAlternateText, java.lang.String strNameofSecondAlternateCodingSystem, java.lang.String strSecondAlternateCodingSystemVersionID, java.lang.String strCodingSystemOID, java.lang.String strValueSetOID, java.lang.String strValueSetVersionID, java.lang.String strAlternateCodingSystemOID, java.lang.String strAlternateValueSetOID, java.lang.String strAlternateValueSetVersionID, java.lang.String strSecondAlternateCodingSystemOID, java.lang.String strSecondAlternateValueSetOID, java.lang.String strSecondAlternateValueSetVersionID)` Set Provider Tax Status (CWE) This field is about Code indicating the Provider Tax Status.
    `void` | `setResponsiblePhysician(java.lang.String strIDNumber, FN objFamilyName, java.lang.String strGivenName, java.lang.String strSecondAndFurtherGivenNamesOrInitialsThereof, java.lang.String strSuffix, java.lang.String strPrefix, CWE objSourceTable, HD objAssigningAuthority, java.lang.String strNameTypeCode, java.lang.String strIdentifierCheckDigit, java.lang.String strCheckDigitScheme, java.lang.String strIdentifierTypeCode, HD objAssigningFacility, java.lang.String strNameRepresentationCode, CWE objNameContext, java.lang.String strNameAssemblyOrder, java.lang.String strEffectiveDate, java.lang.String strExpirationDate, java.lang.String strProfessionalSuffix, CWE objAssigningJurisdiction, CWE objAssigningAgencyOrDepratment, java.lang.String strSecurityCheck, java.lang.String strSecurityCheckScheme)` Set Responsible Physician (XCN) This field is about Doctor who is responsible for this invoice.
    `void` | `setResponsiblePhysician(XCN objResponsiblePhysician)` Set Responsible Physician (XCN) This field is about Doctor who is responsible for this invoice.
    `void` | `setSalesTaxID(ST objSalesTaxID)` Set Sales Tax ID (ST) This field is about The Tax ID of the Sales (general Tax identification number or VAT number).
    `void` | `setSalesTaxID(java.lang.String strSalesTaxID)` Set Sales Tax ID (ST) This field is about The Tax ID of the Sales (general Tax identification number or VAT number).
    `void` | `setSpecialCosts(CP objSpecialCosts)` Set Special costs (CP) This field is about Special costs for this invoice.
    `void` | `setSpecialCosts(MO objPrice, java.lang.String strPriceType, java.lang.String strFormValue, java.lang.String strToValue, CWE objRangeUnits, java.lang.String strRangeType)` Set Special costs (CP) This field is about Special costs for this invoice.
    `void` | `setTotalAmountOfVAT(CP objTotalAmountOfVAT)` Set Total-Amount of VAT (CP) This field is about Total Amount of VAT included in the Total Invoice Amount (IVC-8).
    `void` | `setTotalAmountOfVAT(MO objPrice, java.lang.String strPriceType, java.lang.String strFormValue, java.lang.String strToValue, CWE objRangeUnits, java.lang.String strRangeType)` Set Total-Amount of VAT (CP) This field is about Total Amount of VAT included in the Total Invoice Amount (IVC-8).
    `void` | `setTotalInvoiceAmountWithoutPrepaidAmount(CP objTotalInvoiceAmountWithoutPrepaidAmount)` Set Total Invoice Amount without Prepaid Amount (CP) This field is about Total amount of Invoice without the prepaid deposit.
    `void` | `setTotalInvoiceAmountWithoutPrepaidAmount(MO objPrice, java.lang.String strPriceType, java.lang.String strFormValue, java.lang.String strToValue, CWE objRangeUnits, java.lang.String strRangeType)` Set Total Invoice Amount without Prepaid Amount (CP) This field is about Total amount of Invoice without the prepaid deposit .
    `void` | `setVATRatesApplied(ISingleCollection<NM> objVATRatesAppliedList)` Set VAT-Rates applied (NM) This field tells us Applied VAT Rates on Invoice.
    `boolean` | `validate()` Validates HL7 Message objects .

    - ### Methods inherited from class cdac.medinfo.sdk.hl7282.baselibs.segments.Segment

      `addUnRecognizedField, dumpSegment, getFields, getName, getUnrecognizedFields, moveToNextSegment, parse, removeDataElement, removeDataElement, serialize, setName, setUnRecognizedField, updateDataElement, updateDataElement, writeToXML`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### IVC

          public IVC()

      Constructs the IVC segment.

  - ### Method Detail

    - #### getProviderInvoiceNumber

          public EI getProviderInvoiceNumber()

      Retrieve Provider Invoice Number (EI) This Field is Unique Invoice Number assigned by the Provider Application.
      Returns:
        EI - object of provider invoice number.

    - #### setProviderInvoiceNumber

          public void setProviderInvoiceNumber(java.lang.String strEntityIdentifier,
                                      java.lang.String strNamespaceID,
                                      java.lang.String strUniversalID,
                                      java.lang.String strUniversalIDType)

      Set Provider Invoice Number (EI) This Field is Unique Invoice Number assigned by the Provider Application.
      Parameters:
        `strEntityIdentifier` - - string of character use to identify the entity.
        `strNamespaceID` - - Use to identify the name space id..
        `strUniversalID` - - Use to identify the name space identity.
        `strUniversalIDType` - - String of characters describe Universal Id Type.

    - #### setProviderInvoiceNumber

          public void setProviderInvoiceNumber(EI objProviderInvoiceNumber)

      Set Provider Invoice Number (EI) This Field is Unique Invoice Number assigned by the Provider Application.
      Parameters:
        `EI` - - object of provider invoice number.

    - #### getPayerInvoiceNumber

          public EI getPayerInvoiceNumber()

      Retrieve Payer Invoice Number (EI) This field is about Unique Invoice Number assigned by the Payer Application.
      Returns:
        EI - object of Payer invoice number.

    - #### setPayerInvoiceNumber

          public void setPayerInvoiceNumber(java.lang.String strEntityIdentifier,
                                   java.lang.String strNamespaceID,
                                   java.lang.String strUniversalID,
                                   java.lang.String strUniversalIDType)

      Set Payer Invoice Number (EI) This Field is Unique Invoice Number assigned by the Payer Application.
      Parameters:
        `strEntityIdentifier` - - string of character use to identify the entity.
        `strNamespaceID` - - Use to identify the name space id..
        `strUniversalID` - - Use to identify the name space identity.
        `strUniversalIDType` - - String of characters describe Universal Id Type.

    - #### setPayerInvoiceNumber

          public void setPayerInvoiceNumber(EI objPayerInvoiceNumber)

      Set Provider Invoice Number (EI) This Field is Unique Invoice Number assigned by the Payer Application.
      Parameters:
        `EI` - - object of payer invoice number.

    - #### getContractOrAgreementNumber

          public EI getContractOrAgreementNumber()

      Retrieve Contract/Agreement Number (EI) This field defines about Contract/agreement number issued by Payer which must be specified in some circumstances by the Provider.
      Returns:
        EI - object of Contact or Agreement Number

    - #### setContractOrAgreementNumber

          public void setContractOrAgreementNumber(java.lang.String strEntityIdentifier,
                                          java.lang.String strNamespaceID,
                                          java.lang.String strUniversalID,
                                          java.lang.String strUniversalIDType)

      Set Contract/Agreement Number (EI) This field defines about Contract/agreement number issued by Payer which must be specified in some circumstances by the Provider.
      Parameters:
        `strEntityIdentifier` - - string of character use to identify the entity.
        `strNamespaceID` - - Use to identify the name space id..
        `strUniversalID` - - Use to identify the name space identity.
        `strUniversalIDType` - - String of characters describe Universal Id Type.

    - #### setContractOrAgreementNumber

          public void setContractOrAgreementNumber(EI objContractOrAgreementNumber)

      Set Contract/Agreement Number (EI) This field defines about Contract/agreement number issued by Payer which must be specified in some circumstances by the Provider.
      Parameters:
        `objContractOrAgreementNumber` - -object of Contract Or Agreement Number.

    - #### getInvoiceControl

          public CWE getInvoiceControl()

      Retrieve Invoice Control (CWE) This field is to explain about Code describing reason for this Invoice.
      Returns:
        CWE - object of Invoice Reason.

    - #### setInvoiceControl

          public void setInvoiceControl(java.lang.String strIdentifier,
                               java.lang.String strText,
                               java.lang.String strNameOfCodingSystem,
                               java.lang.String strAlternateIdentifier,
                               java.lang.String strAlternateText,
                               java.lang.String strNameOfAlternateCodingSystem,
                               java.lang.String strCodingSystemVersionID,
                               java.lang.String strAlternateCodingSystemVersionId,
                               java.lang.String strOriginalText,
                               java.lang.String strSecondAlternateIdentifier,
                               java.lang.String strSecondAlternateText,
                               java.lang.String strNameofSecondAlternateCodingSystem,
                               java.lang.String strSecondAlternateCodingSystemVersionID,
                               java.lang.String strCodingSystemOID,
                               java.lang.String strValueSetOID,
                               java.lang.String strValueSetVersionID,
                               java.lang.String strAlternateCodingSystemOID,
                               java.lang.String strAlternateValueSetOID,
                               java.lang.String strAlternateValueSetVersionID,
                               java.lang.String strSecondAlternateCodingSystemOID,
                               java.lang.String strSecondAlternateValueSetOID,
                               java.lang.String strSecondAlternateValueSetVersionID)

      Set Invoice Control (CWE) This field is to explain about Code describing reason for this Invoice
      Parameters:
        `strIdentifier` - Specifies of characters (the code) that uniquely identifies the item being referenced.
        `strText` - Specifies The descriptive or textual name of the identifier, e.g., myocardial infection.
        `strNameOfCodingSystem` - Identifies the coding scheme being used in the identifier component.
        `strAlternateIdentifier` - Specifies an alternate sequence of characters (the code) that uniquely identifies the item being referenced.
        `strAlternateText` - Specifies the descriptive or textual name of the alternate identifier. See usage note in section introduction.
        `strNameOfAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strCodingSystemVersionID` - A sequence of characters that uniquely identifies a second alternate code.
        `strAlternateCodingSystemVersionId` - This component carries the version for the coding system identified by components 4-6.
        `strOriginalText` - The text as seen and/or selected by the user who entered the data.
        `strSecondAlternateIdentifier` - A sequence of characters that uniquely identifies a second alternate code.
        `strSecondAlternateText` - The descriptive or textual name of the alternate identifier.
        `strNameofSecondAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strSecondAlternateCodingSystemVersionID` - This component carries the version for the coding system identified by components 10-12.
        `strCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.3.
        `strValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.1 is obtained.
        `strValueSetVersionID` - This component carries the version for the value set identified by CWE.15. The version is a date. The date is the date/time that the value set being used was published.
        `strAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.6.
        `strAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.4 is obtained.
        `strAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.18. The version is a date.
        `strSecondAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.12.
        `strSecondAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.10 is obtained.
        `strSecondAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.21. The version is a date.

    - #### setInvoiceControl

          public void setInvoiceControl(CWE objInvoiceControl)

      Set Invoice Control (CWE) This field is to explain about Code indicating what action is being performed by this message.
      Parameters:
        `objInvoiceControl` - - object of Invoice control.

    - #### getInvoiceReason

          public CWE getInvoiceReason()

      Retrieve Invoice Reason (CWE) This field is to explain about Code describing reason for this Invoice.
      Returns:
        CWE - object of Invoice Reason.

    - #### setInvoiceReason

          public void setInvoiceReason(java.lang.String strIdentifier,
                              java.lang.String strText,
                              java.lang.String strNameOfCodingSystem,
                              java.lang.String strAlternateIdentifier,
                              java.lang.String strAlternateText,
                              java.lang.String strNameOfAlternateCodingSystem,
                              java.lang.String strCodingSystemVersionID,
                              java.lang.String strAlternateCodingSystemVersionId,
                              java.lang.String strOriginalText,
                              java.lang.String strSecondAlternateIdentifier,
                              java.lang.String strSecondAlternateText,
                              java.lang.String strNameofSecondAlternateCodingSystem,
                              java.lang.String strSecondAlternateCodingSystemVersionID,
                              java.lang.String strCodingSystemOID,
                              java.lang.String strValueSetOID,
                              java.lang.String strValueSetVersionID,
                              java.lang.String strAlternateCodingSystemOID,
                              java.lang.String strAlternateValueSetOID,
                              java.lang.String strAlternateValueSetVersionID,
                              java.lang.String strSecondAlternateCodingSystemOID,
                              java.lang.String strSecondAlternateValueSetOID,
                              java.lang.String strSecondAlternateValueSetVersionID)

      Set Invoice Reason (CWE) This field is to explain about Code describing reason for this Invoice.
      Parameters:
        `strIdentifier` - Specifies of characters (the code) that uniquely identifies the item being referenced.
        `strText` - Specifies The descriptive or textual name of the identifier, e.g., myocardial infarction.
        `strNameOfCodingSystem` - Identifies the coding scheme being used in the identifier component.
        `strAlternateIdentifier` - Specifies an alternate sequence of characters (the code) that uniquely identifies the item being referenced.
        `strAlternateText` - Specifies the descriptive or textual name of the alternate identifier. See usage note in section introduction.
        `strNameOfAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strCodingSystemVersionID` - A sequence of characters that uniquely identifies a second alternate code.
        `strAlternateCodingSystemVersionId` - This component carries the version for the coding system identified by components 4-6.
        `strOriginalText` - The text as seen and/or selected by the user who entered the data.
        `strSecondAlternateIdentifier` - A sequence of characters that uniquely identifies a second alternate code.
        `strSecondAlternateText` - The descriptive or textual name of the alternate identifier.
        `strNameofSecondAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strSecondAlternateCodingSystemVersionID` - This component carries the version for the coding system identified by components 10-12.
        `strCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.3.
        `strValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.1 is obtained.
        `strValueSetVersionID` - This component carries the version for the value set identified by CWE.15. The version is a date. The date is the date/time that the value set being used was published.
        `strAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.6.
        `strAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.4 is obtained.
        `strAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.18. The version is a date.
        `strSecondAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.12.
        `strSecondAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.10 is obtained.
        `strSecondAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.21. The version is a date.

    - #### setInvoiceReason

          public void setInvoiceReason(CWE objInvoiceReason)

      Set Invoice Reason (CWE) This field is to explain about Code describing reason for this Invoice.
      Parameters:
        `objInvoiceReason` - - object of Invoice reason.

    - #### getInvoiceType

          public CWE getInvoiceType()

      Retrieve Invoice Type (CWE) This field is to explain about Code indicating the type of Invoice.
      Returns:
        CWE - object of Invoice Type.

    - #### setInvoiceType

          public void setInvoiceType(java.lang.String strIdentifier,
                            java.lang.String strText,
                            java.lang.String strNameOfCodingSystem,
                            java.lang.String strAlternateIdentifier,
                            java.lang.String strAlternateText,
                            java.lang.String strNameOfAlternateCodingSystem,
                            java.lang.String strCodingSystemVersionID,
                            java.lang.String strAlternateCodingSystemVersionId,
                            java.lang.String strOriginalText,
                            java.lang.String strSecondAlternateIdentifier,
                            java.lang.String strSecondAlternateText,
                            java.lang.String strNameofSecondAlternateCodingSystem,
                            java.lang.String strSecondAlternateCodingSystemVersionID,
                            java.lang.String strCodingSystemOID,
                            java.lang.String strValueSetOID,
                            java.lang.String strValueSetVersionID,
                            java.lang.String strAlternateCodingSystemOID,
                            java.lang.String strAlternateValueSetOID,
                            java.lang.String strAlternateValueSetVersionID,
                            java.lang.String strSecondAlternateCodingSystemOID,
                            java.lang.String strSecondAlternateValueSetOID,
                            java.lang.String strSecondAlternateValueSetVersionID)

      Set Invoice Type (CWE) This field is to explain about Code indicating the type of Invoice.
      Parameters:
        `strIdentifier` - Specifies of characters (the code) that uniquely identifies the item being referenced.
        `strText` - Specifies The descriptive or textual name of the identifier, e.g., myocardial infarction.
        `strNameOfCodingSystem` - Identifies the coding scheme being used in the identifier component.
        `strAlternateIdentifier` - Specifies an alternate sequence of characters (the code) that uniquely identifies the item being referenced.
        `strAlternateText` - Specifies the descriptive or textual name of the alternate identifier. See usage note in section introduction.
        `strNameOfAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strCodingSystemVersionID` - A sequence of characters that uniquely identifies a second alternate code.
        `strAlternateCodingSystemVersionId` - This component carries the version for the coding system identified by components 4-6.
        `strOriginalText` - The text as seen and/or selected by the user who entered the data.
        `strSecondAlternateIdentifier` - A sequence of characters that uniquely identifies a second alternate code.
        `strSecondAlternateText` - The descriptive or textual name of the alternate identifier.
        `strNameofSecondAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strSecondAlternateCodingSystemVersionID` - This component carries the version for the coding system identified by components 10-12.
        `strCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.3.
        `strValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.1 is obtained.
        `strValueSetVersionID` - This component carries the version for the value set identified by CWE.15. The version is a date. The date is the date/time that the value set being used was published.
        `strAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.6.
        `strAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.4 is obtained.
        `strAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.18. The version is a date.
        `strSecondAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.12.
        `strSecondAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.10 is obtained.
        `strSecondAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.21. The version is a date.

    - #### setInvoiceType

          public void setInvoiceType(CWE objInvoiceType)

      Set Invoice Type (CWE) This field is to explain about Code indicating the type of Invoice.
      Parameters:
        `objInvoiceType` - - object of Invoice Type.

    - #### getInvoiceDateOrTime

          public DTM getInvoiceDateOrTime()

      Retrieve Invoice Date/Time (DTM) This field tells about Date Invoice was created.
      Returns:
        DTM - object of Invoice Date Or time.

    - #### setInvoiceDateOrTime

          public void setInvoiceDateOrTime(java.lang.String strInvoiceDateOrTime)

      Set Invoice Date Or Time (DTM) This field tells about Date Invoice was created.
      Parameters:
        `String` - - String of characters tell about the Date of Invoice.

    - #### setInvoiceDateOrTime

          public void setInvoiceDateOrTime(DTM objInvoiceDateOrTime)

      Set Invoice Date Or Time (DTM) This field tells about Date Invoice was created.
      Parameters:
        `DTM` - - Object of characters tell about the Date of Invoice.

    - #### getInvoiceAmount

          public CP getInvoiceAmount()

      Retrieve Invoice Amount (CP) This field is all about Sum total of Product/Service Billed Amount on PSL for all Product/Service Line Items for this Invoice.
      Returns:
        CP - object of Invoice Amount.

    - #### setInvoiceAmount

          public void setInvoiceAmount(MO objPrice,
                              java.lang.String strPriceType,
                              java.lang.String strFormValue,
                              java.lang.String strToValue,
                              CWE objRangeUnits,
                              java.lang.String strRangeType)

      Retrieve Invoice Amount (CP) This field is all about Sum total of Product/Service Billed Amount on PSL for all Product/Service Line Items for this Invoice.
      Parameters:
        `objPrice` - - Gives information about the Price.
        `strPriceType` - - Gives information about Type of Price.
        `strFormValue` - - Gives information about Form Value.
        `strToValue` - - Tell about the To value.
        `objRangeUnits` - - Specifies about the range of the units.
        `strRangeType` - - Specifies obut the Type of range.

    - #### setInvoiceAmount

          public void setInvoiceAmount(CP objInvoiceAmount)

      Retrieve Invoice Amount (CP) This field is all about Sum total of Product/Service Billed Amount on PSL for all Product/Service Line Items for this Invoice.
      Parameters:
        `objInvoiceAmount` - - Gives information about the object of invoice amount.

    - #### getPaymentTerms

          public ST getPaymentTerms()

      Retrieve Payment Terms (ST) This field is about Terms for Payer payment of Invoice
      Returns:
        ST - object of the Payment Term.

    - #### setPaymentTerms

          public void setPaymentTerms(java.lang.String strPaymentTerms)

      Set Payment Terms (ST) This field is about Terms for Payer payment of Invoice.
      Parameters:
        `String` - - String of Character contain information about the payment terms.

    - #### setPaymentTerms

          public void setPaymentTerms(ST objPaymentTerms)

      Set Payment Terms (ST) This field is about Terms for Payer payment of Invoice.
      Parameters:
        `ST` - - object which contain information about the payment terms.

    - #### getProviderOrganization

          public XON getProviderOrganization()

      Retrieve Provider Organization (XON) Business organization that is responsible for the invoice.
      Returns:
        XON - object for the provider organization.

    - #### setProviderOrganization

          public void setProviderOrganization(java.lang.String strOrganizationName,
                                     CWE objOrganizationNameTypeCode,
                                     HD objAssigningAuthority,
                                     java.lang.String strIdentifierTypeCode,
                                     HD objAssigningFacility,
                                     java.lang.String strNameRepresentationCode,
                                     java.lang.String strOrganizationIdentifier)

      Set Provider Organization (XON) Business organization that is responsible for the invoice.
      Parameters:
        `strOrganizationName` - Specifies name of the specified organization.
        `strOrganizationNameTypeCode` - Specifies a code that represents the type of name i.e., legal name, display name. Suggested Values A,L,D,SL.[Refer to table No.0204]
        `objAssigningAuthority` - Specifies The assigning authority is a unique identifier of the system (or organization or agency or department) that creates the data.
        `strIdentifierTypeCode` - Specifies a code corresponding to the type of identifier.
        `objAssigningFacility` - Specifies The place or location identifier where the identifier was first assigned to the person.
        `strNameRepresentationCode` - Specifies representations of the same name/address Suggested values are I,A,P [Refer table 0465]
        `strOrganizationIdentifier` - This component contains the sequence of characters (the code) that uniquely identifies the item being referenced by XON.1 Organization Name. This component replaces XON.3 ID Number as of v 2.8.2.

    - #### setProviderOrganization

          public void setProviderOrganization(XON objProviderOrganization)

      Set Provider Organization (XON) Business organization that is responsible for the invoice.
      Parameters:
        `XON` - - object of Provider Organization.

    - #### getPayerOrganization

          public XON getPayerOrganization()

      Retrieve Payer Organization (XON) The business organization that is designated as Payer for this Invoice. This Payer may be the primary, secondary, tertiary Payer, depending on Insurance Information specified in the Invoice.
      Returns:
        XON - object for the payer organization.

    - #### setPayerOrganization

          public void setPayerOrganization(java.lang.String strOrganizationName,
                                  CWE objOrganizationNameTypeCode,
                                  HD objAssigningAuthority,
                                  java.lang.String strIdentifierTypeCode,
                                  HD objAssigningFacility,
                                  java.lang.String strNameRepresentationCode,
                                  java.lang.String strOrganizationIdentifier)

      Set Payer Organization (XON) The business organization that is designated as Payer for this Invoice. This Payer may be the primary, secondary, tertiary Payer, depending on Insurance Information specified in the Invoice.
      Parameters:
        `strOrganizationName` - Specifies name of the specified organization.
        `strOrganizationNameTypeCode` - Specifies a code that represents the type of name i.e., legal name, display name. Suggested Values A,L,D,SL.[Refer to table No.0204]
        `objAssigningAuthority` - Specifies The assigning authority is a unique identifier of the system (or organization or agency or department) that creates the data.
        `strIdentifierTypeCode` - Specifies a code corresponding to the type of identifier.
        `objAssigningFacility` - Specifies The place or location identifier where the identifier was first assigned to the person.
        `strNameRepresentationCode` - Specifies representations of the same name/address Suggested values are I,A,P [Refer table 0465]
        `strOrganizationIdentifier` - This component contains the sequence of characters (the code) that uniquely identifies the item being referenced by XON.1 Organization Name. This component replaces XON.3 ID Number as of v 2.8.2.

    - #### setPayerOrganization

          public void setPayerOrganization(XON objPayerOrganization)

      Set Payer Organization (XON) The business organization that is designated as Payer for this Invoice. This Payer may be the primary, secondary, tertiary Payer, depending on Insurance Information specified in the Invoice.
      Parameters:
        `XON` - - object of Payer Organization.

    - #### getAttention

          public XCN getAttention()

      Retrieve Attention (XCN) This field is about Attention to individual in Payer Organization who needs to review this Invoice.
      Returns:
        XCN - object of Attention.

    - #### setAttention

          public void setAttention(java.lang.String strIDNumber,
                          FN objFamilyName,
                          java.lang.String strGivenName,
                          java.lang.String strSecondAndFurtherGivenNamesOrInitialsThereof,
                          java.lang.String strSuffix,
                          java.lang.String strPrefix,
                          CWE objSourceTable,
                          HD objAssigningAuthority,
                          java.lang.String strNameTypeCode,
                          java.lang.String strIdentifierCheckDigit,
                          java.lang.String strCheckDigitScheme,
                          java.lang.String strIdentifierTypeCode,
                          HD objAssigningFacility,
                          java.lang.String strNameRepresentationCode,
                          CWE objNameContext,
                          java.lang.String strNameAssemblyOrder,
                          java.lang.String strEffectiveDate,
                          java.lang.String strExpirationDate,
                          java.lang.String strProfessionalSuffix,
                          CWE objAssigningJurisdiction,
                          CWE objAssigningAgencyOrDepratment,
                          java.lang.String strSecurityCheck,
                          java.lang.String strSecurityCheckScheme)

      Set Attention (XCN) This field is about Attention to individual in Payer Organization who needs to review this Invoice.
      Parameters:
        `strIDNumber` - Refers to the coded ID according to a user-defined table
        `objFamilyName` - Specifies the surname of a person.
        `strGivenName` - Specifies First name.
        `strSecondAndFurtherGivenNamesOrInitialsThereof` - Specifies multiple middle names that may be included by separating them with spaces.
        `strSuffix` - Used to specify a name suffix (e.g., Jr. or III).
        `strPrefix` - Used to specify a name prefix (e.g., Dr.).
        `strSourceTable` - Used as the HL7 identifier for the user-defined table of values for this component. [Refer User-defined Table 0297 - CN ID.]
        `objAssigningAuthority` - Specifies a unique identifier of the system (or organization or agency of department) that creates the data. [Refer User-defined Table 0363 - Assigning authority]
        `strNameTypeCode` - Specifies a code that represents the type of name.
        `strIdentifierCheckDigit` - Specifies part of the identifying number used in the sending application.
        `strCheckDigitScheme` - Specifies the code identifying the check digit scheme employed.[Refer HL7 Table 0061 - Check digit scheme].
        `strIdentifierTypeCode` - Specifies A code corresponding to the type of identifier.[Refer HL7 Table 0203 - Identifier type].
        `objAssigningFacility` - Specifies the place or location identifier where the identifier was first assigned to the person
        `strNameRepresentationCode` - Provides an indication of the representation provided by the data item.
        `objNameContext` - Designates the context in which a name is used. [Refer User-defined Table 0448 ]
        `strNameAssemblyOrder` - Specifies a code that represents the preferred display order of the components of this person name. Suggested values are G,F[Refer table 0444.]
        `strEffectiveDate` - Specifies the first date, if known, on which the address is valid and active.
        `strExpirationDate` - Specifies the last date, if known, on which the address is valid and active.
        `strProfessionalSuffix` - Used to specify an abbreviation, or a string of abbreviations, denoting qualifications that support the person's profession, (e.g., licenses).
        `objAssigningJurisdiction` - Specifies the geo-political body that assigned the identifier.
        `objAssigningAgencyOrDepratment` - Specifies the agency or department that assigned the identifier
        `strSecurityCheck` - Specifies the version code that may be assigned to the person identifier
        `strSecurityCheckScheme` - Specifies the check digit scheme.

    - #### setAttention

          public void setAttention(XCN objAttention)

      Set Attention (XCN) This field is about Attention to individual in Payer Organization who needs to review this Invoice.
      Parameters:
        `XCN` - - object of Attention.

    - #### getLastInvoiceIndicator

          public ID getLastInvoiceIndicator()

      Retrieve Last Invoice Indicator (ID) This field Can be set to indicate that this is the last Invoice for a particular Case, Claim and/or Encounter.
      Returns:
        ID - object of Invoice for a particular case.

    - #### setLastInvoiceIndicator

          public void setLastInvoiceIndicator(java.lang.String strlastInvoiceIndicator)

      Set Last Invoice Indicator (ID) This field Can be set to indicate that this is the last Invoice for a particular Case, Claim and/or Encounter.

    - #### setLastInvoiceIndicator

          public void setLastInvoiceIndicator(ID objlastInvoiceIndicator)

      Set Last Invoice Indicator (ID) This field Can be set to indicate that this is the last Invoice for a particular Case, Claim and/or Encounter.

    - #### getInvoiceBookingPeriod

          public DTM getInvoiceBookingPeriod()

      Retrieve Invoice Booking Period (DTM) This field is about Period in which the invoice must be booked.
      Returns:
        DTM - object of Invoice booking period.

    - #### setInvoiceBookingPeriod

          public void setInvoiceBookingPeriod(java.lang.String strInvoiceBookingPeriod)

      Set Invoice Booking Period (DTM) This field is about Period in which the invoice must be booked.

    - #### setInvoiceBookingPeriod

          public void setInvoiceBookingPeriod(DTM objInvoiceBookingPeriod)

      Set Invoice Booking Period (DTM) This field is about Period in which the invoice must be booked.

    - #### getOrigin

          public ST getOrigin()

      Retrieve Origin (ST) This field is about Responsible Person for this specific invoice. For more structured output use CTD-Segment instead.
      Returns:
        ST - object of Origin.

    - #### setOrigin

          public void setOrigin(java.lang.String strOrigin)

      Set Origin (ST) This field is about Responsible Person for this specific invoice. For more structured output use CTD-Segment instead.
      Parameters:
        `String` - - string of Origin.

    - #### setOrigin

          public void setOrigin(ST objOrigin)

      Set Origin (ST) This field is about Responsible Person for this specific invoice. For more structured output use CTD-Segment instead.

    - #### getInvoiceFixedAmount

          public CP getInvoiceFixedAmount()

      Retrieve Invoice Fixed Amount (CP) This field is about Fixed Amount for this invoice.
      Returns:
        CP - object of Invoice fixed amount .

    - #### setInvoiceFixedAmount

          public void setInvoiceFixedAmount(MO objPrice,
                                   java.lang.String strPriceType,
                                   java.lang.String strFormValue,
                                   java.lang.String strToValue,
                                   CWE objRangeUnits,
                                   java.lang.String strRangeType)

      Set Invoice Fixed Amount (CP) This field is about Fixed Amount for this invoice.
      Parameters:
        `objPrice` - - Gives information about the Price.
        `strPriceType` - - Gives information about Type of Price.
        `strFormValue` - - Gives information about Form Value.
        `strToValue` - - Tell about the To value.
        `objRangeUnits` - - Specifies about the range of the units.
        `strRangeType` - - Specifies obut the Type of range.

    - #### setInvoiceFixedAmount

          public void setInvoiceFixedAmount(CP objInvoiceFixedAmount)

      Set Invoice Fixed Amount (CP) This field is about Fixed Amount for this invoice.
      Parameters:
        `objInvoiceFixedAmount` - - object of Invoice Fixed Amount.

    - #### getSpecialCosts

          public CP getSpecialCosts()

      Retrieve Special Costs (CP) This field tells about Special costs for this invoice.
      Returns:
        CP - object of Special Costs.

    - #### setSpecialCosts

          public void setSpecialCosts(MO objPrice,
                             java.lang.String strPriceType,
                             java.lang.String strFormValue,
                             java.lang.String strToValue,
                             CWE objRangeUnits,
                             java.lang.String strRangeType)

      Set Special costs (CP) This field is about Special costs for this invoice.
      Parameters:
        `objPrice` - - Gives information about the Price.
        `strPriceType` - - Gives information about Type of Price.
        `strFormValue` - - Gives information about Form Value.
        `strToValue` - - Tell about the To value.
        `objRangeUnits` - - Specifies about the range of the units.
        `strRangeType` - - Specifies obut the Type of range.

    - #### setSpecialCosts

          public void setSpecialCosts(CP objSpecialCosts)

      Set Special costs (CP) This field is about Special costs for this invoice.
      Parameters:
        `objSpecalCosts` - - object of Special costs.

    - #### getAmountForDoctorsTreatment

          public CP getAmountForDoctorsTreatment()

      Retrieve Amount for Doctors Treatment (CP) This field tells about Special amount for doctor's treatment.
      Returns:
        CP - object of Special amount for doctor's treatment.

    - #### setAmountForDoctorsTreatment

          public void setAmountForDoctorsTreatment(MO objPrice,
                                          java.lang.String strPriceType,
                                          java.lang.String strFormValue,
                                          java.lang.String strToValue,
                                          CWE objRangeUnits,
                                          java.lang.String strRangeType)

      Set Amount for Doctors Treatment (CP) This field is about Special amount for doctor's treatment.
      Parameters:
        `objPrice` - - Gives information about the Price.
        `strPriceType` - - Gives information about Type of Price.
        `strFormValue` - - Gives information about Form Value.
        `strToValue` - - Tell about the To value.
        `objRangeUnits` - - Specifies about the range of the units.
        `strRangeType` - - Specifies obut the Type of range.

    - #### setAmountForDoctorsTreatment

          public void setAmountForDoctorsTreatment(CP objAmountForDoctorsTreatment)

      Set Amount for Doctors Treatment (CP) This field is about Special amount for doctor's treatment.
      Parameters:
        `objAMountForDoctorsTreatment` - - object of Special amount for doctor's treatment.

    - #### getResponsiblePhysician

          public XCN getResponsiblePhysician()

      Retrieve Responsible Physician (XCN) This field is about Doctor who is responsible for this invoice.
      Returns:
        XCN - object of Responsible Physician.

    - #### setResponsiblePhysician

          public void setResponsiblePhysician(java.lang.String strIDNumber,
                                     FN objFamilyName,
                                     java.lang.String strGivenName,
                                     java.lang.String strSecondAndFurtherGivenNamesOrInitialsThereof,
                                     java.lang.String strSuffix,
                                     java.lang.String strPrefix,
                                     CWE objSourceTable,
                                     HD objAssigningAuthority,
                                     java.lang.String strNameTypeCode,
                                     java.lang.String strIdentifierCheckDigit,
                                     java.lang.String strCheckDigitScheme,
                                     java.lang.String strIdentifierTypeCode,
                                     HD objAssigningFacility,
                                     java.lang.String strNameRepresentationCode,
                                     CWE objNameContext,
                                     java.lang.String strNameAssemblyOrder,
                                     java.lang.String strEffectiveDate,
                                     java.lang.String strExpirationDate,
                                     java.lang.String strProfessionalSuffix,
                                     CWE objAssigningJurisdiction,
                                     CWE objAssigningAgencyOrDepratment,
                                     java.lang.String strSecurityCheck,
                                     java.lang.String strSecurityCheckScheme)

      Set Responsible Physician (XCN) This field is about Doctor who is responsible for this invoice.
      Parameters:
        `strIDNumber` - Refers to the coded ID according to a user-defined table
        `objFamilyName` - Specifies the surname of a person.
        `strGivenName` - Specifies First name.
        `strSecondAndFurtherGivenNamesOrInitialsThereof` - Specifies multiple middle names that may be included by separating them with spaces.
        `strSuffix` - Used to specify a name suffix (e.g., Jr. or III).
        `strPrefix` - Used to specify a name prefix (e.g., Dr.).
        `strSourceTable` - Used as the HL7 identifier for the user-defined table of values for this component. [Refer User-defined Table 0297 - CN ID.]
        `objAssigningAuthority` - Specifies a unique identifier of the system (or organization or agency of department) that creates the data. [Refer User-defined Table 0363 - Assigning authority]
        `strNameTypeCode` - Specifies a code that represents the type of name.
        `strIdentifierCheckDigit` - Specifies part of the identifying number used in the sending application.
        `strCheckDigitScheme` - Specifies the code identifying the check digit scheme employed.[Refer HL7 Table 0061 - Check digit scheme].
        `strIdentifierTypeCode` - Specifies A code corresponding to the type of identifier.[Refer HL7 Table 0203 - Identifier type].
        `objAssigningFacility` - Specifies the place or location identifier where the identifier was first assigned to the person
        `strNameRepresentationCode` - Provides an indication of the representation provided by the data item.
        `objNameContext` - Designates the context in which a name is used. [Refer User-defined Table 0448 ]
        `strNameAssemblyOrder` - Specifies a code that represents the preferred display order of the components of this person name. Suggested values are G,F[Refer table 0444.]
        `strEffectiveDate` - Specifies the first date, if known, on which the address is valid and active.
        `strExpirationDate` - Specifies the last date, if known, on which the address is valid and active.
        `strProfessionalSuffix` - Used to specify an abbreviation, or a string of abbreviations, denoting qualifications that support the person's profession, (e.g., licenses).
        `objAssigningJurisdiction` - Specifies the geo-political body that assigned the identifier.
        `objAssigningAgencyOrDepratment` - Specifies the agency or department that assigned the identifier
        `strSecurityCheck` - Specifies the version code that may be assigned to the person identifier
        `strSecurityCheckScheme` - Specifies the check digit scheme.

    - #### setResponsiblePhysician

          public void setResponsiblePhysician(XCN objResponsiblePhysician)

      Set Responsible Physician (XCN) This field is about Doctor who is responsible for this invoice.
      Parameters:
        `XCN` - - object of Responsible Physician .

    - #### getCostCenter

          public CX getCostCenter()

      Retrieve Cost Center (CX) Cost centers are organizational units or activities that provide goods and services.
      Returns:
        CX - object of Cost center

    - #### setCostCenter

          public void setCostCenter(java.lang.String strIDNumber,
                           java.lang.String strCheckDigit,
                           java.lang.String strCheckDigitScheme,
                           HD objAssigningAuthority,
                           java.lang.String strIdentifierTypeCode,
                           HD objAssigningFacility,
                           java.lang.String strEffectiveDate,
                           java.lang.String strExpirationDate,
                           CWE objAssigningJurisdiction,
                           CWE objAssigningAgencyOrDepartment,
                           java.lang.String strSecurityCheck,
                           java.lang.String strSecurityCheckScheme)

      Set Cost Center (CX) Cost centers are organizational units or activities that provide goods and services.
      Parameters:
        `strIDNumber` - Specifies the value of the identifier itself.
        `strCheckDigit` - It is part of the identifying number used in the sending application.
        `strCheckDigitScheme` - Contains the code identifying the check digit scheme employed. Suggested Values NP,ISO,M10,M11.[Refer table No.0061].
        `objAssigningAuthority` - The assigning authority is a unique name of the system (or organization or agency or department) that creates the data. .
        `strIdentifierTypeCode` - Specifies a code corresponding to the type of identifier.In some cases, this code may be used as a qualifier to the "Assigning authority" component.[Refer table No 0203]
        `objAssigningFacility` - Specifies the place or location identifier where the identifier was first assigned to the patient.
        `strEffectiveDate` - Specifies the first date, if known, on which the address is valid and active.
        `strExpirationDate` - Specifies the last date, if known, on which the address is valid and active.
        `objAssigningJurisdiction` - Specifies the geo-political body that assigned the identifier.
        `objAssigningAgencyOrDepartment` - Specifies agency or department that assigned the identifier.
        `strSecurityCheck` - is used to communicate the version code.
        `objSecurityCheckSCheme` - is used to transmit information intended to validate veracity of the supplied identifier

    - #### setCostCenter

          public void setCostCenter(CX objCostCenter)

      Set Cost Center (CX) Cost centers are organizational units or activities that provide goods and services.
      Parameters:
        `objCostCenter` - - object of Cost center.

    - #### getInvoicePrepaidAmount

          public CP getInvoicePrepaidAmount()

      Retrieve Invoice Prepaid Amount (CP) This field tells about Deposit paid to the service Provider prior to admission.
      Returns:
        CP - object of Invoice Prepaid Amount.

    - #### setInvoicePrepaidAmount

          public void setInvoicePrepaidAmount(MO objPrice,
                                     java.lang.String strPriceType,
                                     java.lang.String strFormValue,
                                     java.lang.String strToValue,
                                     CWE objRangeUnits,
                                     java.lang.String strRangeType)

      Set Invoice Prepaid Amount (CP) This field is about Deposit paid to the service Provider prior to admission.
      Parameters:
        `objPrice` - - Gives information about the Price.
        `strPriceType` - - Gives information about Type of Price.
        `strFormValue` - - Gives information about Form Value.
        `strToValue` - - Tell about the To value.
        `objRangeUnits` - - Specifies about the range of the units.
        `strRangeType` - - Specifies obut the Type of range.

    - #### setInvoicePrepaidAmount

          public void setInvoicePrepaidAmount(CP objInvoicePrepaidAmount)

      Set Invoice Prepaid Amount (CP) This field is about Deposit paid to the service Provider prior to admission.
      Parameters:
        `objInvoicePrepaidAmount` - - object of Invoice Prepaid Amount.

    - #### getTotlaInvoiceAmountWithoutPrepaidAmount

          public CP getTotlaInvoiceAmountWithoutPrepaidAmount()

      Retrieve Total Invoice Amount without Prepaid Amount (CP) This field tells about Total amount of Invoice without the prepaid deposit .
      Returns:
        CP - object of Total Invoice Amount without Prepaid Amount.

    - #### setTotalInvoiceAmountWithoutPrepaidAmount

          public void setTotalInvoiceAmountWithoutPrepaidAmount(MO objPrice,
                                                       java.lang.String strPriceType,
                                                       java.lang.String strFormValue,
                                                       java.lang.String strToValue,
                                                       CWE objRangeUnits,
                                                       java.lang.String strRangeType)

      Set Total Invoice Amount without Prepaid Amount (CP) This field is about Total amount of Invoice without the prepaid deposit .
      Parameters:
        `objPrice` - - Gives information about the Price.
        `strPriceType` - - Gives information about Type of Price.
        `strFormValue` - - Gives information about Form Value.
        `strToValue` - - Tell about the To value.
        `objRangeUnits` - - Specifies about the range of the units.
        `strRangeType` - - Specifies obut the Type of range.

    - #### setTotalInvoiceAmountWithoutPrepaidAmount

          public void setTotalInvoiceAmountWithoutPrepaidAmount(CP objTotalInvoiceAmountWithoutPrepaidAmount)

      Set Total Invoice Amount without Prepaid Amount (CP) This field is about Total amount of Invoice without the prepaid deposit.
      Parameters:
        `objTotalInvoiceAmountWithoutPrepaideAmount` - - object of Total Invoice Amount without Prepaid Amount.

    - #### getTotlaAmountOfVAT

          public CP getTotlaAmountOfVAT()

      Retrieve Total-Amount of VAT (CP) This field tells about Total Amount of VAT included in the Total Invoice Amount (IVC-8).
      Returns:
        CP - object of Total-Amount of VAT.

    - #### setTotalAmountOfVAT

          public void setTotalAmountOfVAT(MO objPrice,
                                 java.lang.String strPriceType,
                                 java.lang.String strFormValue,
                                 java.lang.String strToValue,
                                 CWE objRangeUnits,
                                 java.lang.String strRangeType)

      Set Total-Amount of VAT (CP) This field is about Total Amount of VAT included in the Total Invoice Amount (IVC-8).
      Parameters:
        `objPrice` - - Gives information about the Price.
        `strPriceType` - - Gives information about Type of Price.
        `strFormValue` - - Gives information about Form Value.
        `strToValue` - - Tell about the To value.
        `objRangeUnits` - - Specifies about the range of the units.
        `strRangeType` - - Specifies obut the Type of range.

    - #### setTotalAmountOfVAT

          public void setTotalAmountOfVAT(CP objTotalAmountOfVAT)

      Set Total-Amount of VAT (CP) This field is about Total Amount of VAT included in the Total Invoice Amount (IVC-8).
      Parameters:
        `objTotalAmountOfVAT` - - object of Total-Amount of VAT.

    - #### getVATRatesApplied

          public ISingleCollection<NM> getVATRatesApplied()

      Retrieve VAT-Rates applied (NM) This field tells us Applied VAT Rates on Invoice. Multiple VAT-rates may be applied according to the type of service.
      Returns:
        ISingleCollection - List of object of VAT Rates applied.

    - #### addVATRatesApplied

          public void addVATRatesApplied(java.lang.String strVATRatesAmount)

      Set VAT-Rates applied (NM) This field tells us Applied VAT Rates on Invoice. Multiple VAT-rates may be applied according to the type of service.
      Parameters:
        `String` - - string of VAT rates applied.

    - #### addVATRatesApplied

          public void addVATRatesApplied(NM objVATRatesApplied)

      Set VAT-Rates applied (NM) This field tells us Applied VAT Rates on Invoice. Multiple VAT-rates may be applied according to the type of service.
      Parameters:
        `NM` - - object of VAT rates applied.

    - #### setVATRatesApplied

          public void setVATRatesApplied(ISingleCollection<NM> objVATRatesAppliedList)

      Set VAT-Rates applied (NM) This field tells us Applied VAT Rates on Invoice. Multiple VAT-rates may be applied according to the type of service.
      Parameters:
        `objVATRatesAmountList` - - list of object of VAT rates applied.

    - #### getBenefitGroup

          public CWE getBenefitGroup()

      Retrieve Benefit group (CWE) This field is about Code indicating the Benefit group.
      Returns:
        CWE - object of Benefit group.

    - #### setBenefitGroup

          public void setBenefitGroup(java.lang.String strIdentifier,
                             java.lang.String strText,
                             java.lang.String strNameOfCodingSystem,
                             java.lang.String strAlternateIdentifier,
                             java.lang.String strAlternateText,
                             java.lang.String strNameOfAlternateCodingSystem,
                             java.lang.String strCodingSystemVersionID,
                             java.lang.String strAlternateCodingSystemVersionId,
                             java.lang.String strOriginalText,
                             java.lang.String strSecondAlternateIdentifier,
                             java.lang.String strSecondAlternateText,
                             java.lang.String strNameofSecondAlternateCodingSystem,
                             java.lang.String strSecondAlternateCodingSystemVersionID,
                             java.lang.String strCodingSystemOID,
                             java.lang.String strValueSetOID,
                             java.lang.String strValueSetVersionID,
                             java.lang.String strAlternateCodingSystemOID,
                             java.lang.String strAlternateValueSetOID,
                             java.lang.String strAlternateValueSetVersionID,
                             java.lang.String strSecondAlternateCodingSystemOID,
                             java.lang.String strSecondAlternateValueSetOID,
                             java.lang.String strSecondAlternateValueSetVersionID)

      Set Benefit group (CWE) This field is about Code indicating the Benefit group.
      Parameters:
        `strIdentifier` - Specifies of characters (the code) that uniquely identifies the item being referenced.
        `strText` - Specifies The descriptive or textual name of the identifier, e.g., myocardial infarction.
        `strNameOfCodingSystem` - Identifies the coding scheme being used in the identifier component.
        `strAlternateIdentifier` - Specifies an alternate sequence of characters (the code) that uniquely identifies the item being referenced.
        `strAlternateText` - Specifies the descriptive or textual name of the alternate identifier. See usage note in section introduction.
        `strNameOfAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strCodingSystemVersionID` - A sequence of characters that uniquely identifies a second alternate code.
        `strAlternateCodingSystemVersionId` - This component carries the version for the coding system identified by components 4-6.
        `strOriginalText` - The text as seen and/or selected by the user who entered the data.
        `strSecondAlternateIdentifier` - A sequence of characters that uniquely identifies a second alternate code.
        `strSecondAlternateText` - The descriptive or textual name of the alternate identifier.
        `strNameofSecondAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strSecondAlternateCodingSystemVersionID` - This component carries the version for the coding system identified by components 10-12.
        `strCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.3.
        `strValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.1 is obtained.
        `strValueSetVersionID` - This component carries the version for the value set identified by CWE.15. The version is a date. The date is the date/time that the value set being used was published.
        `strAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.6.
        `strAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.4 is obtained.
        `strAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.18. The version is a date.
        `strSecondAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.12.
        `strSecondAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.10 is obtained.
        `strSecondAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.21. The version is a date.

    - #### setBenefitGroup

          public void setBenefitGroup(CWE objBenefitGroup)

      Set Benefit group (CWE) This field is about Code indicating the Benefit group.
      Parameters:
        `CWE` - - object of the benefit group.

    - #### getProviderTaxID

          public ST getProviderTaxID()

      Retrieve Provider Tax ID (ST) This field is about The Tax ID of the Provider (general Tax identification number or VAT number).
      Returns:
        ST - object of the Provider tax ID.

    - #### setProviderTaxID

          public void setProviderTaxID(java.lang.String strProviderTaxID)

      Set Provider Tax ID (ST) This field is about The Tax ID of the Provider (general Tax identification number or VAT number).
      Parameters:
        `String` - - String of Character contain information about the provider tax ID.

    - #### setProviderTaxID

          public void setProviderTaxID(ST objProviderTaxID)

      Set Provider Tax ID (ST) This field is about The Tax ID of the Provider (general Tax identification number or VAT number).
      Parameters:
        `ST` - - object which contain information about the provider tax ID.

    - #### getPayerTaxID

          public ST getPayerTaxID()

      Retrieve Payer Tax ID (ST) This field is about The Tax ID of the Payer (general Tax identification number or VAT number).
      Returns:
        ST - object of the Payer tax ID.

    - #### setPayerTaxID

          public void setPayerTaxID(java.lang.String strPayerTaxID)

      Set Payer Tax ID (ST) This field is about The Tax ID of the Payer (general Tax identification number or VAT number).
      Parameters:
        `String` - - String of Character contain information about the Payer tax ID.

    - #### setPayerTaxID

          public void setPayerTaxID(ST objPayerTaxID)

      Set Sales Tax ID (ST) This field is about The Tax ID of the Sales (general Tax identification number or VAT number).
      Parameters:
        `ST` - - object which contain information about the Sales tax ID.

    - #### getProviderTaxStatus

          public CWE getProviderTaxStatus()

      Retrieve Provider Tax Status (CWE) This field is about Code indicating the Provider Tax Status.
      Returns:
        CWE - object of Provider Tax Status.

    - #### setProviderTaxStatus

          public void setProviderTaxStatus(java.lang.String strIdentifier,
                                  java.lang.String strText,
                                  java.lang.String strNameOfCodingSystem,
                                  java.lang.String strAlternateIdentifier,
                                  java.lang.String strAlternateText,
                                  java.lang.String strNameOfAlternateCodingSystem,
                                  java.lang.String strCodingSystemVersionID,
                                  java.lang.String strAlternateCodingSystemVersionId,
                                  java.lang.String strOriginalText,
                                  java.lang.String strSecondAlternateIdentifier,
                                  java.lang.String strSecondAlternateText,
                                  java.lang.String strNameofSecondAlternateCodingSystem,
                                  java.lang.String strSecondAlternateCodingSystemVersionID,
                                  java.lang.String strCodingSystemOID,
                                  java.lang.String strValueSetOID,
                                  java.lang.String strValueSetVersionID,
                                  java.lang.String strAlternateCodingSystemOID,
                                  java.lang.String strAlternateValueSetOID,
                                  java.lang.String strAlternateValueSetVersionID,
                                  java.lang.String strSecondAlternateCodingSystemOID,
                                  java.lang.String strSecondAlternateValueSetOID,
                                  java.lang.String strSecondAlternateValueSetVersionID)

      Set Provider Tax Status (CWE) This field is about Code indicating the Provider Tax Status.
      Parameters:
        `strIdentifier` - Specifies of characters (the code) that uniquely identifies the item being referenced.
        `strText` - Specifies The descriptive or textual name of the identifier, e.g., myocardial infarction.
        `strNameOfCodingSystem` - Identifies the coding scheme being used in the identifier component.
        `strAlternateIdentifier` - Specifies an alternate sequence of characters (the code) that uniquely identifies the item being referenced.
        `strAlternateText` - Specifies the descriptive or textual name of the alternate identifier. See usage note in section introduction.
        `strNameOfAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strCodingSystemVersionID` - A sequence of characters that uniquely identifies a second alternate code.
        `strAlternateCodingSystemVersionId` - This component carries the version for the coding system identified by components 4-6.
        `strOriginalText` - The text as seen and/or selected by the user who entered the data.
        `strSecondAlternateIdentifier` - A sequence of characters that uniquely identifies a second alternate code.
        `strSecondAlternateText` - The descriptive or textual name of the alternate identifier.
        `strNameofSecondAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strSecondAlternateCodingSystemVersionID` - This component carries the version for the coding system identified by components 10-12.
        `strCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.3.
        `strValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.1 is obtained.
        `strValueSetVersionID` - This component carries the version for the value set identified by CWE.15. The version is a date. The date is the date/time that the value set being used was published.
        `strAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.6.
        `strAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.4 is obtained.
        `strAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.18. The version is a date.
        `strSecondAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.12.
        `strSecondAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.10 is obtained.
        `strSecondAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.21. The version is a date.

    - #### setProviderTaxStatus

          public void setProviderTaxStatus(CWE objProviderTaxStatus)

      Set Provider Tax Status (CWE) This field is about Code indicating the Provider Tax Status.
      Parameters:
        `CWE` - - object of the Provider Tax Status.

    - #### getPayerTaxStatus

          public CWE getPayerTaxStatus()

      Retrieve Payer Tax Status (CWE) This field is about Code indicating the Payer Tax Status.
      Returns:
        CWE - object of Payer Tax Status.

    - #### setPayerTaxStatus

          public void setPayerTaxStatus(java.lang.String strIdentifier,
                               java.lang.String strText,
                               java.lang.String strNameOfCodingSystem,
                               java.lang.String strAlternateIdentifier,
                               java.lang.String strAlternateText,
                               java.lang.String strNameOfAlternateCodingSystem,
                               java.lang.String strCodingSystemVersionID,
                               java.lang.String strAlternateCodingSystemVersionId,
                               java.lang.String strOriginalText,
                               java.lang.String strSecondAlternateIdentifier,
                               java.lang.String strSecondAlternateText,
                               java.lang.String strNameofSecondAlternateCodingSystem,
                               java.lang.String strSecondAlternateCodingSystemVersionID,
                               java.lang.String strCodingSystemOID,
                               java.lang.String strValueSetOID,
                               java.lang.String strValueSetVersionID,
                               java.lang.String strAlternateCodingSystemOID,
                               java.lang.String strAlternateValueSetOID,
                               java.lang.String strAlternateValueSetVersionID,
                               java.lang.String strSecondAlternateCodingSystemOID,
                               java.lang.String strSecondAlternateValueSetOID,
                               java.lang.String strSecondAlternateValueSetVersionID)

      Set Payer Tax Status (CWE) This field is about Code indicating the Payer Tax Status.
      Parameters:
        `strIdentifier` - Specifies of characters (the code) that uniquely identifies the item being referenced.
        `strText` - Specifies The descriptive or textual name of the identifier, e.g., myocardial infarction.
        `strNameOfCodingSystem` - Identifies the coding scheme being used in the identifier component.
        `strAlternateIdentifier` - Specifies an alternate sequence of characters (the code) that uniquely identifies the item being referenced.
        `strAlternateText` - Specifies the descriptive or textual name of the alternate identifier. See usage note in section introduction.
        `strNameOfAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strCodingSystemVersionID` - A sequence of characters that uniquely identifies a second alternate code.
        `strAlternateCodingSystemVersionId` - This component carries the version for the coding system identified by components 4-6.
        `strOriginalText` - The text as seen and/or selected by the user who entered the data.
        `strSecondAlternateIdentifier` - A sequence of characters that uniquely identifies a second alternate code.
        `strSecondAlternateText` - The descriptive or textual name of the alternate identifier.
        `strNameofSecondAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strSecondAlternateCodingSystemVersionID` - This component carries the version for the coding system identified by components 10-12.
        `strCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.3.
        `strValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.1 is obtained.
        `strValueSetVersionID` - This component carries the version for the value set identified by CWE.15. The version is a date. The date is the date/time that the value set being used was published.
        `strAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.6.
        `strAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.4 is obtained.
        `strAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.18. The version is a date.
        `strSecondAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.12.
        `strSecondAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.10 is obtained.
        `strSecondAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.21. The version is a date.

    - #### setPayerTaxStatus

          public void setPayerTaxStatus(CWE objPayerTaxStatus)

      Set Payer Tax Status (CWE) This field is about Code indicating the Payer Tax Status.
      Parameters:
        `CWE` - - object of the Payer Tax Status.

    - #### getSalesTaxID

          public ST getSalesTaxID()

      Retrieve Sales Tax ID (ST) This field is about The Tax ID of the Sales (general Tax identification number or VAT number).
      Returns:
        ST - object of the Sales tax ID.

    - #### setSalesTaxID

          public void setSalesTaxID(java.lang.String strSalesTaxID)

      Set Sales Tax ID (ST) This field is about The Tax ID of the Sales (general Tax identification number or VAT number).
      Parameters:
        `String` - - String of Character contain information about the Sales tax ID.

    - #### setSalesTaxID

          public void setSalesTaxID(ST objSalesTaxID)

      Set Sales Tax ID (ST) This field is about The Tax ID of the Sales (general Tax identification number or VAT number).
      Parameters:
        `ST` - - object which contain information about the Sales tax ID.

    - #### validate

          public boolean validate()
                           throws InvalidSegmentException

      Validates HL7 Message objects . Validate method checks for validation each and every segments in side the Message object against specified message Structure. Validation checks include optionality of segment or group. It also verifies the number of times segment or group is repeated in message. e.g {IVC} while parsing IVC segment validate method will check for its mandatory presence. [IVC] in this case validate will throw exception if one tries to enter more than one IVC segment.
      Specified by:
        `validate` in interface `ISegment`
      Overrides:
        `validate` in class `Segment`
      Returns:
        boolean - true or false.
      Throws:
        `InvalidSegmentException` - Throws when Segment Validation fails.