Nordic KYC — Sweden
Check if a Swedish company is real and safe to do business with. Official registry data, VAT validation, sanctions screening, PEP check, and adverse media scan in one call.
kyc-sweden What it runs
- Swedish Company Data
Source: Bolagsverket Värdefulla datamängder API (Swedish Companies Registration Office, EU Open Data Directive HVD)
- EU VAT Validation
Source: VIES (EU VAT Information Exchange System, European Commission)
- Sanctions Check
Source: Dilisense consolidated (OFAC SDN, EU FSF, UN SC, UK Sanctions List, CH SECO, BIS, World Bank, EBRD, ADB + 125 national sanctions/debarment lists; full attribution at https://dilisense.com/en/sources/sanction-sources)
- PEP Check
Source: Dilisense consolidated PEP database (230+ territories, EU C/2023/724-aligned, RCAs included; full attribution at https://dilisense.com/en/sources/politically-exposed-persons-list)
- Adverse Media Check
Source: Dilisense Adverse Media (235k+ news sources, FATF-categorized) primary; Serper.dev (Google search) fallback
The answer returns every step’s result, so your agent can show or check each one.
Inputs
| Field | Type | Required | What it is |
|---|---|---|---|
org_number | string | Yes | Swedish organization number |
How to call it
# Needs an API key. The whole check is charged once, at the listed price.
curl -X POST https://api.strale.io/v1/solutions/kyc-sweden/execute \
-H "Authorization: Bearer $STRALE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"inputs": {
"org_number": "556703-7485"
},
"max_price_cents": 150
}' # No account. The first request answers 402 with the price in USDC;
# an x402 client pays it from your wallet and repeats the request.
curl -i -X POST https://api.strale.io/x402/v2/solutions/kyc-sweden \
-H 'Content-Type: application/json' \
-d '{
"org_number": "556703-7485"
}' The bundle’s published example input.
Limitations
Bolagsverket’s open company data covers names, legal forms, status, addresses, SNI codes, registration dates and insolvency flags. Annual-report figures such as revenue, profit, employee counts and equity are not included.
From step: Swedish Company Data
What to do instead: Order an annual report or financial statement extract from Bolagsverket.
Looks up companies by organisation number only; it does not search by name.
From step: Swedish Company Data
What to do instead: Find the organisation number on an official company document or in the registry, then pass it as `org_number`.
Sole traders (enskild näringsidkare) can have several companies registered under the same personal identity number. Lookup returns only the first entry, so other registrations under that number are not included.
From step: Swedish Company Data
What to do instead: Prefer aktiebolag organisationsnummer (10 digits starting 2–9) for unambiguous single-entry lookups.
Deregistered companies (avregistrerad) still return registry data, but the data reflects the state at deregistration. `is_active` is false and `deregistered_date` is populated.
From step: Swedish Company Data
What to do instead: Always check the `is_active` and `deregistered_date` fields before using returned data for live decisions.
VIES can be unavailable or throttle requests under unpublished per-member-state limits. Transient faults are retried, and cached results, including older fallback results, can be returned during outages.
From step: EU VAT Validation
What to do instead: Lookups within 48 hours can use cached results; if VIES is unavailable and no cached result exists, retry later.
Results can be cached for 48 hours, and national registry changes can take a further 24 hours to appear in VIES. Check the national tax authority directly for same-day registration or deregistration confirmation.
From step: EU VAT Validation
What to do instead: For real-time same-day verification, contact the national tax authority directly.
Swiss UID validation returns valid or invalid only, without a company name or address. This tool does not perform the separate enrichment lookup, whose public service is limited to 20 requests per minute.
From step: EU VAT Validation
What to do instead: For Swiss company name + address, call the swiss-company-data capability.
GB VAT numbers return a credentials-pending error when the HMRC connection is not configured.
From step: EU VAT Validation
What to do instead: Use vat-format-validate for GB format checks; it does not confirm VAT registration.
Sanctions lists updated daily from OFAC, EU, and UN sources — newly sanctioned entities may take up to 24 hours to appear
From step: Sanctions Check
What to do instead: For same-day compliance, subscribe to OFAC's RSS feed and cross-reference against today's additions
Name matching uses fuzzy logic — common names may produce false positives. Always verify flagged results
From step: Sanctions Check
What to do instead: Filter results by match confidence score and verify flagged entities against the primary sanctions list PDF
Coverage depends on OpenSanctions dataset — may not include all national PEP lists
From step: PEP Check
Name matching is fuzzy — common names may produce false positives. Birth date strongly recommended for disambiguation.
From step: PEP Check
What to do instead: Provide birth_date parameter for disambiguation
PEP coverage varies by country — major economies and EU members have strong coverage, smaller nations may have gaps
From step: PEP Check
What to do instead: For countries with limited coverage, supplement with local registry checks or use the LLM fallback as a secondary signal
Name matching uses fuzzy logic — common names may produce false positives. Birth date strongly recommended for disambiguation
From step: PEP Check
What to do instead: Always provide birth_date when available to reduce false positives. Verify flagged results against official government records
PEP lists updated multiple times per day — recently appointed officials may take up to 48 hours to appear
From step: PEP Check
What to do instead: For time-sensitive checks on recently appointed officials, cross-reference with news sources
AI-classified results — may miss subtle risk signals or produce false positives
From step: Adverse Media Check
Limited to publicly indexed web content — paywalled news sources not covered
From step: Adverse Media Check
English-language bias — non-English media coverage may be underrepresented
From step: Adverse Media Check
Recency depends on search index freshness (typically 24-48h delay)
From step: Adverse Media Check
AI-categorized results — may produce false positives for common names or names that appear in unrelated news contexts
From step: Adverse Media Check
What to do instead: Review top articles manually to confirm relevance. Use entity_type parameter to improve precision
Screens 235,000+ sources but paywalled content may not be fully indexed. Non-English language coverage varies by region
From step: Adverse Media Check
What to do instead: For high-stakes screening, supplement with manual searches in local-language news sources
Articles typically appear in near real-time but some sources may have a 24-48 hour indexing delay
From step: Adverse Media Check
What to do instead: For breaking news events, supplement with direct web search