Accounting: Configuration: Fiscal Positions


The purpose of this documentation is to outline the use case and processes associated with Fiscal Positions in Odoo.

Fiscal Positions allow you to define the taxes that should be applied for a specific customer or vendor. This is especially useful if you handle customers or vendors in multiple states or counties that have different taxes! It's easy as just applying the fiscal position to them. Once that happens, the right taxes will be selected for the products they buy automatically!


To get started, navigate to the Accounting app.

Odoo image and text block

Configuring Fiscal Positions

Click Configuration >Fiscal Positions to see a list of configured Fiscal Positions.

To make a new record, click  Create and complete the form.

Fiscal Position: Enter a name to describe which customers it will be applied to.  

Use Taxcloud API: TaxCloud is an API that will detect the customer's tax rate by location, then create and apply the tax rate automatically. To use this method, you'll also need to select the Detect Automatically option when selling to American customers, as well as configure the TaxCloud API with Odoo. Refer to the Odoo TaxCloud Configuration document.

Good to Know!

If you're using TaxCloud, you can stop here and click Save. It requires no further configuration on this page! Refer to the Odoo TaxCloud Configuration document.

Detect Automatically: This standalone option also allows Odoo to automatically assign this position based on the customer's location, but it requires further configuration. 

When enabled, the following fields will display and should be filled out if TaxCloud is not enabled. You can refine this as much as necessary according to your specific requirements.

  • Country Group or Country: If you use country Groups, you can select the appropriate one here. Otherwise, select your country. 

  • Federal State: Select the state this fiscal position will apply to.

  • Zip Range: To further refine the taxes applied, enter a zip code range for the state. These will default to 0 which is inclusive of all zip codes within the state.

Under the Tax Mapping tab, you'll be indicating which broader-defined tax will be mapped to this fiscal position. Click Add an item to specify which tax should be replaced:

  • Tax on Product: The tax you are replacing.

  • Tax to Apply: The tax you would like to apply for this fiscal position.

Odoo CMS - a big picture
Under the Account Mapping tab, you can remap an associated product tax account within this fiscal position. This is not commonly used.

When ready, click Save.

Good to Know!

If Detect Automatically is selected on the form for a Fiscal Position, every partner with an address that contains that Country, Country Group, State, or Zip Code Range (whichever was configured) will have this fiscal position applied. There is no need to additionally apply the Fiscal Position to a Partner.

Applying a Fiscal Position to a Partner

Navigate to the Contacts app.

Odoo image and text block

Select the partner you'd like to add a fiscal position for, then click Edit.

Under the Sales & Purchases tab, select the appropriate entry from the Fiscal Position drop-down.

Odoo CMS - a big picture

When done, click Save.

Managing Tax Exemption

It is possible to use Fiscal Positions to manage tax exemption on sales. Any Product that should be taxed should have a tax named 'Product Sales Tax'. By creating a new 'Tax Exempt' fiscal position that is not mapped to a tax rate, and another that is designated for the required state tax, new orders will be assigned the appropriate rate as needed. Any additional tax requirements will be applied by the customer's location. 

To illustrate this ruleset, the following use case outlines a typical reseller tax configuration:

The fiscal position Tax Exempt does not have a tax rate applied.

Odoo image and text block

The partner Beale Street Bake Shop has been assigned the Tax Exempt fiscal position.

Odoo image and text block

Now, when creating a quote or sale order, the product sales tax will be applied, but because there is no applicable rate, no tax will be collected. 

Odoo image and text block