Class TaxRateDraftBuilder

java.lang.Object
com.commercetools.api.models.tax_category.TaxRateDraftBuilder
All Implemented Interfaces:
Builder<TaxRateDraft>

public class TaxRateDraftBuilder extends Object implements Builder<TaxRateDraft>
TaxRateDraftBuilder
Example to create an instance using the builder pattern

     TaxRateDraft taxRateDraft = TaxRateDraft.builder()
             .name("{name}")
             .includedInPrice(true)
             .country("{country}")
             .build()
 
  • Constructor Details

    • TaxRateDraftBuilder

      public TaxRateDraftBuilder()
  • Method Details

    • name

      public TaxRateDraftBuilder name(String name)

      Name of the TaxRate.

      Parameters:
      name - value to be set
      Returns:
      Builder
    • amount

      public TaxRateDraftBuilder amount(@Nullable Double amount)

      Tax rate.

      Either amount or subRates must be defined. If both are defined, the value of this field must be equal to the sum of the subRates amounts; otherwise, an InvalidOperation error is returned.

      Parameters:
      amount - value to be set
      Returns:
      Builder
    • includedInPrice

      public TaxRateDraftBuilder includedInPrice(Boolean includedInPrice)

      Whether tax is included in Embedded Prices or Standalone Prices, and the taxedPrice is present on LineItems. In this case, the totalNet price on TaxedPrice includes the TaxRate.

      Parameters:
      includedInPrice - value to be set
      Returns:
      Builder
    • country

      public TaxRateDraftBuilder country(String country)

      Country in which the tax rate is applied in ISO 3166-1 alpha-2 format.

      If the provided combination of country and state exists for the TaxCategory, a DuplicateField error is returned.

      Parameters:
      country - value to be set
      Returns:
      Builder
    • state

      public TaxRateDraftBuilder state(@Nullable String state)

      State within the country, such as Texas in the United States. The value is case-sensitive and must use the same casing as the state value in the Cart shippingAddress. Empty strings are treated as if state was omitted.

      If state is omitted, the resulting TaxRate does not act as a wildcard: it only matches a Cart whose shippingAddress also has no state value. To apply the same rate across states, either define an individual TaxRate for each state, or use the region field or a Custom Field on the shipping address as described in Address matching.

      If the provided combination of country and state exists for the TaxCategory, a DuplicateField error is returned.

      Parameters:
      state - value to be set
      Returns:
      Builder
    • subRates

      public TaxRateDraftBuilder subRates(@Nullable SubRate... subRates)

      Used when the total tax is a combination of multiple taxes (for example, local, state/provincial, and/or federal taxes). If amount is defined, the total of all subrates must equal amount. These subrates are used to calculate the taxPortions field of a Cart or Order and the taxedPrice field of LineItems, CustomLineItems, and ShippingInfos.

      Parameters:
      subRates - value to be set
      Returns:
      Builder
    • subRates

      public TaxRateDraftBuilder subRates(@Nullable List<SubRate> subRates)

      Used when the total tax is a combination of multiple taxes (for example, local, state/provincial, and/or federal taxes). If amount is defined, the total of all subrates must equal amount. These subrates are used to calculate the taxPortions field of a Cart or Order and the taxedPrice field of LineItems, CustomLineItems, and ShippingInfos.

      Parameters:
      subRates - value to be set
      Returns:
      Builder
    • plusSubRates

      public TaxRateDraftBuilder plusSubRates(@Nullable SubRate... subRates)

      Used when the total tax is a combination of multiple taxes (for example, local, state/provincial, and/or federal taxes). If amount is defined, the total of all subrates must equal amount. These subrates are used to calculate the taxPortions field of a Cart or Order and the taxedPrice field of LineItems, CustomLineItems, and ShippingInfos.

      Parameters:
      subRates - value to be set
      Returns:
      Builder
    • plusSubRates

      Used when the total tax is a combination of multiple taxes (for example, local, state/provincial, and/or federal taxes). If amount is defined, the total of all subrates must equal amount. These subrates are used to calculate the taxPortions field of a Cart or Order and the taxedPrice field of LineItems, CustomLineItems, and ShippingInfos.

      Parameters:
      builder - function to build the subRates value
      Returns:
      Builder
    • withSubRates

      Used when the total tax is a combination of multiple taxes (for example, local, state/provincial, and/or federal taxes). If amount is defined, the total of all subrates must equal amount. These subrates are used to calculate the taxPortions field of a Cart or Order and the taxedPrice field of LineItems, CustomLineItems, and ShippingInfos.

      Parameters:
      builder - function to build the subRates value
      Returns:
      Builder
    • addSubRates

      public TaxRateDraftBuilder addSubRates(Function<SubRateBuilder,SubRate> builder)

      Used when the total tax is a combination of multiple taxes (for example, local, state/provincial, and/or federal taxes). If amount is defined, the total of all subrates must equal amount. These subrates are used to calculate the taxPortions field of a Cart or Order and the taxedPrice field of LineItems, CustomLineItems, and ShippingInfos.

      Parameters:
      builder - function to build the subRates value
      Returns:
      Builder
    • setSubRates

      public TaxRateDraftBuilder setSubRates(Function<SubRateBuilder,SubRate> builder)

      Used when the total tax is a combination of multiple taxes (for example, local, state/provincial, and/or federal taxes). If amount is defined, the total of all subrates must equal amount. These subrates are used to calculate the taxPortions field of a Cart or Order and the taxedPrice field of LineItems, CustomLineItems, and ShippingInfos.

      Parameters:
      builder - function to build the subRates value
      Returns:
      Builder
    • key

      public TaxRateDraftBuilder key(@Nullable String key)

      User-defined identifier of the TaxRate.

      If the provided key is used by another TaxRate in the TaxCategory, a DuplicateField error is returned.

      Parameters:
      key - value to be set
      Returns:
      Builder
    • taxRoundingTarget

      public TaxRateDraftBuilder taxRoundingTarget(@Nullable TaxRoundingTarget taxRoundingTarget)

      Determines whether the taxRoundingMode of the Cart or Order is applied to the net price or the tax amount when this TaxRate is included in the price. The field is ignored if includedInPrice is false.

      Parameters:
      taxRoundingTarget - value to be set
      Returns:
      Builder
    • getName

      public String getName()

      Name of the TaxRate.

      Returns:
      name
    • getAmount

      @Nullable public Double getAmount()

      Tax rate.

      Either amount or subRates must be defined. If both are defined, the value of this field must be equal to the sum of the subRates amounts; otherwise, an InvalidOperation error is returned.

      Returns:
      amount
    • getIncludedInPrice

      public Boolean getIncludedInPrice()

      Whether tax is included in Embedded Prices or Standalone Prices, and the taxedPrice is present on LineItems. In this case, the totalNet price on TaxedPrice includes the TaxRate.

      Returns:
      includedInPrice
    • getCountry

      public String getCountry()

      Country in which the tax rate is applied in ISO 3166-1 alpha-2 format.

      If the provided combination of country and state exists for the TaxCategory, a DuplicateField error is returned.

      Returns:
      country
    • getState

      @Nullable public String getState()

      State within the country, such as Texas in the United States. The value is case-sensitive and must use the same casing as the state value in the Cart shippingAddress. Empty strings are treated as if state was omitted.

      If state is omitted, the resulting TaxRate does not act as a wildcard: it only matches a Cart whose shippingAddress also has no state value. To apply the same rate across states, either define an individual TaxRate for each state, or use the region field or a Custom Field on the shipping address as described in Address matching.

      If the provided combination of country and state exists for the TaxCategory, a DuplicateField error is returned.

      Returns:
      state
    • getSubRates

      @Nullable public List<SubRate> getSubRates()

      Used when the total tax is a combination of multiple taxes (for example, local, state/provincial, and/or federal taxes). If amount is defined, the total of all subrates must equal amount. These subrates are used to calculate the taxPortions field of a Cart or Order and the taxedPrice field of LineItems, CustomLineItems, and ShippingInfos.

      Returns:
      subRates
    • getKey

      @Nullable public String getKey()

      User-defined identifier of the TaxRate.

      If the provided key is used by another TaxRate in the TaxCategory, a DuplicateField error is returned.

      Returns:
      key
    • getTaxRoundingTarget

      @Nullable public TaxRoundingTarget getTaxRoundingTarget()

      Determines whether the taxRoundingMode of the Cart or Order is applied to the net price or the tax amount when this TaxRate is included in the price. The field is ignored if includedInPrice is false.

      Returns:
      taxRoundingTarget
    • build

      public TaxRateDraft build()
      builds TaxRateDraft with checking for non-null required values
      Specified by:
      build in interface Builder<TaxRateDraft>
      Returns:
      TaxRateDraft
    • buildUnchecked

      public TaxRateDraft buildUnchecked()
      builds TaxRateDraft without checking for non-null required values
      Returns:
      TaxRateDraft
    • of

      public static TaxRateDraftBuilder of()
      factory method for an instance of TaxRateDraftBuilder
      Returns:
      builder
    • of

      public static TaxRateDraftBuilder of(TaxRateDraft template)
      create builder for TaxRateDraft instance
      Parameters:
      template - instance with prefilled values for the builder
      Returns:
      builder