public class SimpleTaxProvider extends Object implements TaxProvider
Simple factor-based tax module that can be configured by adding rates for specific postalCodes, city, state, or country.
Through configuration, this module can be used to set a specific tax rate for items and shipping for a given postal code, city, state, or country.
Utilizes the fulfillment group's address to determine the tax location.
Useful for those with very simple tax needs that want to configure rates programmatically.
| Modifier and Type | Field and Description |
|---|---|
protected Double |
defaultFulfillmentGroupTaxRate |
protected Double |
defaultItemTaxRate |
protected EntityConfiguration |
entityConfig |
protected Map<String,Double> |
fulfillmentGroupCityTaxRateMap |
protected Map<String,Double> |
fulfillmentGroupCountryTaxRateMap |
protected Map<String,Double> |
fulfillmentGroupPostalCodeTaxRateMap |
protected Map<String,Double> |
fulfillmentGroupStateTaxRateMap |
protected Map<String,Double> |
itemCityTaxRateMap |
protected Map<String,Double> |
itemCountryTaxRateMap |
protected Map<String,Double> |
itemPostalCodeTaxRateMap |
protected Map<String,Double> |
itemStateTaxRateMap |
protected boolean |
taxFees |
| Constructor and Description |
|---|
SimpleTaxProvider() |
protected Map<String,Double> fulfillmentGroupPostalCodeTaxRateMap
protected Double defaultItemTaxRate
protected Double defaultFulfillmentGroupTaxRate
protected boolean taxFees
protected EntityConfiguration entityConfig
public boolean canRespond(ModuleConfiguration config)
canRespond in interface ModuleProviderpublic Order calculateTaxForOrder(Order order, ModuleConfiguration config) throws TaxException
TaxProvidercalculateTaxForOrder in interface TaxProviderTaxExceptionpublic Order commitTaxForOrder(Order order, ModuleConfiguration config) throws TaxException
TaxProvidercommitTaxForOrder in interface TaxProviderTaxExceptionpublic void cancelTax(Order order, ModuleConfiguration config) throws TaxException
TaxProvidercancelTax in interface TaxProviderTaxExceptionpublic Double lookupPostalCodeRate(Map<String,Double> postalCodeTaxRateMap, String postalCode)
postalCode - public Double lookupRate(Map<String,Double> taxRateMap, String area)
stateTaxRateMap, - areaprotected boolean isItemTaxable(FulfillmentGroupItem item)
protected boolean isFeeTaxable(FulfillmentGroupFee fee)
public BigDecimal determineItemTaxRate(OrderAddress address)
address - public BigDecimal determineTaxRateForFulfillmentGroup(FulfillmentGroup fulfillmentGroup)
fulfillmentGroup - public void setItemPostalCodeTaxRateMap(Map<String,Double> itemPostalCodeTaxRateMap)
public void setItemCountryTaxRateMap(Map<String,Double> itemCountryTaxRateMap)
public Map<String,Double> getFulfillmentGroupPostalCodeTaxRateMap()
public void setFulfillmentGroupPostalCodeTaxRateMap(Map<String,Double> fulfillmentGroupPostalCodeTaxRateMap)
public void setFulfillmentGroupCityTaxRateMap(Map<String,Double> fulfillmentGroupCityTaxRateMap)
public void setFulfillmentGroupStateTaxRateMap(Map<String,Double> fulfillmentGroupStateTaxRateMap)
public Map<String,Double> getFulfillmentGroupCountryTaxRateMap()
public void setFulfillmentGroupCountryTaxRateMap(Map<String,Double> fulfillmentGroupCountryTaxRateMap)
public Double getDefaultItemTaxRate()
public void setDefaultItemTaxRate(Double defaultItemTaxRate)
public Double getDefaultFulfillmentGroupTaxRate()
public void setDefaultFulfillmentGroupTaxRate(Double defaultFulfillmentGroupTaxRate)
Copyright © 2017. All rights reserved.