Skip to main content

django-prices-vatlayer: Vatlayer API support for prices

codecov PyPI - Version PyPI - Downloads PyPI - Python Version

from prices import Money, TaxedMoney
from django_prices_vatlayer.utils import (
    get_tax_for_rate, get_tax_rates_for_country)

de_tax_rates = get_tax_rates_for_country('DE')
books_tax = get_tax_for_rate(de_tax_rates, 'books')

price_with_vat = books_tax(Money(10, 'EUR'))
print(price_with_vat)
# TaxedMoney(net=Money('10', 'EUR'), gross=Money('11', 'EUR'))

price_with_vat = books_tax(
    TaxedMoney(net=Money(10, 'EUR'), gross=Money(10, 'EUR')))
print(price_with_vat)
# TaxedMoney(net=Money('10', 'EUR'), gross=Money('11', 'EUR'))

Installation

The package can easily be installed via pip:

pip install django-prices-vatlayer

After installation, you'll also need to setup your site to use it. To do that, open your settings.py and do the following:

  1. Add 'django_prices_vatlayer', to your INSTALLED_APPS
  2. Add VATLAYER_ACCESS_KEY = 'YOUR_API_KEY_HERE' line
  3. Replace YOUR_API_KEY_HERE with the API key that you have obtained from vatlayer API

Lastly, run manage.py migrate to create new tables in your database and manage.py get_vat_rates to populate them with initial data.

Forcing secure API connection in production

Because HTTPS is unavailable in the free vatlayer plan, django-prices-vatlayer uses the unsafe HTTP connection by default.

If you are using a paid plan, you can force the secure HTTP on your site by adding following line to your settings.py:

VATLAYER_USE_HTTPS = True

Remember that not using HTTPS may expose you to DNS poisoning and man-in-the-middle attacks; we recommend enabling VATLAYER_USE_HTTPS in production sites.

Updating VAT rates

To get current VAT rates from the API run the get_vat_rates management command.

You may also set cron job for running this task daily to always be up to date with current tax rates.


Crafted with ❤️ by Mirumee Software

hello@mirumee.com

Release files for django-prices-vatlayer 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-prices-vatlayer 1.2.0
File Size Uploaded
django_prices_vatlayer-1.2.0.tar.gz 7.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for django-prices-vatlayer 1.2.0
File Interpreter ABI Platform
django_prices_vatlayer-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 16.6 kB

Release files / django_prices_vatlayer-1.2.0.tar.gz

Download URL django_prices_vatlayer-1.2.0.tar.gz
Size 7.6 kB
Tags Source
SHA-256 checksum
How to use checksums
1cfda20da69c2c27a747019010ac53e1a83e444f5fbbf9e41120084468ac0436
BLAKE2b-256 checksum
How to use checksums
43d9e52874c9887c406b4fd4e59d4dcd55b5dd9db01d31251891b20bba042aa5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2025.

Transparency log

Release files / django_prices_vatlayer-1.2.0-py3-none-any.whl

Download URL django_prices_vatlayer-1.2.0-py3-none-any.whl
Size 9.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5396ccb094e49e4fb083d7d88ec6de2c9e871dce32e458bc15e4590aa0958d26
BLAKE2b-256 checksum
How to use checksums
f2c6763d41275c60ecb6faa8b772dd720ff083d1ad1762dbb2ca2b217312e39d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.0

2 release files

1.0.2

1 release file

1.0.1

1 release file

1.0.0

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page