How to Fix “Falscher Steuersatz in Position” and Sync WooCommerce Orders to Lexware Office

Introduction

If you sell low-value items on WooCommerce — samples, scent testers, add-ons priced at a few cents — and you sync orders into Lexware Office (formerly lexoffice) through a connector or ERP middleware, you may have hit an invoice that gets rejected with “Falscher Steuersatz in Position” (wrong tax rate on this line item). The order total looks correct. The tax rate in WooCommerce is correct. And yet Lexware Office refuses the document.

This isn’t a bug in your shop, and it isn’t a bug in Lexware Office. It’s rounding — and once you see the arithmetic, the fix is straightforward.

Why This Keeps Happening With WooCommerce → Lexware Connectors

Most WooCommerce ↔ Lexware sync tools work by re-calculating tax on their own side and sending a finished total to Lexware Office, which then re-validates that calculation against the tax rate you sent. On a normal-priced product, the rounding is invisible. On a cent-level line item, it isn’t:

0.28 € × 19% = 0.0532 €  →  rounded to 0.05 € (currency has 2 decimals)
0.05 € ÷ 0.28 € = 17.86%  ←  Lexware Office expects 19%

The connector rounded the tax amount to the nearest cent, as every currency system must — but that rounded amount no longer divides back into an exact 19%. Lexware Office’s own validation catches the mismatch and rejects the line, even though nothing about the order was actually wrong.

The Fix: Let Lexware Office Do Its Own Tax Math

The rounding mismatch only exists because two systems calculate the same tax amount independently and then compare notes. Remove the second calculation, and there’s nothing left to disagree with.

That’s the whole approach behind Nota Invoice Sync for Lexware Office: for every line, it sends only the net amount and the tax rate — never a pre-computed tax total. Lexware Office itself calculates every tax amount and grand total from those two numbers. A 0.28 € item at 19% is sent exactly as 0.28 € net, 19% rate — and Lexware Office, not a third-party connector, decides how that rounds. There is no external total for it to reject.

The plugin also creates the invoice directly through Lexware’s official Public API (api.lexware.io) with a key you generate yourself — no ERP, no middleware, no CSV export step in between.

What You’ll Need

  • A WooCommerce store, with orders priced in EUR — Lexware Office invoicing doesn’t support other currencies.
  • A Lexware Office account with the Public API enabled (Settings → Public API in your Lexware Office account).
  • Five minutes to connect the two.

Step 1: Install the Plugin and Connect Your API Key

Install Nota Invoice Sync for Lexware Office from the WordPress.org plugin directory and activate it. Go to WooCommerce → Lexware Invoices, generate a personal key at app.lexware.de/addons/public-api, and paste it into the API key field. Click Save and test connection.

The connection test does one more thing worth knowing about: it compares your Lexware Office account’s tax configuration against your shop’s own tax table and warns you on the spot if the two disagree — for example, if your shop charges destination-country VAT for EU orders (One Stop Shop) but your Lexware Office account is still set to German VAT. Catching that mismatch here, before the first invoice, is a lot less painful than discovering it after a rejected cross-border order.

Step 2: Choose Draft or Finalised Invoices

Under Document mode, decide whether new invoices arrive as drafts or are finalised immediately:

  • Draft (“Entwurf”) — unchecked by default. The document can still be edited or deleted in Lexware Office, isn’t booked, and has no e-invoice (ZUGFeRD) file yet. Good for your first few invoices while you confirm everything looks right.
  • Finalised — the invoice becomes permanent, is recorded for GoBD, and gets its ZUGFeRD e-invoice document. A finalised invoice can only ever be reversed with a credit note, never deleted — so switch to this once you’ve checked a handful of drafts.

Step 3: Create Your First Invoice

Open any WooCommerce order and look for the Lexware Office invoice panel in the sidebar. Click Create invoice now. The plugin resolves the correct tax treatment, finds or creates the matching Lexware contact by the customer’s email address, and sends the invoice. The resulting invoice number and status appear right there on the order screen, and on the order list as its own column.

Not ready to send anything yet? Turn on Test mode under Diagnostics first — it builds the exact payload and writes it to the WooCommerce log without sending it anywhere, so you can inspect precisely what would be sent.

Understanding German & EU Tax Treatment

Beyond fixing the rounding problem, the plugin works out the correct Lexware tax type for every order automatically:

  • Domestic (DE → DE) — standard net invoice, normal VAT rate.
  • Intra-community reverse charge — detected when the order carries a VAT-ID and zero tax, exactly what any EU VAT plugin produces for a validated B2B customer.
  • EU distance sales (OSS) — B2C orders to other EU countries, handled according to your Lexware Office account’s distance-sales setting.
  • Third-country export — orders shipped outside the EU, zero-rated.
  • Kleinunternehmer (§19 UStG) — if your Lexware Office account is flagged as a small business, invoices are created VAT-free automatically.

The plugin never re-validates or overrides what WooCommerce (or your VAT plugin) already decided — it trusts your shop’s own tax logic and simply translates it into the field names Lexware Office expects.

Step 4: Automate Everything That Happens Next

Everything above works fully, without limits, in the free version — invoices are created by hand, one click at a time. Nota Invoice Sync Pro removes the manual step and adds what happens after the invoice exists:

  • Automatic invoicing on any combination of order statuses — processing, on hold, completed, or pending for pay-on-invoice shops.
  • Invoice PDF attached to WooCommerce order emails automatically, once finalised.
  • Payment reminders (Mahnwesen) with three configurable stages for overdue invoices.
  • Payment status sync — twice a day, checks whether Lexware Office already shows an invoice as paid and notes it on the order.
  • Credit notes (Gutschrift), one click on the order screen.
  • Large-scale bulk import for invoicing months of existing orders, paced to stay safely under Lexware’s API rate limit and resumable if interrupted.

Troubleshooting

  • “No Lexware Office API key has been configured yet” — the key field is empty or wasn’t saved. Re-enter it under WooCommerce → Lexware Invoices and click Save and test connection.
  • An order won’t invoice, and there’s no error at all — check the order’s currency. Lexware Office invoicing only supports EUR; orders in any other currency are skipped on purpose, with the reason written to the log, rather than sent with the wrong currency.
  • A tax setup warning appears on the settings page — your shop is charging destination-country VAT (OSS) for EU orders, but your Lexware Office account is still set to German VAT, or vice versa. Discuss which one should change with your tax adviser; this is an account configuration mismatch, not something the plugin can silently resolve.
  • Still seeing a tax-rate rejection — make sure you’re invoicing through Nota Invoice Sync directly rather than through a connector that recalculates totals on its own side; that recalculation is what reintroduces the rounding mismatch in the first place.

Frequently Asked Questions

Is this an official Lexware plugin?
No. Nota Invoice Sync is an independent product, not affiliated with or endorsed by Haufe-Lexware GmbH & Co. KG. It talks to your own Lexware Office account through the official public API, using a key you create yourself.

I know this service as “lexoffice” — is that the same thing?
Yes. lexoffice is the former name of Lexware Office; the plugin uses the current api.lexware.io gateway.

Do I need the Pro version to fix the rounding error?
No. The free version creates unlimited invoices, drafts or finalised, with the full tax treatment described above. Pro only adds automation and what happens after the invoice — PDF delivery, reminders, payment sync, credit notes, and bulk import.

What data gets sent to Lexware, and when?
Only when you create an invoice: the customer’s name, billing address, email, and the order’s line items, sent to your own Lexware Office account over the official API. Nothing is sent anywhere until an invoice is actually created.

Conclusion

“Falscher Steuersatz in Position” almost always comes down to the same root cause: a middleware tool doing its own tax math and disagreeing with Lexware Office by a fraction of a cent. Send only the net amount and the tax rate, and let Lexware Office compute the rest itself, and the mismatch has nothing left to trigger on. Nota Invoice Sync for Lexware Office does exactly that, for every WooCommerce order, for free.

Stop fighting rounding errors on your Lexware invoices

Get Nota Invoice Sync for Lexware Office free on WordPress.org, or see everything Nota Invoice Sync Pro automates after the invoice is created.