Up to 50 e-invoices (XML or PDF) into one spreadsheet: one row per invoice plus a sheet with every line, amounts as real numbers. Or CSV for German Excel, or a DATEV booking batch (EXTF) with your accounts.
curl -X POST https://api.bigapi.dev/v1/einvoice/to-xlsx -H 'Authorization: Bearer $KEY' -F 'file=@a.xml' -F 'file=@b.pdf' -o rechnungen.xlsx
New keys come with 100 free operations, no signup: curl -X POST https://api.bigapi.dev/v1/keys. Failed calls cost nothing.
| Name | Meaning |
|---|---|
file required | One or more e-invoices, XML or PDF (field file, repeatable, max 50). Formats not accepted as an e-invoice in Germany (BASIC WL, MINIMUM, ZUGFeRD 1) are still listed, with the warning not_accepted_format; in xlsx, invoices without lines give no_line_items. |
format | xlsx gives two sheets; csv gives the invoice rows only, with semicolons and decimal commas for German Excel; datev gives a DATEV booking batch (EXTF format version 13, Windows-1252), one booking per invoice and VAT rate. Allowed: xlsx, csv, datevDefault: "xlsx" |
account | datev only: expense account for incoming invoices (e.g. 3400 in SKR 03), revenue account for outgoing ones. Default: left empty, with a warning |
contra_account | datev only: creditor (incoming) or debtor (outgoing) account, e.g. 70000. Default: left empty, with a warning |
direction | datev only: incoming = supplier invoices (input VAT keys 9/8), outgoing = your own invoices (output VAT keys 3/2). Allowed: incoming, outgoingDefault: "incoming" |
skr | datev only: chart of accounts written to the header. Allowed: 03, 04Default: not set |
consultant | datev only: DATEV consultant number (Beraternummer). Default: left empty, with a warning |
client | datev only: DATEV client number (Mandantennummer). Default: left empty, with a warning |
account_length | datev only: length of general ledger accounts (4 to 8). Default: 4 |
fiscal_year_start | datev only: start of the fiscal year, YYYY-MM-DD. Without it the calendar year of the invoices is used; invoices from two years are refused. Default: 1 January |
Returns application/vnd.openxmlformats-officedocument.spreadsheetml.sheet | text/csv. Response headers carry the cost (X-BigAPI-Cost) and notes about your input (X-BigAPI-Warnings).
422 datev_mixed_years | DATEV batches cover one fiscal year; send invoices from different years separately. |
422 datev_outside_year | An invoice date lies outside the fiscal year given in fiscal_year_start. |
Connect BiGapi as an MCP server: https://api.bigapi.dev/mcp (hosted) or npx -y @bigapi/mcp (local). Then ask in plain words; the agent finds einvoice_to_xlsx on its own.
Make a DATEV booking batch from these supplier invoices, expense account 3400, creditor 70000.