Tax feature overview
Edit on GitHubThe Tax feature lets you define taxes for the items you sell. The feature is represented by two entities: tax rates and tax sets.
The tax rate is the percentage of the sales price that buyer pays as a tax. In the default Spryker implementation, the tax rate is defined per country where the tax applies. For details about how to create tax rates for countries in the Back Office, see Create tax rates.
A tax set is a set of tax rates. You can define tax sets in the Back office or import tax sets into your project.
Tax sets can be applied to an abstract product, product option, and shipment:
ENTITY | DEFINE TAX SETS IN THE BACK OFFICE | IMPORT TAX SETS |
---|---|---|
Abstract product | Define prices | File details: product_abstract.csv |
Product option | Creating a product option | File details: product_option.csv |
Shipment | Add delivery methods | File details: shipment.csv |
International tax rates and sets
Align your business with international tax standards by defining tax rates and sets. Determine country-based tax rates for products, options, and shipments, that will automatically be applied to the respective shops.
In a tax system, the tax rate is the ratio (usually expressed as a percentage) at which a business, person, item is taxed.
A tax set is a set of tax rates that can be applied to a specific product.
Once the rate is defined, you can attach it to a tax set(s). A tax set can contain from one to many tax rates.
The described values are defined in the Back Office > Taxes section.
Avalara system for automated tax compliance
You can integrate the third-party system Avalara to automatically apply tax rates that depend on such factors as location, product type, and shipping rules.
Avalara is mostly meant for the USA.
To use Avalara, set up the AvaTax platform for your application and integrate Avalara into your project. Once you do that, you can apply Avalara tax codes to automate tax calculations for your shop.
You can set the Avalara tax codes for the following entities by importing the codes:
- Abstract product: For details about import, see File details: product_abstract.csv.
- Product option: For details about import, see File details: product_option.csv.
- Shipment: For details about import, see File details: shipment.csv.
Since shipment and products fall under different taxability categories, Avalara tax code for shipment is different from that of the abstract product or product option. For details about the codes and categories, see Avalara tax code search.
The Avalara codes are not displayed on the Storefront or in the Back Office. They are processed in the background to define taxes for order items. Avalara calculates taxes during the checkout, and, by default, the taxes are shown at the final checkout step.
When calculating taxes, Avalara takes the items’ warehouse addresses into account. Therefore, each order item you calculate a tax for with Avalara, must have a warehouse assigned. To learn how warehouses are assigned to order items by default, see Warehouse assignment to order items (with Avalara integration only).
Tax Management capability on the Storefront
A product tax set is calculated when buyers add products to the cart. Therefore, by default, the tax calculated on the basis of the product tax sets is displayed in the Tax section on the Cart page. However, the tax value on the Cart page is not always final because it does not take a possible shipment tax set into account since buyers select the shipping method during the checkout. If you have Avalara integrated, it calculates tax during the checkout as well. Therefore, the final tax value is always displayed only upon checkout.
Tax on the Cart page:
Tax in the checkout:
Current constraints
The capability has the following functional constraints:
- There is no Back Office UI for the Avalara tax codes.
- Many Avalara features are not supported yet. This will be resolved in the future.
Related Business User documents
BACK OFFICE USER GUIDES |
---|
Create tax rates |
Edit tax rates |
Create tax sets |
Edit tax sets |
Related Developer documents
Thank you!
For submitting the form