EU VAT (VIES) + Polish White List Counterparty Check avatar

EU VAT (VIES) + Polish White List Counterparty Check

Pricing

from $5.00 / 1,000 company checkeds

Go to Apify Store
EU VAT (VIES) + Polish White List Counterparty Check

EU VAT (VIES) + Polish White List Counterparty Check

Bulk-verify suppliers & customers: EU VAT validity (VIES), Polish VAT status and bank account on the Ministry of Finance white list (Biała lista), plus LEI. Official APIs only - no scraping, clear ok/warning/fail verdict per company.

Pricing

from $5.00 / 1,000 company checkeds

Rating

0.0

(0)

Developer

EU Data Tools

EU Data Tools

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

20 hours ago

Last modified

Categories

Security

Limited permissions

Share

Bulk-verify suppliers and customers before you invoice or pay them. For each company you get a clear ok / warning / fail verdict with reasons, based only on official government APIs:

CheckSourceWhy it matters
EU VAT number valid for intra-EU suppliesEuropean Commission VIES0% VAT intra-community supplies require a valid VIES number
Polish VAT status (Czynny / Zwolniony / not registered)Ministry of Finance Biała lista (white list)Deducting VAT from invoices of unregistered taxpayers is risky
Is the bank account on the white list for this NIP?Ministry of Finance white listPaying > 15,000 PLN to an account not on the list means losing the tax-deductible cost and joint VAT liability (unless reported, ZAW-NR)
LEI (Legal Entity Identifier)GLEIFKYB / compliance, matching legal entities

No scraping, no proxies, no logins. Runs in seconds for hundreds of companies.

Input

  • VAT numbers / NIPs - PL5260250995, 526-025-09-95, DE811115368, FR40303265045 ... (numbers without a prefix use the default country, PL by default). Paste straight from Excel/ERP: labels like NIP: / VAT ID, quotes, and several numbers in one cell separated by commas or semicolons are handled; duplicates are checked (and charged) once.
  • NIP + bank account pairs - accounts are matched against the white list (incl. virtual collection accounts via the dedicated MF endpoint):
{
"accountChecks": [
{"vatNumber": "5260250995", "bankAccounts": ["58 1030 1508 0000 0005 0313 1332"]}
]
}
  • Check date - verify the state on a historical date (white list keeps history), e.g. the payment date.

Output (one row per company)

{
"input": "PL5260250995",
"verdict": "ok",
"companyName": "ORANGE POLSKA SPÓŁKA AKCYJNA",
"viesStatus": "valid",
"plVatStatus": "Czynny",
"accountsOnWhitelist": "1/1",
"leiCode": "259400TOMPUOLS65II22",
"whitelistRequestId": "...",
"problems": [],
"warnings": [],
"vies": {"status": "valid", "name": "ORANGE POLSKA SPÓŁKA AKCYJNA", "address": "..."},
"whitelist": {"status": "found", "vatStatus": "Czynny", "regon": "012100784", "krs": "0000010681",
"bankAccounts": ["58103015080000000503131332", "..."], "requestId": "..."},
"accountChecks": [{"account": "58103015080000000503131332", "status": "assigned", "requestId": "..."}],
"lei": {"status": "found", "lei": "259400TOMPUOLS65II22", "entityStatus": "ACTIVE"}
}

The flat columns (companyName ... whitelistRequestId) make the CSV/Excel export readable without unpacking nested objects; the nested vies / whitelist / lei objects keep full details.

requestId is the identifier issued by the Ministry of Finance - keep it as proof that the check was performed (useful in a tax audit).

Built-in validation catches typos before calling any API (and you are not charged for them): Polish NIP checksum, NRB/IBAN mod-97 checksum and the VAT number format of every EU member state (e.g. DE + 9 digits, NL + 9 digits + B + 2 digits, AT + U + 8 digits).

Verdicts explained

VerdictMeaningExamples
okAll requested checks passedVIES valid, Czynny VAT payer, every account on the white list
warningCould not be confirmed right now - re-run laterVIES down for a member state, white list rate limit
failA real problem was found - see problemsVAT number inactive in VIES, NIP not a VAT payer, bank account not on the white list, bad NRB checksum
errorInput rejected locally, not chargedinvalid NIP checksum, unsupported country code

Run it from code (API, Make, Zapier, n8n)

curl -X POST "https://api.apify.com/v2/acts/quintuple_verve~eu-pl-counterparty-check/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"vatNumbers": ["PL5260250995", "DE811115368"], "checkDate": "2026-11-01"}'

The response is the JSON array of result rows shown above - filter on verdict != "ok" to get the list of counterparties that need attention.

Monitor mode: get alerted when a vendor changes

Set Monitor name (e.g. suppliers) and schedule the actor (monthly or before every payment run). Each row then contains changes since the previous run with the same name, for example:

"changes": ["Polish VAT status: Czynny -> Zwolniony",
"bank account 58103015080000000503131332 removed from the white list"],
"previousCheckDate": "2026-10-01"

Temporary API outages never produce false alerts - the last known value is kept. Filter the dataset on non-empty changes and send it to e-mail/Slack with an Apify integration.

Typical uses

  • Accounts payable: check every supplier account before a payment run (export from your ERP, paste the list, download CSV/Excel).
  • Onboarding new B2B customers / suppliers (KYB).
  • Periodic re-verification of your whole vendor master data (schedule the actor monthly).
  • Automations: call it from Make, Zapier, n8n or via the Apify API.

Pricing

Pay per checked company: $0.005 per company ($5 per 1,000), plus Apify's tiny actor-start fee. Invalid inputs that fail local validation are free.

FAQ

Can I check a Polish NIP without the PL prefix? Yes - bare NIPs (with or without dashes) use the default country (PL).

Can I check a non-Polish company? Yes - any EU VAT number is checked in VIES (and GLEIF for LEI). The white list and bank account checks apply to Polish NIPs only.

Can I prove the check later? Keep the requestId values from the white list - the Ministry of Finance can confirm the query by that identifier.

Can I check on the payment date instead of today? Set checkDate (YYYY-MM-DD); the white list keeps history.

Po polsku: weryfikacja kontrahenta - biała lista VAT i VIES

Masowe sprawdzanie kontrahentów przed płatnością lub wystawieniem faktury: status VAT na białej liście podatników VAT (Czynny / Zwolniony / niezarejestrowany), czy rachunek bankowy jest na białej liście dla danego NIP (także rachunki wirtualne), numer VAT UE w VIES (transakcje wewnątrzwspólnotowe) i LEI. Wklej listę NIP-ów z ERP, pobierz wynik jako CSV/Excel. Zachowaj requestId (identyfikator zapytania z MF) jako dowód weryfikacji przy płatnościach powyżej 15 000 zł. Tylko oficjalne API Ministerstwa Finansów, KE i GLEIF.

Notes & limits

  • VIES depends on national systems; when a member state is down, the result is a warning ("VIES temporarily unavailable") rather than a false "invalid".
  • The white list API has rate limits; the actor batches up to 30 NIPs per request and paces calls.
  • Personal data minimisation (GDPR): names/PESEL of representatives, partners and proxies returned by the white list are not stored in the output.
  • This tool provides information from public registers; it is not tax or legal advice.