Class TaxRuleModel


  • public class TaxRuleModel
    extends java.lang.Object
    Represents a tax rule that changes the behavior of Avalara's tax engine for certain products and/or entity use codes in certain jurisdictions. Avalara supports a few different types of tax rules. For information about tax rule types, see [TaxRuleTypeId](https://developer.avalara.com/api-reference/avatax/rest/v2/models/enums/TaxRuleTypeId/) Because different types of tax rules have different behavior, some fields may change their behavior based on the type of tax rule selected. Please read the documentation for each field carefully and ensure that the value you send is appropriate for the type of tax rule.
    • Constructor Summary

      Constructors 
      Constructor Description
      TaxRuleModel()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.math.BigDecimal getCap()
      Getter for cap The maximum cap for the price of this item according to this rule.
      java.lang.Integer getCompanyId()
      Getter for companyId The unique ID number of the company that owns this tax rule.
      java.lang.String getCountry()
      Getter for country Name or ISO 3166 code identifying the country where this rule will apply.
      java.lang.String getCountyFIPS()
      Getter for countyFIPS For U.S.
      java.util.Date getCreatedDate()
      Getter for createdDate The date when this record was created.
      java.lang.Integer getCreatedUserId()
      Getter for createdUserId The User ID of the user who created this record.
      java.lang.String getCurrencyCode()
      Getter for currencyCode The currency code to use for this rule.
      java.lang.String getCustomerUsageType()
      Getter for customerUsageType DEPRECATED - Date: 10/16/2017, Version: 17.11, Message: Please use `entityUseCode` instead.
      java.lang.String getDescription()
      Getter for description A friendly name for this tax rule.
      java.util.Date getEffectiveDate()
      Getter for effectiveDate The first date at which this rule applies.
      java.util.Date getEndDate()
      Getter for endDate The last date for which this rule applies.
      java.lang.String getEntityUseCode()
      Getter for entityUseCode The entity use code to which this rule applies.
      java.lang.Integer getId()
      Getter for id The unique ID number of this tax rule.
      java.lang.Boolean getIsAllJuris()
      Getter for isAllJuris Allows you to make tax rules apply to lower jurisdictions.
      java.lang.Boolean getIsSTPro()
      Getter for isSTPro DEPRECATED - Date: 8/27/2018, Version: 18.9, Message: This field is no longer required.
      java.lang.String getJurisCode()
      Getter for jurisCode The code of the jurisdiction to which this tax rule applies.
      JurisdictionType getJurisdictionTypeId()
      Getter for jurisdictionTypeId The type of the jurisdiction to which this tax rule applies.
      java.lang.String getJurisName()
      Getter for jurisName The name of the jurisdiction to which this tax rule applies.
      JurisTypeId getJurisTypeId()
      Getter for jurisTypeId DEPRECATED - Date: 12/20/2017, Version: 18.1, Message: Please use `jurisdictionTypeId` instead.
      java.util.Date getModifiedDate()
      Getter for modifiedDate The date/time when this record was last modified.
      java.lang.Integer getModifiedUserId()
      Getter for modifiedUserId The user ID of the user who last modified this record.
      java.lang.String getNonPassthroughExpression()
      Getter for nonPassthroughExpression Reserved for Avalara internal usage.
      java.lang.String getOptions()
      Getter for options Supports custom options for your tax rule.
      java.lang.Integer getPreferredProgramId()
      Getter for preferredProgramId Reserved for Avalara internal usage.
      java.lang.String getRateTypeCode()
      Getter for rateTypeCode Indicates the code of the rate type that applies to this rule.
      RateType getRateTypeId()
      Getter for rateTypeId DEPRECATED - Date: 8/27/2018, Version: 18.9, Message: Please use `rateTypeCode`, `taxTypeGroup` and `subTaxType` instead.
      java.lang.String getRegion()
      Getter for region Name or ISO 3166 code identifying the region where this rule will apply.
      Sourcing getSourcing()
      Getter for sourcing The sourcing types to which this rule applies.
      java.lang.String getStateFIPS()
      Getter for stateFIPS For U.S.
      java.lang.String getTaxCode()
      Getter for taxCode For rules that apply to a specific tax code only, this specifies which tax code is affected by this rule.
      java.lang.Integer getTaxCodeId()
      Getter for taxCodeId For rules that apply to a specific tax code only, this specifies which tax code is affected by this rule.
      TaxRuleTypeId getTaxRuleTypeId()
      Getter for taxRuleTypeId This type value determines the behavior of the tax rule.
      java.lang.String getTaxSubType()
      Getter for taxSubType This field has different behavior based on the type of rule.
      java.lang.String getTaxTypeGroup()
      Getter for taxTypeGroup This field has different behavior based on the type of rule.
      MatchingTaxType getTaxTypeId()
      Getter for taxTypeId Some tax type groups contain multiple different types of tax.
      java.math.BigDecimal getThreshold()
      Getter for threshold The per-unit threshold that must be met before this rule applies.
      java.lang.Integer getUomId()
      Getter for uomId For tax rules that are calculated using units of measurement, this indicates the unit of measurement type used to calculate the amounts for this rule.
      java.math.BigDecimal getValue()
      Getter for value This field has different behavior based on the type of the tax rule.
      void setCap​(java.math.BigDecimal value)
      Setter for cap The maximum cap for the price of this item according to this rule.
      void setCompanyId​(java.lang.Integer value)
      Setter for companyId The unique ID number of the company that owns this tax rule.
      void setCountry​(java.lang.String value)
      Setter for country Name or ISO 3166 code identifying the country where this rule will apply.
      void setCountyFIPS​(java.lang.String value)
      Setter for countyFIPS For U.S.
      void setCreatedDate​(java.util.Date value)
      Setter for createdDate The date when this record was created.
      void setCreatedUserId​(java.lang.Integer value)
      Setter for createdUserId The User ID of the user who created this record.
      void setCurrencyCode​(java.lang.String value)
      Setter for currencyCode The currency code to use for this rule.
      void setCustomerUsageType​(java.lang.String value)
      Setter for customerUsageType DEPRECATED - Date: 10/16/2017, Version: 17.11, Message: Please use `entityUseCode` instead.
      void setDescription​(java.lang.String value)
      Setter for description A friendly name for this tax rule.
      void setEffectiveDate​(java.util.Date value)
      Setter for effectiveDate The first date at which this rule applies.
      void setEndDate​(java.util.Date value)
      Setter for endDate The last date for which this rule applies.
      void setEntityUseCode​(java.lang.String value)
      Setter for entityUseCode The entity use code to which this rule applies.
      void setId​(java.lang.Integer value)
      Setter for id The unique ID number of this tax rule.
      void setIsAllJuris​(java.lang.Boolean value)
      Setter for isAllJuris Allows you to make tax rules apply to lower jurisdictions.
      void setIsSTPro​(java.lang.Boolean value)
      Setter for isSTPro DEPRECATED - Date: 8/27/2018, Version: 18.9, Message: This field is no longer required.
      void setJurisCode​(java.lang.String value)
      Setter for jurisCode The code of the jurisdiction to which this tax rule applies.
      void setJurisdictionTypeId​(JurisdictionType value)
      Setter for jurisdictionTypeId The type of the jurisdiction to which this tax rule applies.
      void setJurisName​(java.lang.String value)
      Setter for jurisName The name of the jurisdiction to which this tax rule applies.
      void setJurisTypeId​(JurisTypeId value)
      Setter for jurisTypeId DEPRECATED - Date: 12/20/2017, Version: 18.1, Message: Please use `jurisdictionTypeId` instead.
      void setModifiedDate​(java.util.Date value)
      Setter for modifiedDate The date/time when this record was last modified.
      void setModifiedUserId​(java.lang.Integer value)
      Setter for modifiedUserId The user ID of the user who last modified this record.
      void setNonPassthroughExpression​(java.lang.String value)
      Setter for nonPassthroughExpression Reserved for Avalara internal usage.
      void setOptions​(java.lang.String value)
      Setter for options Supports custom options for your tax rule.
      void setPreferredProgramId​(java.lang.Integer value)
      Setter for preferredProgramId Reserved for Avalara internal usage.
      void setRateTypeCode​(java.lang.String value)
      Setter for rateTypeCode Indicates the code of the rate type that applies to this rule.
      void setRateTypeId​(RateType value)
      Setter for rateTypeId DEPRECATED - Date: 8/27/2018, Version: 18.9, Message: Please use `rateTypeCode`, `taxTypeGroup` and `subTaxType` instead.
      void setRegion​(java.lang.String value)
      Setter for region Name or ISO 3166 code identifying the region where this rule will apply.
      void setSourcing​(Sourcing value)
      Setter for sourcing The sourcing types to which this rule applies.
      void setStateFIPS​(java.lang.String value)
      Setter for stateFIPS For U.S.
      void setTaxCode​(java.lang.String value)
      Setter for taxCode For rules that apply to a specific tax code only, this specifies which tax code is affected by this rule.
      void setTaxCodeId​(java.lang.Integer value)
      Setter for taxCodeId For rules that apply to a specific tax code only, this specifies which tax code is affected by this rule.
      void setTaxRuleTypeId​(TaxRuleTypeId value)
      Setter for taxRuleTypeId This type value determines the behavior of the tax rule.
      void setTaxSubType​(java.lang.String value)
      Setter for taxSubType This field has different behavior based on the type of rule.
      void setTaxTypeGroup​(java.lang.String value)
      Setter for taxTypeGroup This field has different behavior based on the type of rule.
      void setTaxTypeId​(MatchingTaxType value)
      Setter for taxTypeId Some tax type groups contain multiple different types of tax.
      void setThreshold​(java.math.BigDecimal value)
      Setter for threshold The per-unit threshold that must be met before this rule applies.
      void setUomId​(java.lang.Integer value)
      Setter for uomId For tax rules that are calculated using units of measurement, this indicates the unit of measurement type used to calculate the amounts for this rule.
      void setValue​(java.math.BigDecimal value)
      Setter for value This field has different behavior based on the type of the tax rule.
      java.lang.String toString()
      Returns a JSON string representation of TaxRuleModel
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • TaxRuleModel

        public TaxRuleModel()
    • Method Detail

      • getId

        public java.lang.Integer getId()
        Getter for id The unique ID number of this tax rule.
      • setId

        public void setId​(java.lang.Integer value)
        Setter for id The unique ID number of this tax rule.
      • getCompanyId

        public java.lang.Integer getCompanyId()
        Getter for companyId The unique ID number of the company that owns this tax rule.
      • setCompanyId

        public void setCompanyId​(java.lang.Integer value)
        Setter for companyId The unique ID number of the company that owns this tax rule.
      • getTaxCodeId

        public java.lang.Integer getTaxCodeId()
        Getter for taxCodeId For rules that apply to a specific tax code only, this specifies which tax code is affected by this rule. You can choose to specify a tax code either by passing its unique ID number in the `taxCodeId` field or by passing its alphanumeric code in the `taxCode` field. To search for the appropriate tax code for your custom rule, use the `ListTaxCodes` API. The `RateOverrideRule`, `BaseRule`, and `ExemptEntityRule` rule types can be applied to all tax codes. To make a rule that applies to all tax codes, leave both fields blank. The `ProductTaxabilityRule` rule must be associated with a tax code. If you attempt to create a product taxability rule without a tax code, you will get an error message.
      • setTaxCodeId

        public void setTaxCodeId​(java.lang.Integer value)
        Setter for taxCodeId For rules that apply to a specific tax code only, this specifies which tax code is affected by this rule. You can choose to specify a tax code either by passing its unique ID number in the `taxCodeId` field or by passing its alphanumeric code in the `taxCode` field. To search for the appropriate tax code for your custom rule, use the `ListTaxCodes` API. The `RateOverrideRule`, `BaseRule`, and `ExemptEntityRule` rule types can be applied to all tax codes. To make a rule that applies to all tax codes, leave both fields blank. The `ProductTaxabilityRule` rule must be associated with a tax code. If you attempt to create a product taxability rule without a tax code, you will get an error message.
      • getTaxCode

        public java.lang.String getTaxCode()
        Getter for taxCode For rules that apply to a specific tax code only, this specifies which tax code is affected by this rule. You can choose to specify a tax code either by passing its unique ID number in the `taxCodeId` field or by passing its alphanumeric code in the `taxCode` field. To search for the appropriate tax code for your custom rule, use the `ListTaxCodes` API. The `RateOverrideRule`, `BaseRule`, and `ExemptEntityRule` rule types can be applied to all tax codes. To make a rule that applies to all tax codes, leave both fields blank. The `ProductTaxabilityRule` rule must be associated with a tax code. If you attempt to create a product taxability rule without a tax code, you will get an error message.
      • setTaxCode

        public void setTaxCode​(java.lang.String value)
        Setter for taxCode For rules that apply to a specific tax code only, this specifies which tax code is affected by this rule. You can choose to specify a tax code either by passing its unique ID number in the `taxCodeId` field or by passing its alphanumeric code in the `taxCode` field. To search for the appropriate tax code for your custom rule, use the `ListTaxCodes` API. The `RateOverrideRule`, `BaseRule`, and `ExemptEntityRule` rule types can be applied to all tax codes. To make a rule that applies to all tax codes, leave both fields blank. The `ProductTaxabilityRule` rule must be associated with a tax code. If you attempt to create a product taxability rule without a tax code, you will get an error message.
      • getStateFIPS

        public java.lang.String getStateFIPS()
        Getter for stateFIPS For U.S. tax rules, this is the state's Federal Information Processing Standard (FIPS) code. This field is required for rules that apply to specific jurisdictions in the United States. It is not required if you set the `isAllJuris` flag to true.
      • setStateFIPS

        public void setStateFIPS​(java.lang.String value)
        Setter for stateFIPS For U.S. tax rules, this is the state's Federal Information Processing Standard (FIPS) code. This field is required for rules that apply to specific jurisdictions in the United States. It is not required if you set the `isAllJuris` flag to true.
      • getJurisName

        public java.lang.String getJurisName()
        Getter for jurisName The name of the jurisdiction to which this tax rule applies. Custom tax rules can apply to a specific jurisdiction or to all jurisdictions. To select a jurisdiction, use the [ListJurisdictions API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListJurisdictions/) or the [ListJurisdictionsByAddress API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListJurisdictionsByAddress/). To set a rule that applies to all jurisdictions of a specific type, see `isAllJuris`. Once you have determined which jurisdiction you wish to assign to the tax rule, you should fill in the `jurisName`, `jurisCode`, and `jurisdictionTypeId` fields using the information you retrieved from the API above.
      • setJurisName

        public void setJurisName​(java.lang.String value)
        Setter for jurisName The name of the jurisdiction to which this tax rule applies. Custom tax rules can apply to a specific jurisdiction or to all jurisdictions. To select a jurisdiction, use the [ListJurisdictions API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListJurisdictions/) or the [ListJurisdictionsByAddress API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListJurisdictionsByAddress/). To set a rule that applies to all jurisdictions of a specific type, see `isAllJuris`. Once you have determined which jurisdiction you wish to assign to the tax rule, you should fill in the `jurisName`, `jurisCode`, and `jurisdictionTypeId` fields using the information you retrieved from the API above.
      • getJurisCode

        public java.lang.String getJurisCode()
        Getter for jurisCode The code of the jurisdiction to which this tax rule applies. Custom tax rules can apply to a specific jurisdiction or to all jurisdictions. To select a jurisdiction, use the [ListJurisdictions API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListJurisdictions/) or the [ListJurisdictionsByAddress API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListJurisdictionsByAddress/). Once you have determined which jurisdiction you wish to assign to the tax rule, you should fill in the `jurisName`, `jurisCode`, and `jurisdictionTypeId` fields using the information you retrieved from the API above.
      • setJurisCode

        public void setJurisCode​(java.lang.String value)
        Setter for jurisCode The code of the jurisdiction to which this tax rule applies. Custom tax rules can apply to a specific jurisdiction or to all jurisdictions. To select a jurisdiction, use the [ListJurisdictions API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListJurisdictions/) or the [ListJurisdictionsByAddress API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListJurisdictionsByAddress/). Once you have determined which jurisdiction you wish to assign to the tax rule, you should fill in the `jurisName`, `jurisCode`, and `jurisdictionTypeId` fields using the information you retrieved from the API above.
      • getJurisTypeId

        public JurisTypeId getJurisTypeId()
        Getter for jurisTypeId DEPRECATED - Date: 12/20/2017, Version: 18.1, Message: Please use `jurisdictionTypeId` instead.
      • setJurisTypeId

        public void setJurisTypeId​(JurisTypeId value)
        Setter for jurisTypeId DEPRECATED - Date: 12/20/2017, Version: 18.1, Message: Please use `jurisdictionTypeId` instead.
      • getJurisdictionTypeId

        public JurisdictionType getJurisdictionTypeId()
        Getter for jurisdictionTypeId The type of the jurisdiction to which this tax rule applies. Custom tax rules can apply to a specific jurisdiction or to all jurisdictions. To select a jurisdiction, use the [ListJurisdictions API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListJurisdictions/) or the [ListJurisdictionsByAddress API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListJurisdictionsByAddress/). Once you have determined which jurisdiction you wish to assign to the tax rule, you should fill in the `jurisName`, `jurisCode`, and `jurisdictionTypeId` fields using the information you retrieved from the API above. To make a custom tax rule for US or Canada that applies to all jurisdictions of a specific type, see the `isAllJuris` field for more information.
      • setJurisdictionTypeId

        public void setJurisdictionTypeId​(JurisdictionType value)
        Setter for jurisdictionTypeId The type of the jurisdiction to which this tax rule applies. Custom tax rules can apply to a specific jurisdiction or to all jurisdictions. To select a jurisdiction, use the [ListJurisdictions API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListJurisdictions/) or the [ListJurisdictionsByAddress API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListJurisdictionsByAddress/). Once you have determined which jurisdiction you wish to assign to the tax rule, you should fill in the `jurisName`, `jurisCode`, and `jurisdictionTypeId` fields using the information you retrieved from the API above. To make a custom tax rule for US or Canada that applies to all jurisdictions of a specific type, see the `isAllJuris` field for more information.
      • getCustomerUsageType

        public java.lang.String getCustomerUsageType()
        Getter for customerUsageType DEPRECATED - Date: 10/16/2017, Version: 17.11, Message: Please use `entityUseCode` instead.
      • setCustomerUsageType

        public void setCustomerUsageType​(java.lang.String value)
        Setter for customerUsageType DEPRECATED - Date: 10/16/2017, Version: 17.11, Message: Please use `entityUseCode` instead.
      • getEntityUseCode

        public java.lang.String getEntityUseCode()
        Getter for entityUseCode The entity use code to which this rule applies. You can create custom `entityUseCode` values with specific behavior using this API, or you can change the behavior of Avalara's system-defined entity use codes. For a full list of Avalara-defined entity use codes, see the [ListEntityUseCodes API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListEntityUseCodes/).
      • setEntityUseCode

        public void setEntityUseCode​(java.lang.String value)
        Setter for entityUseCode The entity use code to which this rule applies. You can create custom `entityUseCode` values with specific behavior using this API, or you can change the behavior of Avalara's system-defined entity use codes. For a full list of Avalara-defined entity use codes, see the [ListEntityUseCodes API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListEntityUseCodes/).
      • getTaxTypeId

        public MatchingTaxType getTaxTypeId()
        Getter for taxTypeId Some tax type groups contain multiple different types of tax. To create a rule that affects only one type of tax within a tax type group, set this value to the code matching the specific tax type within that group. The custom tax rule will then only apply to taxes calculated for that specific type. For rules that affect all tax types, use the value `A` to match `All` tax types within that group.
      • setTaxTypeId

        public void setTaxTypeId​(MatchingTaxType value)
        Setter for taxTypeId Some tax type groups contain multiple different types of tax. To create a rule that affects only one type of tax within a tax type group, set this value to the code matching the specific tax type within that group. The custom tax rule will then only apply to taxes calculated for that specific type. For rules that affect all tax types, use the value `A` to match `All` tax types within that group.
      • getRateTypeId

        public RateType getRateTypeId()
        Getter for rateTypeId DEPRECATED - Date: 8/27/2018, Version: 18.9, Message: Please use `rateTypeCode`, `taxTypeGroup` and `subTaxType` instead.
      • setRateTypeId

        public void setRateTypeId​(RateType value)
        Setter for rateTypeId DEPRECATED - Date: 8/27/2018, Version: 18.9, Message: Please use `rateTypeCode`, `taxTypeGroup` and `subTaxType` instead.
      • getRateTypeCode

        public java.lang.String getRateTypeCode()
        Getter for rateTypeCode Indicates the code of the rate type that applies to this rule. Use [ListRateTypesByCountry](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListRateTypesByCountry/) API for a full list of rate type codes. If you specify a value in the rateTypeCode field, this rule will cause tax lines that are affected by the rule to change to a different rate type code.
      • setRateTypeCode

        public void setRateTypeCode​(java.lang.String value)
        Setter for rateTypeCode Indicates the code of the rate type that applies to this rule. Use [ListRateTypesByCountry](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListRateTypesByCountry/) API for a full list of rate type codes. If you specify a value in the rateTypeCode field, this rule will cause tax lines that are affected by the rule to change to a different rate type code.
      • getTaxRuleTypeId

        public TaxRuleTypeId getTaxRuleTypeId()
        Getter for taxRuleTypeId This type value determines the behavior of the tax rule. You can specify that this rule controls the product's taxability or exempt / nontaxable status, the product's rate (for example, if you have been granted an official ruling for your product's rate that differs from the official rate), or other types of behavior.
      • setTaxRuleTypeId

        public void setTaxRuleTypeId​(TaxRuleTypeId value)
        Setter for taxRuleTypeId This type value determines the behavior of the tax rule. You can specify that this rule controls the product's taxability or exempt / nontaxable status, the product's rate (for example, if you have been granted an official ruling for your product's rate that differs from the official rate), or other types of behavior.
      • getIsAllJuris

        public java.lang.Boolean getIsAllJuris()
        Getter for isAllJuris Allows you to make tax rules apply to lower jurisdictions. This feature is only available in the United States and Canada. * In the United States, this value can be used for rules written at the `State` jurisdictional level. If set to `true`, this rule will at the state level, county level, city level, and special jurisdiction level. * In Canada, this value can be used for rules written at the `Country` or `State` jurisdictional levels. If set to `true`, this rule will at all lower jurisdictional levels. For any other use case, this value must be `false`.
      • setIsAllJuris

        public void setIsAllJuris​(java.lang.Boolean value)
        Setter for isAllJuris Allows you to make tax rules apply to lower jurisdictions. This feature is only available in the United States and Canada. * In the United States, this value can be used for rules written at the `State` jurisdictional level. If set to `true`, this rule will at the state level, county level, city level, and special jurisdiction level. * In Canada, this value can be used for rules written at the `Country` or `State` jurisdictional levels. If set to `true`, this rule will at all lower jurisdictional levels. For any other use case, this value must be `false`.
      • getValue

        public java.math.BigDecimal getValue()
        Getter for value This field has different behavior based on the type of the tax rule. * For a product taxability rule, this value is either 1 or 0, indicating taxable or non-taxable. * For a rate override rule, this value is the corrected rate stored as a decimal, for example, a rate of 5% would be stored as 0.05 decimal. If you use the special value of 1.0, only the cap and threshold values will be applied and the rate will be left alone.
      • setValue

        public void setValue​(java.math.BigDecimal value)
        Setter for value This field has different behavior based on the type of the tax rule. * For a product taxability rule, this value is either 1 or 0, indicating taxable or non-taxable. * For a rate override rule, this value is the corrected rate stored as a decimal, for example, a rate of 5% would be stored as 0.05 decimal. If you use the special value of 1.0, only the cap and threshold values will be applied and the rate will be left alone.
      • getCap

        public java.math.BigDecimal getCap()
        Getter for cap The maximum cap for the price of this item according to this rule. Any amount above this cap will not be subject to this rule. For example, if you must pay 5% of a product's value up to a maximum value of $1000, you would set the `cap` to `1000.00` and the `value` to `0.05`.
      • setCap

        public void setCap​(java.math.BigDecimal value)
        Setter for cap The maximum cap for the price of this item according to this rule. Any amount above this cap will not be subject to this rule. For example, if you must pay 5% of a product's value up to a maximum value of $1000, you would set the `cap` to `1000.00` and the `value` to `0.05`.
      • getThreshold

        public java.math.BigDecimal getThreshold()
        Getter for threshold The per-unit threshold that must be met before this rule applies. For example, if your product is nontaxable unless it is above $100 per product, you would set the `threshold` value to `100`. In this case, the rate for the rule would apply to the entire amount above $100. You can also create rules that make the entire product taxable if it exceeds a threshold, but is nontaxable if it is below the threshold. To choose this, set the `options` field to the value `TaxAll`.
      • setThreshold

        public void setThreshold​(java.math.BigDecimal value)
        Setter for threshold The per-unit threshold that must be met before this rule applies. For example, if your product is nontaxable unless it is above $100 per product, you would set the `threshold` value to `100`. In this case, the rate for the rule would apply to the entire amount above $100. You can also create rules that make the entire product taxable if it exceeds a threshold, but is nontaxable if it is below the threshold. To choose this, set the `options` field to the value `TaxAll`.
      • getOptions

        public java.lang.String getOptions()
        Getter for options Supports custom options for your tax rule. Supported options include: * `TaxAll` - This value indicates that the entire amount of the line becomes taxable when the line amount exceeds the `threshold`.
      • setOptions

        public void setOptions​(java.lang.String value)
        Setter for options Supports custom options for your tax rule. Supported options include: * `TaxAll` - This value indicates that the entire amount of the line becomes taxable when the line amount exceeds the `threshold`.
      • getEffectiveDate

        public java.util.Date getEffectiveDate()
        Getter for effectiveDate The first date at which this rule applies. If `null`, this rule will apply to all dates prior to the end date.
      • setEffectiveDate

        public void setEffectiveDate​(java.util.Date value)
        Setter for effectiveDate The first date at which this rule applies. If `null`, this rule will apply to all dates prior to the end date.
      • getEndDate

        public java.util.Date getEndDate()
        Getter for endDate The last date for which this rule applies. If `null`, this rule will apply to all dates after the effective date.
      • setEndDate

        public void setEndDate​(java.util.Date value)
        Setter for endDate The last date for which this rule applies. If `null`, this rule will apply to all dates after the effective date.
      • getDescription

        public java.lang.String getDescription()
        Getter for description A friendly name for this tax rule.
      • setDescription

        public void setDescription​(java.lang.String value)
        Setter for description A friendly name for this tax rule.
      • getCountyFIPS

        public java.lang.String getCountyFIPS()
        Getter for countyFIPS For U.S. tax rules, this is the county's Federal Information Processing Standard (FIPS) code. This field is required for rules that apply to specific jurisdictions in the United States. It is not required if you set the `isAllJuris` flag to true.
      • setCountyFIPS

        public void setCountyFIPS​(java.lang.String value)
        Setter for countyFIPS For U.S. tax rules, this is the county's Federal Information Processing Standard (FIPS) code. This field is required for rules that apply to specific jurisdictions in the United States. It is not required if you set the `isAllJuris` flag to true.
      • getIsSTPro

        public java.lang.Boolean getIsSTPro()
        Getter for isSTPro DEPRECATED - Date: 8/27/2018, Version: 18.9, Message: This field is no longer required.
      • setIsSTPro

        public void setIsSTPro​(java.lang.Boolean value)
        Setter for isSTPro DEPRECATED - Date: 8/27/2018, Version: 18.9, Message: This field is no longer required.
      • getCountry

        public java.lang.String getCountry()
        Getter for country Name or ISO 3166 code identifying the country where this rule will apply. This field supports many different country identifiers: * Two character ISO 3166 codes * Three character ISO 3166 codes * Fully spelled out names of the country in ISO supported languages * Common alternative spellings for many countries For a full list of all supported codes and names, please see the Definitions API `ListCountries`.
      • setCountry

        public void setCountry​(java.lang.String value)
        Setter for country Name or ISO 3166 code identifying the country where this rule will apply. This field supports many different country identifiers: * Two character ISO 3166 codes * Three character ISO 3166 codes * Fully spelled out names of the country in ISO supported languages * Common alternative spellings for many countries For a full list of all supported codes and names, please see the Definitions API `ListCountries`.
      • getRegion

        public java.lang.String getRegion()
        Getter for region Name or ISO 3166 code identifying the region where this rule will apply. This field supports many different region identifiers: * Two and three character ISO 3166 region codes * Fully spelled out names of the region in ISO supported languages * Common alternative spellings for many regions For a full list of all supported codes and names, please see the Definitions API `ListRegions`. NOTE: Region is required for US and not required for non-US countries because the user may be either creating a Country-level or Region-level rule.
      • setRegion

        public void setRegion​(java.lang.String value)
        Setter for region Name or ISO 3166 code identifying the region where this rule will apply. This field supports many different region identifiers: * Two and three character ISO 3166 region codes * Fully spelled out names of the region in ISO supported languages * Common alternative spellings for many regions For a full list of all supported codes and names, please see the Definitions API `ListRegions`. NOTE: Region is required for US and not required for non-US countries because the user may be either creating a Country-level or Region-level rule.
      • getSourcing

        public Sourcing getSourcing()
        Getter for sourcing The sourcing types to which this rule applies.
      • setSourcing

        public void setSourcing​(Sourcing value)
        Setter for sourcing The sourcing types to which this rule applies.
      • getTaxTypeGroup

        public java.lang.String getTaxTypeGroup()
        Getter for taxTypeGroup This field has different behavior based on the type of rule. * For a product taxability rule, if the rule applies to an item, this value will override the tax type group of the original product. * For other rules, this value determines what tax type groups will be affected by the rule. Refer to `ListTaxTypeGroups` for a list of tax type groups supported by AvaTax.
      • setTaxTypeGroup

        public void setTaxTypeGroup​(java.lang.String value)
        Setter for taxTypeGroup This field has different behavior based on the type of rule. * For a product taxability rule, if the rule applies to an item, this value will override the tax type group of the original product. * For other rules, this value determines what tax type groups will be affected by the rule. Refer to `ListTaxTypeGroups` for a list of tax type groups supported by AvaTax.
      • getTaxSubType

        public java.lang.String getTaxSubType()
        Getter for taxSubType This field has different behavior based on the type of rule. * For a product taxability rule, if the rule applies to an item, this value will override the tax sub type of the original product. * For other rules, this value determines what tax sub types will be affected by the rule. Refer to `ListTaxSubtypes` for a list of tax sub types supported by AvaTax.
      • setTaxSubType

        public void setTaxSubType​(java.lang.String value)
        Setter for taxSubType This field has different behavior based on the type of rule. * For a product taxability rule, if the rule applies to an item, this value will override the tax sub type of the original product. * For other rules, this value determines what tax sub types will be affected by the rule. Refer to `ListTaxSubtypes` for a list of tax sub types supported by AvaTax.
      • getNonPassthroughExpression

        public java.lang.String getNonPassthroughExpression()
        Getter for nonPassthroughExpression Reserved for Avalara internal usage. Leave this field null.
      • setNonPassthroughExpression

        public void setNonPassthroughExpression​(java.lang.String value)
        Setter for nonPassthroughExpression Reserved for Avalara internal usage. Leave this field null.
      • getCurrencyCode

        public java.lang.String getCurrencyCode()
        Getter for currencyCode The currency code to use for this rule. For a list of currencies supported by AvaTax, use the [ListCurrencies API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListCurrencies/).
      • setCurrencyCode

        public void setCurrencyCode​(java.lang.String value)
        Setter for currencyCode The currency code to use for this rule. For a list of currencies supported by AvaTax, use the [ListCurrencies API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListCurrencies/).
      • getPreferredProgramId

        public java.lang.Integer getPreferredProgramId()
        Getter for preferredProgramId Reserved for Avalara internal usage. Leave this field null.
      • setPreferredProgramId

        public void setPreferredProgramId​(java.lang.Integer value)
        Setter for preferredProgramId Reserved for Avalara internal usage. Leave this field null.
      • getUomId

        public java.lang.Integer getUomId()
        Getter for uomId For tax rules that are calculated using units of measurement, this indicates the unit of measurement type used to calculate the amounts for this rule. For a list of units of measurement, use the [ListUnitsOfMeasurement API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListUnitOfMeasurement/).
      • setUomId

        public void setUomId​(java.lang.Integer value)
        Setter for uomId For tax rules that are calculated using units of measurement, this indicates the unit of measurement type used to calculate the amounts for this rule. For a list of units of measurement, use the [ListUnitsOfMeasurement API](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListUnitOfMeasurement/).
      • getCreatedDate

        public java.util.Date getCreatedDate()
        Getter for createdDate The date when this record was created.
      • setCreatedDate

        public void setCreatedDate​(java.util.Date value)
        Setter for createdDate The date when this record was created.
      • getCreatedUserId

        public java.lang.Integer getCreatedUserId()
        Getter for createdUserId The User ID of the user who created this record.
      • setCreatedUserId

        public void setCreatedUserId​(java.lang.Integer value)
        Setter for createdUserId The User ID of the user who created this record.
      • getModifiedDate

        public java.util.Date getModifiedDate()
        Getter for modifiedDate The date/time when this record was last modified.
      • setModifiedDate

        public void setModifiedDate​(java.util.Date value)
        Setter for modifiedDate The date/time when this record was last modified.
      • getModifiedUserId

        public java.lang.Integer getModifiedUserId()
        Getter for modifiedUserId The user ID of the user who last modified this record.
      • setModifiedUserId

        public void setModifiedUserId​(java.lang.Integer value)
        Setter for modifiedUserId The user ID of the user who last modified this record.
      • toString

        public java.lang.String toString()
        Returns a JSON string representation of TaxRuleModel
        Overrides:
        toString in class java.lang.Object