# Let the API pick the default rate for BG (no explicit vat_rate)
curl -s -X POST "https://api.yeb.to/v1/vat" ^
-H "X-API-Key: YOUR_KEY" ^
-H "Content-Type: application/x-www-form-urlencoded" ^
--data "action=calculate&net=100&country_code=BG&vat_type=standard"
A practical guide to VAT Calculator API: how to calculate VAT from any combination
of net, gross, VAT amount or rate, how to leverage country profiles, and how to read both single-rate
and multi-rate scenarios in your billing or invoicing logic.
Last updated: 07 mar. 2026, 09:52
API Version: v1
Burst: 20 req/s
Latency: 2.6 ms
Cost:
0.001 credits/req
Instead of re-implementing VAT rules in every project, you send net / gross / VAT amount / rate
(any two are enough), plus optional country and VAT type. The API calculates the
missing numbers, applies country-specific rounding, and can even return multi-rate scenarios when you need to
compare standard vs reduced rates.
{
"country_code": null,
"scenario_type": "single_rate",
"net": null,
"gross": null,
"vat_amount": null,
"vat_rate": null,
"warnings": [
"Not enough information to compute VAT. Provide at least two of: net, gross, vat_amount, vat_rate (or a country_code with rates)."
],
"formatted": null
}
401 invalid/missing key: pass api_key or X-API-Key from your backend.
400 missing country_code: required for country-profile and country-rates.
Calculation warnings: if you see only a warning and no numbers, send at least two monetary inputs.
Conflicting inputs: If you send net, gross and vat_amount that don’t match, the API relies on its internal math; log your raw params if you suspect rounding issues.
Zero-rate logic: For vat_rate = 0 or vat_type = zero, net = gross and VAT amount = 0.
Custom vs country rate: A provided vat_rate always wins over country_code/vat_type. Omit vat_rate if you want pure “country default” behaviour.
Locales & separators: You can safely accept user input with , or . — normalization is handled for you.
Batch use: For bulk imports, keep requests ≤ 100 rps, reuse HTTP connections, and cache stable country profiles.
Added advanced multi-rate mode and improved warning messages for under-specified inputs.
2025-12-01
First public v1 release of VAT API with calculate, list-countries,
country-profile and country-rates actions.
Често постављана питања
Морате навести најмање два од: нето, бруто, износ ПДВ-а или стопу ПДВ-а. Опционално, проследите country_code и vat_type да API аутоматски изабере тачну стопу.
API ради са било којом земљом коју конфигуришете у својим ПДВ профилима. Ви контролишете доступне стопе, валуту и правила заокруживања по земљи.
У напредном моду (и без експлицитне стопе ПДВ-а), API враћа више сценарија за све конфигурисане стопе у земљи: стандардна, снижена, супер снижена и нулта.
Заокруживање прати профил сваке земље (прецизност и мод попут half_up, half_even, floor итд.). Такође можете потпуно искључити заокруживање слањем round = false.
Сваки прорачун ПДВ-а троши мали, фиксни број кредита по захтеву. Погледајте табелу цена и Процену кредита изнад за тачне вредности.
Да. Сваки захтев, чак и они са грешком, троши кредите. Ваши кредити су везани за број захтева, без обзира на успех или неуспех. Ако је грешка јасно узрокована проблемом платформе на нашој страни, вратићемо погођене кредите (без новчаних рефундација).
Контактирајте нас на [email protected]. Озбиљно схватамо повратне информације—ако је ваш извештај о грешци или захтев за функцију смислен, можемо брзо поправити или унапредити API и доделити вам 50 бесплатних кредита као захвалност.
Зависи од API-ја и понекад чак и од крајње тачке. Неке крајње тачке користе податке из спољних извора, који могу имати строже лимите. Такође примењујемо лимите да бисмо спречили злоупотребу и одржали стабилност платформе. Проверите документацију за конкретан лимит сваке крајње тачке.
Радимо на кредитном систему. Кредити су унапред плаћене, неповратне јединице које трошите на API позиве и алате. Кредити се троше по FIFO принципу (најстарији прво) и важе 12 месеци од датума куповине. Контролна табла приказује сваки датум куповине и његов истек.
Да. Сви купљени кредити (укључујући делимичне салда) важе 12 месеци од куповине. Некоришћени кредити аутоматски истичу и трајно се бришу на крају периода важности. Истекли кредити се не могу повратити или претворити у готовину или другу вредност. Прелазно правило: кредити купљени пре 22. септ. 2025. третирају се као купљени 22. септ. 2025. и истичу 22. септ. 2026. (осим ако је при куповини наведен ранији истек).
Да—у оквиру периода важности. Некоришћени кредити остају доступни и преносе се из месеца у месец док не истекну 12 месеци након куповине.
Кредити су неповратни. Купујте само оно што вам треба—увек можете допунити касније. Ако грешка платформе изазове неуспешно задужење, можемо вратити погођене кредите након истраге. Без новчаних рефундација.
Цене су постављене у кредитима, не у доларима. Свака крајња тачка има своју цену—погледајте значку „Кредити / захтев" изнад. Увек ћете тачно знати колико трошите.