For Agents
Create EN16931-compliant electronic invoices, import and validate incoming invoices, manage customers and products, and subscribe to invoice status webhooks for European B2B and B2G e-invoicing.
Use for: Create a new outgoing invoice in EN16931-compliant format, I need to validate an incoming PDF invoice and extract its line items, List all invoices issued in the last 30 days, Set up a webhook to fire when an invoice changes status
Not supported: Does not handle full bookkeeping, ledger postings, or tax filing - use for e-invoicing creation, import validation, and invoice lifecycle tracking only.
Jentic publishes the only available OpenAPI specification for Faktoora e-Invoicing API, keeping it validated and agent-ready. Faktoora is a European electronic invoicing platform that creates, validates, and exchanges invoices in compliance with the EN16931 standard, including XRechnung, ZUGFeRD, and Peppol formats required for B2G and B2B e-invoicing across the EU. The 87-endpoint API covers outgoing and incoming invoices, structured invoice import with validation, customer and product catalogues, product bundles, and webhooks for real-time invoice status events.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Faktoora e-Invoicing API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fapi.faktoora.com%2Ffaktoora" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fapi.faktoora.com%2Ffaktoora" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Faktoora e-Invoicing API.
Issue an EN16931-compliant invoice in XRechnung or ZUGFeRD format
Import an incoming invoice file and run structural and tax validation
Track invoice status from issue through delivery, payment, and archive
Manage a customer master record with VAT IDs and country codes
Maintain a product catalogue and reusable product bundles for invoice line items
GET STARTED
Subscribe to webhooks that fire on invoice status changes
Retrieve validated invoice components (line items, taxes, payment terms) from imports
Patterns agents use Faktoora e-Invoicing API for, with concrete tasks.
★ EU E-Invoicing Compliance
Issue and receive invoices in EN16931-compliant formats (XRechnung, ZUGFeRD) required for selling into German public sector and increasingly for B2B across the EU. Faktoora handles format generation, validation, and delivery so teams do not build XML schema validators in-house. Cuts compliance project time from weeks to days for businesses adapting to mandatory e-invoicing.
POST /invoices with buyer details, line items, and target format=XRechnung to generate a compliant invoice and capture the returned faktooraId
Invoice Capture and Validation
Automate accounts payable by importing supplier invoices via /import and pulling structured line items, taxes, and payment terms once validated. The validation endpoint flags structural and tax errors before the invoice ever reaches the ERP, reducing rejection cycles and manual data entry.
POST /import with the supplier invoice file, GET /import/{importId}/validation to confirm it passed, then GET /import/{importId}/content/lineitems for the structured data
Real-Time Invoice Status Sync
Drive an internal dashboard or finance Slack channel from invoice lifecycle events using Faktoora webhooks. Subscribe once, then receive structured events as invoices are issued, dispatched, paid, or archived. Eliminates polling /invoices/{faktooraId}/status and surfaces problems (rejected, overdue) without delay.
POST a webhook subscription for the invoice.status_changed event, then on receipt route 'rejected' status events to the finance Slack channel
AI Agent Invoicing via Jentic
An AI accounts agent can issue invoices on demand by calling Faktoora through Jentic. Given a customer record, line items, and target format, the agent runs POST /invoices and returns the faktooraId and status. Jentic isolates the X-API-KEY and exposes the 87 operations as discoverable tools.
Search Jentic for 'create an EN16931 invoice', load the POST /invoices schema, and execute with buyer, line items, and format to return the faktooraId
87 endpoints — jentic publishes the only available openapi specification for faktoora e-invoicing api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/invoices
Create an outgoing EN16931-compliant invoice
/invoices
List issued invoices with filters
/invoices/{faktooraId}/status
Get current status of an invoice
/import
Import an incoming invoice file for validation
/import/{importId}/validation
Get validation result for an imported invoice
/import/{importId}/content/lineitems
Retrieve structured line items from an imported invoice
/import/{importId}/content/taxes
Retrieve tax breakdown from an imported invoice
/invoices
Create an outgoing EN16931-compliant invoice
/invoices
List issued invoices with filters
/invoices/{faktooraId}/status
Get current status of an invoice
/import
Import an incoming invoice file for validation
/import/{importId}/validation
Get validation result for an imported invoice
/import/{importId}/content/lineitems
Retrieve structured line items from an imported invoice
/import/{importId}/content/taxes
Retrieve tax breakdown from an imported invoice
What agents get from Jentic-routed access to this vendor.
Setup
Wiring Faktoora by hand means setting up its API key auth and coding your own calls to the invoice, import, and validation endpoints. Through Jentic you install once, import the Faktoora e-Invoicing API from the API Directory, store the key once, and your agent calls it.
Permission scoping
Faktoora puts the invoice and import id in the URL path (/invoices/{faktooraId}/status, /import/{importId}/validation), so a rule can pin your agent to reading status and validation for one invoice or import. You choose the operations it may call, so invoice creation is not included unless you add it.
Credential isolation
Your Faktoora API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'create an e-invoice' or 'check an invoice's status', and Jentic returns the matching Faktoora operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using Faktoora e-Invoicing API through Jentic.
Why is there no official OpenAPI spec for Faktoora e-Invoicing API?
Faktoora does not publish a public OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Faktoora e-Invoicing API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.
What authentication does the Faktoora e-Invoicing API use?
Faktoora uses an API key passed in the X-API-KEY request header. There is also a sandbox base URL (api.demo.faktoora.com) for testing. Through Jentic, both production and demo keys can be stored in the vault and selected per environment.
Which e-invoicing formats does this API generate?
Faktoora generates EN16931-compliant formats including XRechnung (the German B2G standard) and ZUGFeRD (hybrid PDF/A-3 with embedded XML). The format is selected on POST /invoices and is required for selling into German public sector and increasingly mandated for EU B2B.
Can I extract line items and tax data from a supplier PDF invoice?
Yes. POST /import accepts the supplier invoice file. After validation completes, GET /import/{importId}/content/lineitems returns structured line items and GET /import/{importId}/content/taxes returns the tax breakdown, both ready to push into an ERP.
How do I issue an invoice through Jentic?
Run pip install jentic, then search 'create an EN16931 invoice'. Jentic returns the POST /invoices operation with its schema. Execute with buyer details, line items, and format; Jentic handles the X-API-KEY header and returns the new faktooraId.
Does the API support webhooks for invoice events?
Yes. The /webhooks endpoints let you subscribe to invoice and import lifecycle events. This avoids polling /invoices/{faktooraId}/status and surfaces rejection, payment, and archive events as they happen.
Can I limit what my agent is allowed to do with the Faktoora e-Invoicing API?
Yes. Because you run Jentic One yourself, you decide which of the 87 Faktoora operations your agent may call and which API key it uses. Faktoora carries the invoice and import id in the URL path, as in /invoices/{faktooraId}/status and /import/{importId}/validation, so your rules can pin the agent to reading status and validation for a specific invoice or import. If you do not include POST /invoices in the allowed set, the agent cannot create invoices, only the read operations you granted.