vat.php - 欧洲增值税计算库


MIT
跨平台
PHP

软件简介

vat.php 是一个简单的 PHP 库用来处理欧洲 VAT 规则。

增值税、加值型营业税(Value-Added Tax;
VAT)是一种消费税,属累退税,是基于商品或服务的增值而征税的一种间接税,在澳大利亚、加拿大、新西兰英文直译为“商品及服务税”,但官方中文翻译多为“消费税”;在日本称作消费税;在新加坡中文称为“消费税”,英文为商品及服务税。增值税征收通常包括生产、流通或消费过程中的各个环节,是基于增值额或价差为计税依据的中性税种,理论上包括农业各个产业领域(种植业、林业和畜牧业)、采矿业、制造业、建筑业、交通和商业服务业等,或者按原材料采购、生产制造、批发、零售与消费各个环节。

可以帮你:

  • 抓取即时的欧洲成员国的 VAT 费率

  • 验证 VAT 数值 (包括格式以及存在)

  • 支持 ISO 3166-1 alpha-2 国家代码,并确定是否为欧盟成员

  • Geolocate IP 地址

示例代码:

1. 获取 VAT 费率:

$rates = new DvK\Vat\Rates\Rates();
$rates->country('NL'); // 21
$rates->country('NL', 'standard'); // 21
$rates->country('NL', 'reduced'); // 6
$rates->all(); // array in country code => rates format

2. 验证 VAT

$validator = new DvK\Vat\Validator();
$validator->validate('NL50123'); // false
$validator->validateFormat('NL203458239B01'); // true (checks format)
$validator->validateExistence('NL203458239B01') // false (checks existence)
$validator->validate('NL203458239B01'); // false (checks format + existence)

3. 处理国家编码

$countries = new DvK\Vat\Countries();
$countries->all(); // array of country codes + names
$countries->name('NL') // Netherlands
$countries->europe(); // array of EU country codes + names
$countries->inEurope('NL'); // true
$countries->ip('8.8.8.8'); // US