Card snapshot
einvoice.alexhub.uk
·
2026-10-27 05:03:20 UTC
·
2950d64b3d40ba563371a9889e5c2b2ca8e7c213ba255e93104dcedef9328ded
This is a frozen copy of the agent's agent-card.json as we observed it at the timestamp above. We capture a new snapshot every time the card's content hash changes. Useful for: forensic drift analysis, verifying downstream callers see the right version, reproducing routing decisions made historically.
{
"protocolVersion": "0.3.0",
"name": "e-Factura Validator (Romania)",
"description": "Check a Romanian e-Factura (UBL 2.1, CIUS-RO 1.0.9) before uploading it to ANAF SPV, and get the exact fix for every error: plain-English explanation, the official Romanian rule text, the UBL path of the field and, for amount errors, the correct value computed from the invoice (chained, so following the report gives a consistent invoice). Also validates Peppol BIS Billing 3.0 and EN 16931. No account: $0.01 per invoice via x402, plus a small free tier.",
"url": "https://einvoice.alexhub.uk/mcp",
"preferredTransport": "MCP",
"provider": {
"organization": "alexhub.uk",
"url": "https://einvoice.alexhub.uk"
},
"version": "1.4.0",
"documentationUrl": "https://einvoice.alexhub.uk/llms.txt",
"capabilities": {
"streaming": false,
"pushNotifications": false
},
"defaultInputModes": [
"application/json",
"application/xml"
],
"defaultOutputModes": [
"application/json"
],
"skills": [
{
"id": "validate_saft",
"name": "validate_saft",
"description": "Check a Romanian SAF-T file (D406) before filing it with ANAF: runs ANAF's official validator (DUKIntegrator) for the reporting period and the consistency checks it does not do offline (balanced entries, GL totals, opening + movements = closing per account, trial balance, partner balances, invoice totals, VAT = base x rate, VAT codes valid for the period, CUI/IBAN check digits, chart of accounts). Every finding has a fix in Romanian and English and the correct value where computable. Paid: $0.50 USDC via x402 (network eip155:8453), charged only if a D406 was checked; without a payment it returns the payment requirements.",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
},
{
"id": "validate_saft_free",
"name": "validate_saft_free",
"description": "Same check as validate_saft, free: 1 file(s) per day per client IP, report limited to the first 10 findings (the total count is given).",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
},
{
"id": "validate_invoice",
"name": "validate_invoice",
"description": "Validate a UBL 2.1 invoice: every rule violation with a plain-English fix, the UBL path of the field and, for amount errors, the correct value. Paid: $0.01 USDC per call via x402 (network eip155:8453); without a payment it returns the payment requirements. Only real invoices are charged. If the report has 'autofix', fix_invoice can repair those errors.",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
},
{
"id": "fix_invoice",
"name": "fix_invoice",
"description": "Repair the invoice automatically and return the corrected XML: county/sector/country/currency/unit codes, date formats, VAT-id prefixes, decimals, totals and VAT recomputed from the lines. Lists every change (field, old, new) and re-validates the result. Paid: $0.05 USDC via x402, charged only if something was fixed. Review the changes before sending the invoice.",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
},
{
"id": "generate_invoice",
"name": "generate_invoice",
"description": "Create a complete Romanian e-Factura (UBL 2.1 CIUS-RO XML) from simple data: invoice number, dates, seller and buyer CUI, lines (name, quantity, unit, price without VAT, VAT rate e.g. 21 or 11), optional IBAN. Company names, addresses, county codes, Bucharest sectors and VAT status are filled from ANAF; totals and VAT are computed; the XML is validated before it is returned. Paid: $0.05 USDC via x402, charged only when a valid invoice is returned. Other currencies: add 'currency': 'EUR' (BNR rate used unless you pass exchange_rate). Example invoice: {\"number\": \"FCT-0001\", \"issue_date\": \"2026-10-24\", \"due_date\": \"2026-11-23\", \"seller\": {\"cui\": \"RO12345678\"}, \"buyer\": {\"cui\": \"87654321\"}, \"payment\": {\"iban\": \"RO49AAAA1B31007593840000\"}, \"lines\": [{\"name\": \"Servicii consultanta\", \"quantity\": 10, \"unit\": \"ore\", \"price\": 150, \"vat_rate\": 21}]}",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
},
{
"id": "lookup_company",
"name": "lookup_company",
"description": "Romanian company data by CUI (fiscal code) from ANAF, already in e-Factura form: legal name, VAT id (RO\u2026 only for VAT payers), trade register number, address with county as ISO code (RO-CJ) and Bucharest city as SECTOR1..6, plus flags: inactive, VAT on collection, e-Factura registry. Free.",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
},
{
"id": "validate_invoice_free",
"name": "validate_invoice_free",
"description": "Same report as validate_invoice, free: 3 calls per day per client IP. When the quota is used up, switch to validate_invoice.",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
},
{
"id": "fx_rate",
"name": "fx_rate",
"description": "Official BNR (National Bank of Romania) exchange rate: RON per 1 unit of the currency, for a date (default today; weekends/holidays return the last publication). Omit currency for all rates. Free.",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
},
{
"id": "ro_holidays",
"name": "ro_holidays",
"description": "Romanian public (legal) holidays for a year, incl. Orthodox Easter and Rusalii. Free.",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
},
{
"id": "ro_business_day",
"name": "ro_business_day",
"description": "Is a date a Romanian working day, which is the next one, and (optionally) the date N working days later. Free.",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
},
{
"id": "ro_tax_deadlines",
"name": "ro_tax_deadlines",
"description": "Romanian monthly filing deadlines (D112, D300, D100, D390, D394, D406) for a reporting month, moved to the next working day when they fall on a weekend or holiday. General rules; confirm special regimes with ANAF. Free.",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
},
{
"id": "validate_iban",
"name": "validate_iban",
"description": "Check an IBAN (length and check digits) and name the Romanian bank. Free.",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
},
{
"id": "explain_rule",
"name": "explain_rule",
"description": "Explain one business rule by its id (e.g. BR-CO-15, BR-RO-110, PEPPOL-EN16931-R001): official text, plain-English fix and where the field lives in UBL. Free.",
"tags": [
"e-invoice",
"e-factura",
"romania",
"anaf",
"peppol"
]
}
],
"x402": {
"protocol": "x402",
"network": "eip155:8453",
"asset": "USDC",
"validate_invoice": "$0.01",
"fix_invoice": "$0.05",
"generate_invoice": "$0.05",
"free": "validate_invoice_free: 3 per day per IP; lookup, explain, BNR rates, calendar and IBAN tools are free"
}
}