Skip to content

Lacrymology/django-shop-area-tax

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DESCRIPTION

This is an area tax Cart Modifier for django-shop (www.django-shop.org). It provides a way of taxing the clients according to their address, either billing or shipping.

It will work on the cart total, so if you need to tax shipping costs, place the modifier after the shipping modifiers on the list.

Requirements

uses django-shop-l10n ( https://github.com/Lacrymology/django-shop-l10n ) for Area definitions

Usage

Add "area_tax" to INSTALLED_APPS and "area_tax.modifiers.AreaTaxModifier" to your SHOP_CART_MODIFIERS list.

You'll also need to run ./manage.py syncdb (or ./manage.py migrate area_tax if you use south).

area_tax will look for ONE Country (l10n.models.Country), and ONE AdminArea to calculate taxes. If the area_tax.models.AreaTax instance is marked as compound (and it refers to an AdminArea), the tax will be calculated on top of the total current price. Otherwise, the subtotal will be used.

Likewise, if the area_tax.models.AreaTax is marked to override National Tax, the Country Tax calculation will be skipped.

Admin

The Area fieldin the AreaTax model is optional. If left blank, you're setting the country-wide tax. Otherwise, you're setting the area's tax, and it will behave as describe above about compounding and overrides.

Settings

All settings go inside a dictionary named DJANGO_SHOP_AREA_TAX in your settings.py file. TAX_SHIPPING_ADDRESS (default True). True, if you want the tax calculated from shipping address. False will calculate it based on billing addresss instead.

e.g: DJANGO_SHOP_AREA_TAX = { 'TAX_SHIPPING_ADDRESS': False, }

WARNING

If you use the provided fixtures, beware that the objects' IDs might conflict in them.

About

Area tax cart processor for django-shop

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages