invoice-api.xhub integration
invoice-api.xhub (by xhub) generates, parses, converts and validates electronic invoices for 37 countries: plain PDF, ZUGFeRD and Factur-X hybrid PDFs, XRechnung, Peppol BIS UBL and national formats (FatturaPA, Facturae, ebInterface, ISDOC, KSeF, NAV, myDATA and more). An agent can generate an invoice in a country's format, embed the XML into its own PDF, check invoice data against XSD and Schematron rules, parse a received e-invoice into structured data, convert between ZUGFeRD, Factur-X and XRechnung, render PDFs from templates, embed attachments, build the Spanish VeriFactu QR and export a VeriFactu record chain, and send UBL documents over the Peppol network (an acting write to a real receiver) and follow their delivery. Documents travel as base64 inside JSON (one upload route takes a stored PDF file). Generation, validation and conversion count units on the key's entitlements. Not included: activating or deactivating the organization's Peppol participant registration (it publishes the organization in the Peppol directory, and its status answer is undocumented). Authentication is an API key (sk_live_ or sk_test_) created in the invoice-api.xhub console, sent as a Bearer token.
Say what should happen.
The workflow builds itself.
What you can do with invoice-api.xhub
Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.
Each badge shows the default agent permission of an endpoint (allowed: an agent calls it without asking; ask first: you are asked before an agent calls it, when the agent or chat asks permission for sensitive actions; never: no agent may call it), which every user can change endpoint by endpoint in their credential settings.
Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.
Invoice, 6 operations
convert_invoiceConvert invoicePOSTAgents: ask firstConverts an e-invoice into zugferd, facturx (both a hybrid PDF with embedded XML) or xrechnung. Returns the new document as base64 in data and lists in conversionWarnings what was not carried across. Counts 1 unit on the target's create entitlement.generate_invoiceGenerate invoicePOSTAgents: ask firstGenerates an invoice document (plain PDF, a hybrid PDF with embedded XML, or an e-invoice XML) for a country and format. Returns it as base64 in data, with warnings. Counts 1 unit on the format's create entitlement.parse_invoiceParse invoicePOSTAgents: ask firstDetects the format and country of an e-invoice (XML, or a PDF with embedded XML) and returns its data as an invoice object with the detection result and errors. The answer holds the parties' tax ids and bank details.parse_invoice_formatParse invoice formatPOSTAgents: ask firstParses an e-invoice of a given country and format (XML, or a PDF with embedded XML) into an invoice object. The answer holds the parties' tax ids and bank details. Needs that pair's parse entitlement.validate_invoiceValidate invoicePOSTAgents: ask firstChecks invoice data against a country's rules, then generates every e-invoice format of the country and checks each against its XSD and Schematron. Returns the data verdict (valid, errors) and per-format results. Counts 1 unit per checked format.validate_invoice_formatValidate invoice formatPOSTAgents: ask firstGenerates the invoice in one format and checks the XML against that format's XSD and Schematron (every profile for ZUGFeRD and Factur-X). Returns status passed, failed or not_run with the findings. Counts 1 unit on the format's create entitlement.
Invoice xml, 2 operations
embed_invoice_xmlEmbed invoice xmlPOSTAgents: ask firstEmbeds the e-invoice XML generated from your invoice data into your own PDF (sent as base64), making a ZUGFeRD or Factur-X hybrid: DE and CH zugferd, FR and BE facturx only. Counts 1 unit, like generate_invoice.embed_invoice_xml_uploadEmbed invoice xml uploadPOSTAgents: ask firstSame as embed_invoice_xml, but your PDF is sent as a stored file: returns your PDF with the generated ZUGFeRD or Factur-X XML embedded, as base64 in data. DE and CH zugferd, FR and BE facturx only. Counts 1 unit.
Pdf, 2 operations
attach_files_to_pdfAttach files to pdfPOSTAgents: ask firstEmbeds files into any PDF sent as base64. A PDF/A-3 carrier keeps its conformance (pdfA3Conformant true); others get the files without a PDF/A-3 claim. Returns the new PDF as base64 in data.render_pdfRender pdfPOSTAgents: ask firstRenders a PDF by merging your data into a template (a saved templateId or an inline template) and returns the PDF as a stored file. Optional attachments are embedded into it.
Peppol transmission, 2 operations
list_peppol_transmissionsList peppol transmissionsGETAgents: ask firstLists your organization's Peppol transmission log, outbound and inbound (receiver, status, errors), 100 rows by default, at most 500.refresh_peppol_transmissionRefresh peppol transmissionPOSTAgents: ask firstAsks the Access Point for the current delivery status of a sent document and updates its log row. A local-... id (a send that never reached the provider) comes back unchanged.
Country format, 1 operation
get_country_formatsGet country formatsGETAgents: ask firstLists the formats one country supports: tokens, labels, PDF or e-invoice, whether each can be parsed, and the default version of hybrid formats.
Invoice format, 1 operation
list_invoice_formatsList invoice formatsGETAgents: ask firstLists every supported country with its formats (token, label, PDF or e-invoice, whether it can be parsed, default version of hybrid formats). Use the tokens as format in generate_invoice.
Invoice pdf, 1 operation
attach_files_to_invoice_pdfAttach files to invoice pdfPOSTAgents: ask firstEmbeds files (for example a timesheet) into an invoice PDF sent as base64; a ZUGFeRD or Factur-X PDF stays PDF/A-3 conformant. Returns the new PDF as base64 in data.
Peppol document, 1 operation
send_peppol_documentSend peppol documentPOSTAgents: ask firstSends a UBL invoice or credit note (base64) over the Peppol network to a real receiver through your organization's Access Point. Every attempt is logged; returns the transmission row. Peppol must be set up in the invoice-api.xhub console.
Peppol receiver, 1 operation
check_peppol_receiverCheck peppol receiverGETAgents: ask firstChecks through your Access Point (SMP discovery) whether a Peppol address can receive a document type. Returns reachable and the participant found. Sends nothing.
Verifactu declaration, 1 operation
get_verifactu_declarationGet verifactu declarationGETAgents: ask firstReturns the software manufacturer's declaracion responsable for this invoicing system (Spanish VeriFactu rules), as plain Spanish text with its version. It is the same for every API key.
Verifactu qr, 1 operation
generate_verifactu_qrGenerate verifactu qrPOSTAgents: ask firstBuilds the Spanish AEAT VeriFactu QR code of an invoice: the verification URL plus the QR as a base64 PNG (no data: prefix) and as SVG. Registers nothing with the tax agency.
Verifactu record, 1 operation
export_verifactu_chainExport verifactu chainGETAgents: ask firstExports every VeriFactu record of one Spanish tax id (NIF) of your organization, ordered, each with its hash (huella) and AEAT submission status, for a tax inspection. Narrow with from and to; above 5000 entries a range is required.
Use invoice-api.xhub from Claude Code, Cursor or Codex
Connect invoice-api.xhub in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its invoice-api.xhub operations become tools the client can call, next to every other integration you connected.
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"
[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"{
"mcpServers": {
"livecontext": {
"type": "http",
"url": "https://livecontext.ai/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}How to connect invoice-api.xhub
- Create your workspace
Sign up free. Nothing to install.
- Connect invoice-api.xhub once
Add your invoice-api.xhub connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.
- Describe the job in chat
The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.
invoice-api.xhub integration FAQ
What can you do with the invoice-api.xhub integration?
LiveContext exposes 20 operations on invoice-api.xhub, covering invoice, invoice xml, pdf and peppol transmission.
