EU VAT Rates Fetcher avatar

EU VAT Rates Fetcher

Pricing

from $0.50 / 1,000 results

Go to Apify Store
EU VAT Rates Fetcher

EU VAT Rates Fetcher

This actor fetches EU VAT rates from `ECB`, validates and normalizes the payload, and writes output to dataset and key-value store.

Pricing

from $0.50 / 1,000 results

Rating

0.0

(0)

Developer

Unlimited Dots

Unlimited Dots

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

This actor fetches EU VAT rates from ECB, validates and normalizes the payload, and writes output to dataset and key-value store.

Input

  • requestTimeoutMs (integer): request timeout in milliseconds.
  • countries (string[]): optional country code allow-list (for example AT, DE).
  • pushIndividualItems (boolean): when true, pushes one dataset item per country instead of one summary object.
  • serveApi (boolean): run as HTTP API server for URL-based GET requests.

API Endpoint Mode

When serveApi=true, the actor runs an HTTP server and exposes:

Port behavior:

  • Uses Apify default web server port from ACTOR_WEB_SERVER_PORT.

  • Falls back to 3000 for local runs when that variable is not set.

  • GET /vat_rates

  • Query params:

    • countries=AT,DE,FR (optional)
    • requestTimeoutMs=30000 (optional)

Example request:

$curl "http://127.0.0.1:3000/vat_rates?countries=AT,DE"

Readiness endpoint:

  • GET / returns health metadata (and readiness probe OK for Apify standby checks).

Use Cases

  • Keep a current VAT rate table for EU countries in your internal pricing system.
  • Build tax-aware product pricing for marketplaces by filtering only target countries (for example AT, DE, FR).
  • Feed finance or BI workflows with normalized VAT data from a single structured source.
  • Store daily snapshots in Apify dataset / key-value store for auditing VAT changes over time.

Output

  • Dataset:
    • One summary object by default.
    • One object per country when pushIndividualItems=true.
  • Key-value store:
    • OUTPUT key with summary object:
      • success
      • fetchedAt
      • countryCount
      • rates

Example Response JSON

{
"success": true,
"fetchedAt": "2026-04-17T12:34:56.000Z",
"countryCount": 2,
"rates": {
"AT": {
"country_name": "Austria",
"standard_rate": 20,
"reduced_rates": [10, 13],
"super_reduced_rates": [],
"parking_rates": [13]
},
"DE": {
"country_name": "Germany",
"standard_rate": 19,
"reduced_rates": [7],
"super_reduced_rates": [],
"parking_rates": []
}
}
}