Shopware 6: e‑invoicing and DATEV export without a plugin
Shopware gives you a document for each order, but you still piece together fees, payouts, refunds and the DATEV export for your tax advisor yourself. Rechnungskit pulls your orders through the Admin API, writes the e-invoice on shipment and delivers the finished DATEV booking batch with documents every month.
- No plugin in the shop: pulled through the Admin API every 15 minutes
- ZUGFeRD invoice on shipment, with the shipping day as the date of supply (Leistungsdatum)
- DATEV batch each month, with Stripe, Mollie and PayPal fees booked separately
- Hosted in Germany (Hetzner)
- GoBD archive included
- DATEV export included
- Cancel monthly
Shopware sells. The invoice is your job.
Shopware creates the document for the order. What your bookkeeping needs after that lives outside the shop: your payment provider's fees and payouts, cancellation invoices for refunds, an unchangeable archive and finished bookings for DATEV. Rechnungskit takes over that part.
- A document from the shop, ZUGFeRD only from Shopware 6.6.10
- Payment provider fees and payouts are missing
- Refunds need a credit note created by hand
- No DATEV export in the core, only through plugins
- E-invoice under EN 16931 for every order, XRechnung for customers with a Leitweg-ID
- Payment from Stripe, Mollie, PayPal, Unzer or prepayment matched to the order
- Cancellation invoice created automatically once the transaction is "refunded"
- DATEV batch each month with document link, fees booked separately
Four steps from payment to booking.
- 01ConnectConnect your Shopware store in a few minutes. No code needed.
- 02ImportRechnungskit imports every Shopware order and matches its payment.
- 03ErzeugenEvery order becomes a validated e-invoice under EN 16931.
- 04ArchiveThe invoice is archived to GoBD standards and is ready for the DATEV export.
Every format Shopware doesn't deliver.
How a Shopware order runs through Rechnungskit
In the Shopware admin you create an integration (Settings → System → Integrations, read access is enough) and enter the shop URL, access key ID and secret in Rechnungskit. You need no plugin or extension in the shop. After a test pull, Rechnungskit loads the orders of the last 7 days and then reconciles every 15 minutes: new orders, payment status, shipping status and cancellations. The setup step by step is in the Shopware 6 help.

The payment comes from your payment provider (Stripe, Mollie, PayPal or Unzer) or as prepayment from the shop. Rechnungskit matches it to the order by order number. Order and payment together become a validated e-invoice as a ZUGFeRD hybrid, with a sequential number and, for physical goods, the shipping day as the date of supply. Customers with a Leitweg-ID (the routing ID German public bodies use), such as authorities or universities, get the same invoice as XRechnung 3.0. When a transaction in the shop is set to "refunded", the cancellation invoice follows. Every document sits unchangeable in the GoBD archive and goes into the monthly DATEV export, with revenue and payments kept apart.
- MatchPayment to order, by order number
- InvoiceE-invoice in ZUGFeRD format, on shipment for goods
- CancellationFrom the "refunded" transaction status in the shop
Timing: a pull every 15 minutes
Core Shopware has no configurable webhooks, so Rechnungskit checks your shop every 15 minutes. For invoicing that is enough, because your customer only gets the invoice after shipment or payment anyway. If you want it faster, you need the Flow Builder from the paid Shopware plans (Evolve or higher, via the Commercial extension): a Flow Builder "Call webhook" action pointing at the address Rechnungskit shows you under Connections triggers an immediate pull. Rechnungskit ignores the content of that notification on purpose; all data comes from the authenticated pull through the Admin API.
Every Shopware payment method has its route
When the invoice is created depends on how your customer pays.
Rechnungskit matches online payments via Stripe, Mollie, PayPal or Unzer by order number, and the invoice is created on shipment. With direct PayPal, the Shopware PayPal plugin passes the order number as the PayPal invoice number (invoice_id) by default, and the Unzer module for Shopware passes it as the order ID. Leave these defaults on and matching runs automatically.
With prepayment, your customer transfers money to your account and you set the payment status in the shop to "Paid". Rechnungskit picks up this status change at the next pull as an incoming payment, and the invoice is created on shipment as paid. The flow with both status changes is on Shopware prepayment: invoice automatically after payment. With purchase on account, your customer pays by bank transfer after the goods arrive. The invoice is created on shipment with payment terms, and the open receivable shows under Open items until the payment is matched.
Rechnungskit charges shipping at the tax rate of the goods, even if the shop reports a flat 19%. Mixed baskets are split by gross goods value; the background is in the guide to shipping costs and VAT.
Refunds without manual work
When a transaction in the shop is set to "refunded", Rechnungskit creates a cancellation invoice for the full amount. The original invoice stays unchanged, as § 146 Abs. 4 AO (German Fiscal Code) requires. For partial refunds Shopware reports no refunded items; the amount comes from your payment provider. Your document rule under Connections → Document rules then decides: proportionally across all line items (default), as a single refund line item, or assigned manually. Which correction route fits when is explained in the guide to invoice correction.
The DATEV export for your tax advisor
Shopware has no DATEV export in its core. The usual route is a plugin that exports documents and bookings from the Shopware database. Rechnungskit starts one step later: besides the order, it also knows the payment at the payment provider, and it books both.
Each month two EXTF booking batches are created, one for revenue and one for payments, in SKR03 or SKR04 as you choose. The payment batch books the fees from Stripe, Mollie and PayPal separately from revenue, along with refunds and the payouts to your bank account. EU sales go into the export with destination country and tax rate, and into the OSS return. Every invoice booking carries a DATEV document link, and the documents come along as a document transfer package for DATEV Unternehmen online.

Your tax advisor does not have to install anything. You download the export and pass it on, or you invite them as external access. Then they collect the exports themselves, maintain the chart of accounts and account mappings and lock exports once checked. The DATEV interface page shows exactly what is in the files. How your tax advisor uses their access is in the DATEV and tax advisor help.
Why not just keep the Shopware invoice?
You can, but three gaps remain. First, Shopware only creates the e-invoice in ZUGFeRD format from version 6.6.10. Older installations deliver just a PDF, and a PDF without a structured data set is not an e-invoice (§ 14 Abs. 1 Satz 3 UStG, German VAT Act). For domestic B2B sales, that does not meet the e-invoicing mandate from 2027 or 2028 (§ 27 Abs. 38 UStG). Second, Shopware does not know your payment fees and payouts, so reconciling them for bookkeeping stays manual work. Third, there is no DATEV export with bookings already matched. The article creating Shopware invoices covers what the Shopware document feature can do.
For EU sales, Rechnungskit also watches the 10,000 euro threshold for the OSS scheme (§ 3c Abs. 4 UStG).
Who this is for
Merchants on Shopware 6 whose tax advisor works with DATEV and who no longer want to bring invoice, payment reconciliation and booking together by hand. If your shop is run as a GmbH or another company that keeps double-entry books, the date of supply and a clean audit trail matter twice as much. Rechnungskit is a German product, hosted at Hetzner in Germany. Every feature is included in every account; you pay the base fee and your documents, details on the pricing page. If you are weighing other invoicing tools for shops, the comparisons with Billbee and easybill help.
What does it cost for your Shopware shop?
Usually one document per order. A cancellation invoice for a refund counts as a document of its own.
- 300 documents €46.00 per month · €9.00 base fee + €37.00 usage
- 1,000 documents €105.50 per month · €9.00 base fee + €96.50 usage
- 2,000 documents €180.50 per month · €9.00 base fee + €171.50 usage
Every feature and integration included, cancel monthly. Free to test until you go live. Prices are net, plus VAT.
See full pricing →Shopware and e-invoicing: FAQ
Rechnungskit is not a tax advisory or law firm. This article explains general principles and does not replace advice from a tax advisor (Steuerberater, § 5 StBerG) or a lawyer (§ 3 RDG). Rechnungskit is built for businesses based in Germany and prepares documents, tax rates and bookings automatically. How your specific case is treated remains your decision, ideally together with your tax advisor or a lawyer.
Connect Shopware, e-invoicing done.
Create an account, connect your store, check everything in free test mode. Billing starts when you go live.
Try it now