# Changelog of EU VAT Rates API: all 27 countries (TEDB) (`clearsource/eu-vat-rates`) Actor

- **URL**: https://apify.com/clearsource/eu-vat-rates/changelog.md
- **Full Actor documentation**: https://apify.com/clearsource/eu-vat-rates.md

## Changelog

### 0.1.0 — 2026-10-10 (unpublished)

- First version. Source: European Commission TEDB `VatRetrievalService` (SOAP, no auth), `docs/compliance/sources.md` row k (ALLOW-WITH-CONDITIONS, Petre 2026-10-10, option C).
- Input: `countries` (EU27 TEDB codes, default all; `GR` accepted for TEDB `EL`), `situationOn` (default today UTC) or `dateFrom`/`dateTo` (detailed only, ≤ 3,660 days), `cnCodes`, `cpaCodes`, `categories`, `outputMode` `summary` | `detailed`, `maxResults`, `dryRun`; hidden `mode`/`healthToken` for the maintainer health check.
- Output: summary (one record per Member State: general standard rate, other standard rates, distinct reduced/super-reduced/parking rates, other treatments) or detailed (one record per TEDB result: rate type/kind/value, situation date, category, CN/CPA codes, comment). Provenance envelope 1.0.0 with request body digest, TEDB query date, type-XSD hash, record hash, CC BY 4.0 attribution with retrieval date; disclaimer on every record.
- Pay per event: `country-result` (summary) / `rate-record` (detailed); prices set at publication. On Apify the actor refuses to run without pay-per-event pricing unless `PDA_ALLOW_NO_PPE=1` (private builds).
- Reliability: strict pinned response shape (unknown element → `DRIFT_REPORT`, exit 1); TEDB XSD-validation fault on our request → drift; SOAP Client faults (HTTP 500 at TEDB) are not retried; 429/5xx retried with backoff; kill switch checked before every request; ≥ 1 s between requests, 9 countries per request; health mode (RO canary + WSDL/XSD hashes).
- Live calls while developing (2026-10-10, UA `clearsource/eu-vat-rates@0.1.0 (+https://clearsource.ppftec.com)`): WSDL + 2 XSDs (copied to `src/schemas/tedb`), 3 POSTs rejected as XSD-invalid (wrong child namespace; one kept as a fixture), 3 POSTs recorded as fixtures (27 countries; GR fault; RO+DE CN 0401 range). Greece is `EL` in TEDB (verified: `GR` → fault 00002).
- `src/core` copied unchanged from `actors/ted-tenders/src/core` (`npm run check-shared`).
