EU company dossiers and health, sanctions, PEP, invoice checks, watches, x402 pay guard.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Use before paying or importing from a Chinese supplier: checks the 18-character Unified Social Credit Code (checksum, registration authority, entity type, province; Xinjiang is flagged), and screens the company against EU, UN, UK and US OFAC sanctions, the BIS Entity List, Military End User list and the DHS UFLPA Entity List. Verdict pass, review or block_review with reasons. Does not query the Chinese register (GSXT). Input: name, uscc. Costs 0.03 USDC via x402, or 15 credits of a Factline API key.
Supplier name in Latin letters, as on the invoice
18-character Unified Social Credit Code from the business licence
Use before paying or importing from a Chinese supplier: checks the 18-character Unified Social Credit Code (checksum, registration authority, entity type, province; Xinjiang is flagged), and screens the company against EU, UN, UK and US OFAC sanctions, the BIS Entity List, Military End User list and the DHS UFLPA Entity List. Verdict pass, review or block_review with reasons. Does not query the Chinese register (GSXT). Input: name, uscc. Costs 0.03 USDC via x402, or 15 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| name* | string | Supplier name in Latin letters, as on the invoice |
| uscc | string | 18-character Unified Social Credit Code from the business licence |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Supplier name in Latin letters, as on the invoice"
},
"uscc": {
"type": "string",
"description": "18-character Unified Social Credit Code from the business licence"
}
}
}Use for due diligence before a deal, contract or large payment: the full European company check (national registers in 10 countries plus GLEIF, directors, owners and parents screened for sanctions and PEP, VAT, Peppol, website) plus financial health (accounts on time, size, turnover and result where published, insolvency in GB, FR, NO, FI, NL). One verdict and a cite_as line. Input: name or id, best with country. Costs 0.15 USDC via x402, or 75 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| id | string | Or a company number: LEI, UK company number, SIREN, Norwegian org number, etc. |
| kvk | string | Dutch KvK number: adds a bankruptcy check |
| vat | string | EU VAT number |
| name | string | Company name, e.g. Equinor |
| domain | string | Company website |
| country | string | ISO country, e.g. NO, GB, FR, NL |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"id": {
"type": "string",
"description": "Or a company number: LEI, UK company number, SIREN, Norwegian org number, etc."
},
"kvk": {
"type": "string",
"description": "Dutch KvK number: adds a bankruptcy check"
},
"vat": {
"type": "string",
"description": "EU VAT number"
},
"name": {
"type": "string",
"description": "Company name, e.g. Equinor"
},
"domain": {
"type": "string",
"description": "Company website"
},
"country": {
"type": "string",
"description": "ISO country, e.g. NO, GB, FR, NL"
}
}
}Use to check if a European company is healthy before you deal with it: UK accounts overdue, size band and insolvency history; French headcount, turnover, net result and BODACC insolvency; Norwegian employees, bankruptcy, winding-up and filed accounts; Finnish bankruptcy and restructuring; Dutch insolvency with a KvK number. Verdict healthy, watch, distressed or limited_data. Costs 0.02 USDC via x402, or 10 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| id | string | Or a company number, e.g. SIREN 552032534 |
| kvk | string | Dutch KvK number: adds the insolvency register |
| name | string | Company name, e.g. Danone |
| country | string | ISO country: GB, FR, NO and FI have full signals; NL with kvk |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"id": {
"type": "string",
"description": "Or a company number, e.g. SIREN 552032534"
},
"kvk": {
"type": "string",
"description": "Dutch KvK number: adds the insolvency register"
},
"name": {
"type": "string",
"description": "Company name, e.g. Danone"
},
"country": {
"type": "string",
"description": "ISO country: GB, FR, NO and FI have full signals; NL with kvk"
}
}
}Use when you need to verify that a company exists and is active: official registers GLEIF (worldwide, incl. Dutch LEI holders), UK Companies House, Ireland CRO, Estonia, Belgium KBO, France SIRENE, Norway, Finland, Czechia, Slovakia and Poland (with bank accounts). Returns legal name, status, registry id, legal form, address, founding date and parent companies (GLEIF). Search by name or id. Costs 0.008 USDC via x402, or 4 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| id | string | LEI, SIREN, Norwegian organisation number, UK company number, Irish CRO number or Estonian registry code |
| name | string | Company name, e.g. ASML Holding |
| country | string | ISO country, e.g. GB, IE, EE, FR, NO, NL |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"id": {
"type": "string",
"description": "LEI, SIREN, Norwegian organisation number, UK company number, Irish CRO number or Estonian registry code"
},
"name": {
"type": "string",
"description": "Company name, e.g. ASML Holding"
},
"country": {
"type": "string",
"description": "ISO country, e.g. GB, IE, EE, FR, NO, NL"
}
}
}Use when you need to judge whether a website or email domain is trustworthy: registration date and domain age (RDAP), expiry, registrar, nameservers, email setup (MX, SPF, DMARC), disposable-email domains, and a low/medium/high risk with flags such as 'registered 4 days ago', a common sign of scam shops. Accepts a domain, URL or email. Costs 0.003 USDC via x402, or 2 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain, URL or email address, e.g. example.nl |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Domain, URL or email address, e.g. example.nl"
}
}
}Use when you need to know if an email address is real and deliverable before signup, outreach or onboarding: syntax, live MX routing, 9,000+ disposable domains, role addresses, free providers, typo suggestions (gmial.com to gmail.com) and SPF/DMARC. One verdict: deliverable, risky or undeliverable. Costs 0.002 USDC via x402, or 1 credit of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| email* | string | Email address, e.g. [email protected] |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"description": "Email address, e.g. [email protected]"
}
}
}Use before onboarding, paying or contracting a European company: finds it in 10 official registers (GLEIF, UK, IE, FR, NO, FI, CZ, SK, EE, PL), screens it, its directors, owners and parent companies against EU, UN, UK and US sanctions and PEP, checks VAT and Peppol, flags new websites and Dutch bankruptcies. One verdict: pass, review, block_review or incomplete. Input: name or id, best with country; optional vat, domain, kvk. Costs 0.05 USDC via x402, or 25 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| id | string | Or a company number: LEI, UK company number, Irish CRO, SIREN, etc. |
| kvk | string | Dutch KvK number: adds a bankruptcy check |
| vat | string | EU VAT number: checked in VIES and matched to the registered name |
| name | string | Company name, e.g. ASML Holding |
| domain | string | Company website or email domain |
| country | string | ISO country, e.g. NL, GB, IE, FR |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"id": {
"type": "string",
"description": "Or a company number: LEI, UK company number, Irish CRO, SIREN, etc."
},
"kvk": {
"type": "string",
"description": "Dutch KvK number: adds a bankruptcy check"
},
"vat": {
"type": "string",
"description": "EU VAT number: checked in VIES and matched to the registered name"
},
"name": {
"type": "string",
"description": "Company name, e.g. ASML Holding"
},
"domain": {
"type": "string",
"description": "Company website or email domain"
},
"country": {
"type": "string",
"description": "ISO country, e.g. NL, GB, IE, FR"
}
}
}Use when you need to check an EU EORI customs number: live validation in the European Commission's EORI service, registered and valid or not, with the trader's name and address when published. All EU member states; GB numbers are not covered. Costs 0.003 USDC via x402, or 2 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| eori* | string | EORI number, e.g. IE6388047V |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"eori"
],
"properties": {
"eori": {
"type": "string",
"description": "EORI number, e.g. IE6388047V"
}
}
}Free. Use when the user needs an official euro exchange rate or a conversion for an invoice, contract or report: ECB euro reference rates (about 30 currencies), today or any working day in the last 90 days, with cross rates. Input: base (default EUR), symbols (e.g. USD,GBP), optional date YYYY-MM-DD and amount.
| Argument | Type | Description |
|---|---|---|
| base | string | |
| date | string | |
| amount | string | |
| symbols | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"base": {
"type": "string"
},
"date": {
"type": "string"
},
"amount": {
"type": "string"
},
"symbols": {
"type": "string"
}
}
}Free. Use when the user cites an EU regulation, directive or decision and you need its official title, date, whether it is still in force, and the EUR-Lex link to cite: by CELEX number (e.g. 32016R0679) or citation (e.g. Regulation (EU) 2016/679, Directive 2015/849).
| Argument | Type | Description |
|---|---|---|
| celex* | string | CELEX number or a citation like 'Regulation (EU) 2016/679' |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"celex"
],
"properties": {
"celex": {
"type": "string",
"description": "CELEX number or a citation like 'Regulation (EU) 2016/679'"
}
}
}Use when screening a list of people or companies at once (up to 25 per call, 0.0012 USDC per name) against the EU, UN, UK and US OFAC sanctions lists. Fuzzy matching; per name a possible-match flag, top score and up to 3 scored matches with their lists. For customer bases, payouts and vendor lists. Costs 0.03 USDC via x402, or 15 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| type | string | |
| names* | string | 1 to 25 names separated by ';', e.g. 'Vladimir Putin; Factline' |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"names"
],
"properties": {
"type": {
"enum": [
"person",
"entity"
],
"type": "string"
},
"names": {
"type": "string",
"description": "1 to 25 names separated by ';', e.g. 'Vladimir Putin; Factline'"
}
}
}Use when you must check whether a person or company is under sanctions: screens the name against the EU, UN, UK and US OFAC lists (25,000+ persons, companies and vessels with aliases, refreshed weekly). Fuzzy matching handles spelling, transliteration and word order; returns scored possible matches with lists, references and birth dates. Costs 0.005 USDC via x402, or 3 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| name* | string | Person or organisation name, e.g. 'Vladimir Putin' |
| type | string | |
| birth_year | string | 4-digit birth year |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Person or organisation name, e.g. 'Vladimir Putin'"
},
"type": {
"enum": [
"person",
"entity"
],
"type": "string"
},
"birth_year": {
"type": "string",
"description": "4-digit birth year"
}
}
}Use before sending crypto to an address, or when asked if a wallet is sanctioned: checks Bitcoin, Ethereum/EVM, Tron, USDT, Litecoin, Monero and other addresses against the wallets on the US OFAC SDN list, refreshed weekly. Returns sanctioned true/false, currency, listed entity and programme. Costs 0.003 USDC via x402, or 2 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| address* | string | Crypto wallet address, e.g. 0x0330070fd38ec3bb94f58fa55d40368271e9e54a |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"description": "Crypto wallet address, e.g. 0x0330070fd38ec3bb94f58fa55d40368271e9e54a"
}
}
}Use when the user looks for public contracts to bid on: open tenders from TED, the EU's official journal, by country, CPV code, keywords, deadline and minimum value, with English titles, buyer, deadline and value. For the Netherlands it adds national below-threshold tenders from TenderNed, which TED does not have. Costs 0.005 USDC via x402, or 3 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| q | string | Keywords |
| cpv | string | CPV codes, e.g. 72 |
| limit | string | |
| country* | string | Country code, e.g. NL, DE, or EU |
| min_value | string | |
| deadline_within | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country"
],
"properties": {
"q": {
"type": "string",
"description": "Keywords"
},
"cpv": {
"type": "string",
"description": "CPV codes, e.g. 72"
},
"limit": {
"type": "string"
},
"country": {
"type": "string",
"description": "Country code, e.g. NL, DE, or EU"
},
"min_value": {
"type": "string"
},
"deadline_within": {
"type": "string"
}
}
}Use when the user gives an EU VAT number and you need to know if it is valid: live check in the European Commission's VIES service for all 27 member states plus Northern Ireland, with the registered company name and address where shared. Input: VAT number with country prefix, e.g. IE6388047V. Costs 0.003 USDC via x402, or 2 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| vat* | string | EU VAT number with country prefix, e.g. IE6388047V |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vat"
],
"properties": {
"vat": {
"type": "string",
"description": "EU VAT number with country prefix, e.g. IE6388047V"
}
}
}Free. Use when the user wants to use Factline's paid checks without a crypto wallet: issues a trial API key (2,000 credits a month) to the user's work email. Ask the user for their email first; never invent one. One key per email.
| Argument | Type | Description |
|---|---|---|
| name | string | Person or company name |
| email* | string | The user's work email (ask them) |
| use_case | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email"
],
"properties": {
"name": {
"type": "string",
"description": "Person or company name"
},
"email": {
"type": "string",
"description": "The user's work email (ask them)"
},
"use_case": {
"type": "string"
}
}
}Use when you need to check an IBAN before a payout or invoice: length per country, mod-97 checksum (catches typos), SEPA membership, and for Dutch IBANs the bank (ING, ABN AMRO, Rabobank, bunq...). Does not confirm the account holder. Costs 0.001 USDC via x402, or 1 credit of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| iban* | string | IBAN, e.g. NL91ABNA0417164300 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"iban"
],
"properties": {
"iban": {
"type": "string",
"description": "IBAN, e.g. NL91ABNA0417164300"
}
}
}Use when onboarding a customer, seller or business and you want one answer: screens the name against EU, UN, UK and US sanctions and the PEP list, verifies email and phone, and checks an EU VAT number in VIES, all in parallel, with one verdict: pass, review, block_review or incomplete. Send any of name, email, phone, vat. Costs 0.01 USDC via x402, or 5 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| kvk | string | Dutch KvK number: adds a bankruptcy check |
| pep | string | PEP check of a person name, default true |
| vat | string | EU VAT number |
| name | string | Person or company name |
| type | string | |
| string | ||
| phone | string | |
| company | string | Company name to verify |
| country | string | |
| birth_year |
Use when you need to know if a Dutch company is bankrupt or in suspension of payments: live check in the Centraal Insolventieregister (Rechtspraak) with active and ended cases, court, case number, dates, administrator and claims deadline. Legal entities only. Input: KvK number or company name. Costs 0.01 USDC via x402, or 5 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| kvk | string | 8-digit KvK number |
| name | string | Company name |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"kvk": {
"type": "string",
"description": "8-digit KvK number"
},
"name": {
"type": "string",
"description": "Company name"
}
}
}Use when screening a list of up to 25 names for politically exposed persons in one call (0.0012 USDC per name): top 3 possible matches per name with positions and status. For customer-base and CRM re-screening. Costs 0.03 USDC via x402, or 15 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| names* | string | Names separated by ';' |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"names"
],
"properties": {
"names": {
"type": "string",
"description": "Names separated by ';'"
}
}
}Use when you must check whether a person is a politically exposed person (PEP) for AML/KYC: heads of state and government, ministers of every country, central bank governors, MEPs and national MPs of the EU, EEA, UK, US and Switzerland, current or former (default 5 years). Fuzzy matching with positions, country and dates. Pairs with sanctions screening. Costs 0.005 USDC via x402, or 3 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| name* | string | Full name, e.g. Mark Rutte |
| country | string | ISO country, e.g. NL |
| birth_year | string | Birth year, e.g. 1967 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Full name, e.g. Mark Rutte"
},
"country": {
"type": "string",
"description": "ISO country, e.g. NL"
},
"birth_year": {
"type": "string",
"description": "Birth year, e.g. 1967"
}
}
}Use when you need to send an e-invoice or check if a company can receive one: looks the company up in the Peppol Directory by VAT number, company number (Belgian KBO, French SIREN, Dutch KvK...) or name, and returns its Peppol participant ids and accepted documents (invoice, credit note, self-billing, orders). Belgium requires Peppol B2B e-invoicing since 2026; France requires e-invoice receipt from 2026-09. Costs 0.003 USDC via x402, or 2 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| id | string | Or a company number (Belgian KBO, French SIREN, Dutch KvK) or Peppol id such as 0208:0400378485 |
| vat | string | EU VAT number, e.g. BE0400378485 |
| name | string | Or a company name (with country) |
| country | string | ISO country, e.g. BE, FR |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"id": {
"type": "string",
"description": "Or a company number (Belgian KBO, French SIREN, Dutch KvK) or Peppol id such as 0208:0400378485"
},
"vat": {
"type": "string",
"description": "EU VAT number, e.g. BE0400378485"
},
"name": {
"type": "string",
"description": "Or a company name (with country)"
},
"country": {
"type": "string",
"description": "ISO country, e.g. BE, FR"
}
}
}Use when you need to check a phone number from any country: valid and possible against allocated ranges, E.164 and national format, country, and line type (mobile, landline, VoIP, toll-free, premium) with an SMS-capable hint. National numbers need a country, e.g. 0612345678 with country=NL. Costs 0.003 USDC via x402, or 2 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| phone* | string | Phone number, e.g. +31612345678 |
| country | string | ISO country for national numbers, e.g. NL |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"phone"
],
"properties": {
"phone": {
"type": "string",
"description": "Phone number, e.g. +31612345678"
},
"country": {
"type": "string",
"description": "ISO country for national numbers, e.g. NL"
}
}
}Use when a crypto service sends to or receives from a self-hosted wallet and must document its checks (EU AMLR, Travel Rule files): screens the wallet against OFAC-listed addresses, the claimed owner against EU, UN, UK and US sanctions and PEP, and checks the company register for businesses. Returns no_hits, review or block_review with list versions and a signed receipt. Input: wallet, owner, optional owner_type, birth_year, country. Costs 0.02 USDC via x402, or 10 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| owner* | string | Person or company that claims the wallet |
| wallet* | string | |
| country | string | |
| birth_year | string | |
| owner_type | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"wallet",
"owner"
],
"properties": {
"owner": {
"type": "string",
"description": "Person or company that claims the wallet"
},
"wallet": {
"type": "string"
},
"country": {
"type": "string"
},
"birth_year": {
"type": "string"
},
"owner_type": {
"enum": [
"person",
"company"
],
"type": "string"
}
}
}Use before an agent pays a supplier invoice: supplier in official registers; company, directors, owners and parents screened (EU, UN, UK, US sanctions, PEP); VAT match; IBAN valid, same country, on the Polish whitelist; sender email; Dutch bankruptcy; Peppol. With known_iban, a different bank account than the one on file puts it on hold. Verdict: pass, review or hold. Costs 0.08 USDC via x402, or 40 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| id | string | Or the supplier's company number |
| kvk | string | Dutch KvK number: adds a bankruptcy check |
| vat | string | VAT number on the invoice |
| iban | string | IBAN the invoice asks you to pay |
| name | string | Supplier company name, e.g. Colruyt Group |
| string | Email address the invoice came from | |
| domain | string | Supplier website |
| country | string | Supplier's ISO country, e.g. BE, NL, GB, PL |
| known_iban |
Use to verify a US listed company or SEC registrant: finds it by name, ticker or CIK and returns its SEC record (legal name, former names, tickers and exchanges, EIN, state of incorporation, industry code, business address, latest 10-K/20-F and 10-Q dates). Private US companies are not in EDGAR. Input: name, ticker or cik. Costs 0.01 USDC via x402, or 5 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| cik | string | SEC CIK number |
| name | string | Company name, e.g. Apple |
| ticker | string | Ticker, e.g. AAPL |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"cik": {
"type": "string",
"description": "SEC CIK number"
},
"name": {
"type": "string",
"description": "Company name, e.g. Apple"
},
"ticker": {
"type": "string",
"description": "Ticker, e.g. AAPL"
}
}
}Use before buying from, selling to or shipping to a company, above all a Chinese or Russian one: screens the name against the US Consolidated Screening List (Commerce, State and Treasury export-control lists, without the SDN list, which the sanctions screen covers) and the DHS UFLPA Entity List (forced-labour import ban). These restrict trade, they are not asset freezes. Input: name, optional type (entity or person), threshold. Costs 0.005 USDC via x402, or 3 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| name* | string | Company or person name, e.g. 'Hoshine Silicon Industry' |
| type | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Company or person name, e.g. 'Hoshine Silicon Industry'"
},
"type": {
"enum": [
"person",
"entity"
],
"type": "string"
}
}
}Use when the user wants to be told later: watches one item for 30 days, paid once, no account. kind=sanctions (a name, re-screened when the EU, UN, UK or US lists change), company (COUNTRY:name or number, register checked daily) or apk (Dutch plate, daily). Alerts go to webhook and to /v1/watch/alerts with the returned token. Input: kind, value, optional webhook, label. Costs 0.05 USDC via x402, or 25 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| kind* | string | |
| label | string | |
| value* | string | Name, COUNTRY:company (e.g. IE:Ryanair) or Dutch plate |
| webhook | string | https URL for alerts |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"kind",
"value"
],
"properties": {
"kind": {
"enum": [
"sanctions",
"company",
"apk"
],
"type": "string"
},
"label": {
"type": "string"
},
"value": {
"type": "string",
"description": "Name, COUNTRY:company (e.g. IE:Ryanair) or Dutch plate"
},
"webhook": {
"type": "string",
"description": "https URL for alerts"
}
}
}Free. Use right before paying an x402 seller: screens the payTo wallet against the OFAC list, checks that payTo is a wallet this seller lists in the x402 Bazaar or Circle catalogue (catches a swapped or injected payTo), looks up the seller's payer history, age and uptime, and checks the amount against the seller's listed price and your budget. Returns allow, review or deny with reasons and a signed verdict. Input: url of the resource, pay_to from its 402, optional amount_usd, max_usd, network, mode (strict: deny instead of review on a wallet mismatch or missing pay_to).
| Argument | Type | Description |
|---|---|---|
| url* | string | The x402 resource URL you are about to pay |
| mode | string | strict: deny on a payTo the seller does not list or a missing pay_to |
| pay_to | string | payTo address from the 402 challenge |
| max_usd | string | Your budget per call in USD |
| network | string | Network from the 402, e.g. eip155:8453 |
| amount_usd | string | Amount you are about to pay in USD, e.g. 0.05 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "The x402 resource URL you are about to pay"
},
"mode": {
"enum": [
"standard",
"strict"
],
"type": "string",
"description": "strict: deny on a payTo the seller does not list or a missing pay_to"
},
"pay_to": {
"type": "string",
"description": "payTo address from the 402 challenge"
},
"max_usd": {
"type": "string",
"description": "Your budget per call in USD"
},
"network": {
"type": "string",
"description": "Network from the 402, e.g. eip155:8453"
},
"amount_usd": {
"type": "string",
"description": "Amount you are about to pay in USD, e.g. 0.05"
}
}
}Use before an agent pays an x402 endpoint it has not used before: reads the seller's own 402 challenge, screens every payTo wallet against the OFAC list, checks the domain (age, setup), Factline's daily uptime probes and, with company, the register record and EU/UN/UK/US sanctions. Returns allow, review or deny, plus a trust-provider block (decision, score, evidence, ttl). Input: url, optional wallet, company, country. Costs 0.01 USDC via x402, or 5 credits of a Factline API key.
| Argument | Type | Description |
|---|---|---|
| url | string | The x402 endpoint or origin you are about to pay |
| wallet | string | payTo wallet to screen |
| company | string | Company behind the seller |
| country | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"url": {
"type": "string",
"description": "The x402 endpoint or origin you are about to pay"
},
"wallet": {
"type": "string",
"description": "payTo wallet to screen"
},
"company": {
"type": "string",
"description": "Company behind the seller"
},
"country": {
"type": "string"
}
}
}Free. Use when looking for an x402 API to pay for a task, or to see if a seller is used and up: sellers from the Coinbase x402 Bazaar ranked by unique payers (30 days), with Factline's daily check that their endpoints answer a valid 402, speed and networks. Filter with q (e.g. sanctions, weather, search).
| Argument | Type | Description |
|---|---|---|
| q | string | Search text, e.g. sanctions |
| limit | string | |
| network | string | e.g. solana or eip155:8453 |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"description": "Search text, e.g. sanctions"
},
"limit": {
"type": "string"
},
"network": {
"type": "string",
"description": "e.g. solana or eip155:8453"
}
}
}| string |
| company_country | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"kvk": {
"type": "string",
"description": "Dutch KvK number: adds a bankruptcy check"
},
"pep": {
"enum": [
"true",
"false"
],
"type": "string",
"description": "PEP check of a person name, default true"
},
"vat": {
"type": "string",
"description": "EU VAT number"
},
"name": {
"type": "string",
"description": "Person or company name"
},
"type": {
"enum": [
"person",
"entity"
],
"type": "string"
},
"email": {
"type": "string"
},
"phone": {
"type": "string"
},
"company": {
"type": "string",
"description": "Company name to verify"
},
"country": {
"type": "string"
},
"birth_year": {
"type": "string"
},
"company_country": {
"type": "string"
}
}
}| string |
| The supplier's IBAN in your vendor master: a different IBAN on the invoice puts it on hold (changed bank details) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"id": {
"type": "string",
"description": "Or the supplier's company number"
},
"kvk": {
"type": "string",
"description": "Dutch KvK number: adds a bankruptcy check"
},
"vat": {
"type": "string",
"description": "VAT number on the invoice"
},
"iban": {
"type": "string",
"description": "IBAN the invoice asks you to pay"
},
"name": {
"type": "string",
"description": "Supplier company name, e.g. Colruyt Group"
},
"email": {
"type": "string",
"description": "Email address the invoice came from"
},
"domain": {
"type": "string",
"description": "Supplier website"
},
"country": {
"type": "string",
"description": "Supplier's ISO country, e.g. BE, NL, GB, PL"
},
"known_iban": {
"type": "string",
"description": "The supplier's IBAN in your vendor master: a different IBAN on the invoice puts it on hold (changed bank details)"
}
}
}