Why Shopify alone isn't enough for accounting
Shopify is an excellent shop platform — but not an accounting system. The biggest pitfall: Shopify assigns order numbers (e.g. #1001) that don't meet the legal requirements for a sequential, gap-free invoice number. The standard Shopify document also doesn't meet GoBD obligations (immutability, completeness, traceability).
On top come the tax subtleties of cross-border trade: sales to private customers in the EU (OSS), to businesses with a VAT ID (reverse charge), to third countries (tax-free export) or as a small business under § 19. Each case needs the right rate and the correct wording on the invoice. This is exactly where a sevdesk integration comes in.
Four ways to connect Shopify with sevdesk
The options differ in effort, flexibility and feature scope — each has its place:
- Native sevdesk app: the official direct integration from sevdesk, solid for standard setups.
- Specialised apps (e.g. zrapp): focused on Shopify accounting in the DACH region, with automatic tax logic, cancellations/credit notes, metafield write-back and support.
- No-code automation (Zapier, Make): flexible and freely configurable; you set up and maintain the tax logic, credit notes and payment matching yourself.
- Custom API integration: tailor-made, ideal when developer resources are available.
Which path fits whom?
A neutral orientation — no judgement, every solution has its use case:
| Approach | What it is | Typically suited for |
|---|---|---|
| Native app (sevdesk) | official direct integration | shops with a standard setup |
| Specialised app (e.g. zrapp) | focused on Shopify DACH accounting | shops with EU sales/tax cases that want everything automated |
| No-code (Zapier/Make) | individually composable | teams with custom workflow needs |
| Custom API | tailor-made integration | teams with developer resources |
How invoicing runs automatically
The core is the automatic invoice. A specialised app like zrapp reacts in real time via Shopify webhooks: as soon as an order comes in (orders/create) or changes (orders/updated), an invoice is created in sevdesk automatically — with a sequential, GoBD-compliant number that sevdesk assigns itself. If you prefer control, you can also transfer orders manually from the interface.
The invoice is fully customisable: header, intro and footer text with placeholders (e.g. order number, shop name, payment term), a configurable payment term and the choice of whether the invoice date follows the order or the creation date.
The lifecycle is automatable too: invoices can be enshrined immediately, on payment or never, and then automatically booked to the matching cash account. Optionally, zrapp emails the invoice straight to the customer — with your own subject and text snippet.
Match payments to the right account automatically
An underrated time sink: allocating payments. zrapp reads the payment methods used in Shopify and maps them to the respective cash account in sevdesk via a payment-gateway mapping. So PayPal lands on the PayPal account, Shopify Payments on its account, and so on.
Supported are, among others, PayPal, Shopify Payments, Klarna, card and gift cards — plus any other gateways via the mapping table. If a mapping is missing for a gateway, a globally configured default account applies. That saves your tax advisor the tedious manual allocation.
Getting taxes right: the 4-tier system with examples
This is where a well-thought-out solution shows its value. zrapp determines the tax case per order via a clear priority logic and assigns matching sevdesk tags so your tax advisor can allocate everything cleanly:
- Small business (§ 19 UStG): 0 % with the note „no VAT shown“ — tag „Kleinunternehmer“.
- EU B2B with valid VAT ID: reverse charge, 0 %, note „tax-free intra-community supply“ — tag „Reverse-Charge“.
- Tax-exempt sales (§ 4 UStG): 0 % with the corresponding note.
- Domestic (DE): 19 % (or 7 % reduced) — tag „Inland“.
- EU B2C with OSS registration: the recipient country's local VAT rate (e.g. AT 20 %, FR 20 %, ES 21 %) — tags „OSS“ + „Land-XX“.
- Third country (export outside the EU): 0 %, „tax-free export § 6 UStG“ — tag „Drittland“.
Credit notes, cancellations and returns — automatic
Refunds and cancellations are just as important in practice as the invoice itself. When a customer refunds an order (refunds/create), zrapp automatically creates a matching credit note in sevdesk — with its own header/footer text and, if desired, immediate enshrinement. When an order is cancelled (orders/cancelled), the related invoice is cleanly cancelled or an open draft is deleted.
Important for clean books: zrapp prevents duplicate documents via a locking/mapping logic in case Shopify sends a webhook more than once (which happens on retries).
E-invoicing (ZUGFeRD) — ready for the 2025–2028 mandate
The e-invoicing obligation is staggered: since 1 Jan 2025 every company must be able to receive e-invoices; from 2027 (revenue > €800,000) and 2028 (everyone else) B2B invoices must be issued as a structured dataset (ZUGFeRD/XRechnung). A PDF alone is not an e-invoice.
zrapp can finalise invoices as a ZUGFeRD e-invoice (EN 16931). That way you're prepared early instead of having to switch just before the deadline. More in the e-invoicing mandate for Shopify.
Control, import and reporting
A good app gives you control: with a tag exclusion you skip certain orders (e.g. test or wholesale orders based on order or customer tags). Via granular switches you enable individual automations (invoice, cancellation, credit note, booking) or pause everything with a global auto-sync toggle.
For the switch-over there's the retroactive import: orders can be transferred from any chosen date. And in the dashboard you see your key figures at a glance — 12-month revenue, revenue by shipping country, top products (via ShopifyQL) plus a transfer log with success/error per order. After each invoice, zrapp also writes the invoice ID, number and status back as metafields into the Shopify order — so everything is traceable.
Connecting Shopify with sevdesk: step by step
With zrapp, setup is done in minutes:
- Install zrapp from the Shopify App Store
- Connect sevdesk via API token
- Choose your tax settings (standard taxation or small business, OSS active?)
- Map your payment providers to the sevdesk accounts (PayPal, Klarna, Shopify Payments …)
- Define automations (invoice/credit note/cancellation, enshrinement, email sending)
- Transfer a test order and check the result in sevdesk — done
zrapp at a glance: the features
zrapp specialises in Shopify accounting and covers sevdesk and Lexware Office in a single app — €6.99/month (or €69.90/year), no limits on orders or invoices, 14 days free. The key features:
- Automatic & manual GoBD invoices to sevdesk (sequential numbers)
- Automatic payment matching via gateway mapping + booking to the cash account
- Cancellations & credit notes for cancellations/returns — with duplicate protection
- 4-tier tax logic + auto-tags (domestic, reverse charge, OSS, third country, small business)
- OSS: detect the recipient country, apply the correct VAT rate
- ZUGFeRD e-invoicing (EN 16931) + automatic email delivery
- Write-back of invoice ID/number/status as Shopify metafields
- Retroactive import of historical orders + transfer log
- Tag exclusion, granular automation switches, connection-status monitoring
- Dashboard analytics (12-month revenue, by country, top products) — and all of it for Lexware Office too
