PHPackages                             biblys/eurotax - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. biblys/eurotax

ActiveLibrary

biblys/eurotax
==============

Calculates taxes for all european countries

v1.0.3(11y ago)217.3k↓50%MITPHPPHP &gt;=5.3.0

Since Jan 2Pushed 5y ago1 watchersCompare

[ Source](https://github.com/biblys/eurotax)[ Packagist](https://packagist.org/packages/biblys/eurotax)[ Docs](https://github.com/biblys/eurotax)[ RSS](/packages/biblys-eurotax/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)DependenciesVersions (6)Used By (0)

biblys/eurotax
==============

[](#biblyseurotax)

Calculates taxes for all european countries, according to whether the seller's country tax rate (most product types) or the customer's country tax rate (downlodable products among others since 1st january 2015) applies.

VAT rates are extracted from this document: [http://ec.europa.eu/taxation\_customs/resources/documents/taxation/vat/how\_vat\_works/rates/vat\_rates\_en.pdf](http://ec.europa.eu/taxation_customs/resources/documents/taxation/vat/how_vat_works/rates/vat_rates_en.pdf)

Installation
------------

[](#installation)

With composer :

```
composer require biblys/eurotax:dev-master

```

Packagist page:

Usage
-----

[](#usage)

Say you're selling an ebook from a french bookshop to a belgian customer: Belgium standard tva rate must be used.

```
$tax = new \Biblys\EuroTax('FR', 'BE', \Biblys\EuroTax::EBOOK);
$tax->isNewLawApplicable(); // Will return true
echo $tax->getTaxRate(); // Will echo 21

```

Available countries
-------------------

[](#available-countries)

- BE: Belgium
- BU: Bulgaria
- CZ: Czech Republic
- DK: Denmark
- DE: Germany
- EE: Estonia
- EL: Greece
- ES: Spain
- FR: France
- HR: Croatia
- IE: Ireland
- IT: Italy
- CY: Cyprus
- LV: Latvia
- LT: Lithania
- LU: Luxembourg
- HU: Hungary
- MT: Malta
- NL: Netherlands
- AT: Austria
- PL: Poland
- PT: Portugal
- RO: Romania
- SI: Slovenia
- SK: Slovakia
- FI: Finland
- SE: Sweden
- UK: United Kingdom

Available product types
-----------------------

[](#available-product-types)

- BOOK
- EBOOK
- AUDIOEBOOK (selled on physical support, eg. CD)
- EAUDIOBOOK (downloable audio books)
- PERIODICAL (magazines, etc.)
- CD
- DVD

Contribute
----------

[](#contribute)

I created this class with only the countries and product types I needed in my app, but feel free to add whatever your need and share it by doing pull requests.

Changelog
---------

[](#changelog)

1.0.3 (05/01/2015)

- Quickfix setting isNewLawApplicable to false for non downloadable

1.0.2 (05/01/2015)

- Added books &amp; ebooks VAT rates for all european countries
- Added method isNewLawApplicable() that returns false if country is not in Europe or date of sale is &lt; 2015-01-01
- Various bug fixes

1.0.1 (02/01/2015)

- Allow lowercase for country codes
- Fallback to seller's country if customer's unknown
- Fallback to STANDARD product type if type does not exist

1.0.0 (01/01/2015)

- First release

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity29

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

4

Last Release

4155d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/926525a3d3343a9e66413df33e959478db9f5d88b1745c14fa840b445171bd2d?d=identicon)[biblys](/maintainers/biblys)

---

Top Contributors

[![clemlatz](https://avatars.githubusercontent.com/u/5627688?v=4)](https://github.com/clemlatz "clemlatz (25 commits)")

---

Tags

vattaxEuropeTVA

### Embed Badge

![Health badge](/badges/biblys-eurotax/health.svg)

```
[![Health](https://phpackages.com/badges/biblys-eurotax/health.svg)](https://phpackages.com/packages/biblys-eurotax)
```

###  Alternatives

[mpociot/vat-calculator

EU VAT calculation, the way it should be.

1.3k3.9M18](/packages/mpociot-vat-calculator)[commerceguys/tax

Tax library with a flexible data model, predefined tax rates, powerful resolving logic.

286763.3k](/packages/commerceguys-tax)[ddeboer/vatin

Validate VAT identification numbers

1413.0M9](/packages/ddeboer-vatin)[ph-7/eu-vat-validator

A simple and clean PHP class that validates EU VAT numbers against the central ec.europa.eu database (using the official europa API).

95464.2k1](/packages/ph-7-eu-vat-validator)[ddeboer/vatin-bundle

Symfony bundle for the VATIN library

29884.1k](/packages/ddeboer-vatin-bundle)[sylius/taxation

Flexible taxation system for PHP ecommerce applications.

11385.3k7](/packages/sylius-taxation)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
