Post-purchase upsells and the supplementary invoice
Updated
A post-purchase upsell (for example FunnelKit UpStroke or CartFlows in WooCommerce) adds more items to the existing order after checkout and collects a second payment for them. Rechnungskit handles this automatically: the first invoice stays unchanged in the GoBD archive, and a supplementary invoice (Nachtragsrechnung) is created for the added items.
This page explains how Rechnungskit detects the upsell, why a second invoice is correct, what happens with shipping and refunds, and which plugin setting fits.
How detection works
Rechnungskit compares the current order lines with the invoice lines already invoiced and determines the difference not yet billed. If the second payment matches this difference to the cent, the supplementary invoice is created automatically:
- its own sequential invoice number
- only the new items
- the footer "Rechnung über nachträglich hinzugekaufte Leistungen zur Bestellung …" (invoice for items added later to order …)
- normal delivery and DATEV export
The order of the webhooks does not matter. A payment that arrives before the order update is matched again automatically on the update.
Why a separate second invoice is correct
The upsell is an additional, separate purchase with its own payment. For VAT purposes it is a further sale, for which a separate, complete invoice is issued. There is no rule "one order, one invoice".
The first invoice therefore deliberately stays unchanged: it is neither corrected nor canceled. An invoice correction (§ 31 Abs. 5 UStDV) only concerns invoices with missing or incorrect details, and the first invoice was correct. The supplementary invoice bills only the newly added lines.
A reference to the invoice number of the first invoice is not required, because this is not a correction. The reference to the order number in the footer is enough to assign the additional purchase clearly. What matters is that the supplementary invoice itself contains all mandatory details under § 14 Abs. 4 UStG. It does: its own invoice number, date of supply, net amount and VAT per tax rate.
Date of supply
The date of supply of the supplementary lines follows the actual performance:
| Supply | Date of supply |
|---|---|
| Digital service | the time it is made available, usually the payment, if unlocking or download happens immediately |
| Physical goods | the shipment |
In practice the upsell is added right after the order, so before the goods leave the warehouse. Rechnungskit therefore invoices physical supplementary lines, like the rest of the order, only on "Mark as shipped". That way the shipping date is right for all lines. A separate later purchase that ships on its own is a separate transaction with its own shipping date.
What the supplementary invoice costs
The supplementary invoice is a separate, complete document with its own invoice number and its own GoBD archive entry. It is therefore billed individually like any other invoice. An upsell creates two documents (the original invoice and the supplementary invoice), and both count individually in your monthly Rechnungskit billing.
Don't confuse this with the second payment the buyer makes for the upsell, which goes to your own account through your payment provider. That it is the same order does not change the fact that two documents are created and that Rechnungskit bills you for each. Details on the price per document are under Pricing and billing.
When no invoice is created
If something does not match, Rechnungskit deliberately creates no document but a task of the type "Order changed after invoicing" under /payments. The task names the reason. Once it is cleared up, matching can run again with "Re-match all".
Typical reasons for the task:
- The payment does not exactly match the open difference.
- The quantity of a line already invoiced was changed.
- The order already carries a cancellation.
Shipping costs and refunds
Shipping
The shipping costs of the original order stay on invoice 1. Only an additionally charged shipping surcharge appears on the supplementary invoice.
Its tax rate follows the added lines (ancillary service). Extra shipping for a 7 % item is shown at 7 %. For added lines with mixed rates, the shipping surcharge is split by the gross value ratio of the new lines.
Refunds
| Refund through | Assignment |
|---|---|
| Payment provider | hits the specific payment and therefore automatically the right invoice |
| Shop | the invoice whose open remainder matches exactly, otherwise a review task is created |
Plugin settings
FunnelKit has three modes for upsells:
| Mode in FunnelKit | Result in Rechnungskit |
|---|---|
| Add to the order | supplementary invoice |
| Create as a separate new order | a normal invoice of its own |
| Cancel and replace the original order ("Cancel and Replace") | cancellation plus a new total invoice |
We advise against the mode "Cancel and Replace", because it forces a cancellation plus a new total invoice. More on the page Upsells and supplementary invoices.
Where to find it in the app
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.