Skip to content
Rechnungskit
Law · Subscriptions with consumers
Explainer

The German cancellation button (§ 312k BGB): who needs it and how it works

If your website lets consumers enter into a paid continuing contract, such as a subscription, you must offer a cancellation button there (§ 312k(1) and (2) BGB, the German Civil Code). It is labeled "Verträge hier kündigen" (cancel contracts here) or with equally clear wording, and leads directly to a confirmation page with a button labeled "jetzt kündigen" (cancel now). Without it, the customer may cancel at any time without notice (§ 312k(6) BGB).

Who needs a cancellation button

The obligation depends on four conditions in § 312k(1) sentence 1 BGB (German). Your customer is a consumer, the contract is concluded through a website in electronic commerce, it creates a continuing contract (Dauerschuldverhältnis), and you owe a paid service under it. The typical example is a subscription: software, a membership, an online course with a fixed term, coffee shipped every month.

Two cases are exempt (§ 312k(1) sentence 2 BGB, German): contracts that by law may only be canceled in a form stricter than text form, and websites and contracts for financial services. How the customer pays makes no difference. A fixed-term contract with a one-time fee that ends automatically also needs the button (BGH, judgment of May 22, 2025, I ZR 161/24, German; the BGH is Germany's Federal Court of Justice).

Pure B2B business is not affected, because § 312k(1) BGB (German) only covers contracts with consumers. That only helps you if private individuals really cannot sign up with you. If your subscription checkout is open to everyone, the obligation applies to every contract with a private individual.

Quick check
Do I need the cancellation button?
Private individuals sign up for a subscription on your websiteMonthly or annual subscription, membership, course with a fixed term
Required
Fixed-term contract with a single paymentFor example an annual pass paid in advance (BGH I ZR 161/24)
Required
One-time purchase without a termGoods or a download, the contract is fulfilled on delivery
Not required
Business customers onlyPrivate individuals demonstrably cannot sign up
Not required
Financial services§ 312k(1) sentence 2 no. 2 BGB exempts them
Not required
Different rules apply to the withdrawal button: it covers all distance contracts with consumers concluded online, including one-time purchases and financial services (§ 356a(1) BGB). More under withdrawal button under § 356a BGB.

What § 312k BGB requires

§ 312k(2) BGB (German) describes a two-step process with fixed building blocks:

  1. The cancellation button. It sits on the website where the contract can be concluded, is easy to read, and carries only the words "Verträge hier kündigen" (cancel contracts here) or a corresponding clear wording.
  2. The confirmation page. The button leads straight to it. The page asks the customer for details: the type of cancellation (ordinary, or extraordinary with a reason), details that identify them, the name of the contract, the desired end date, and how they want to receive the confirmation.
  3. The confirmation button. It carries the words "jetzt kündigen" (cancel now) or a corresponding clear wording. Only clicking it submits the cancellation.

The button and the confirmation page must be permanently available and directly and easily accessible (§ 312k(2) sentence 4 BGB, German). The customer must be able to save their declaration together with the date and time it was submitted (para. 3). You confirm to them immediately and electronically in text form the content of the cancellation, the date and time it was received, and when the contract ends (para. 4). If the customer does not name a date, the cancellation takes effect at the earliest possible time in case of doubt (para. 5).

Process under § 312k BGB
Two clicks to cancel, then the confirmation
  1. Step 1 · Your website"Verträge hier kündigen"Easy to read, permanently available, reachable without detours
  2. Confirmation pageDetails on customer, contract and end dateNothing else: no offers, no pause, no discounts
  3. Step 2"jetzt kündigen"Cancellation submitted
  4. Right afterConfirmation in text formContent, date and time received, contract end
The labels "Verträge hier kündigen" (cancel contracts here) and "jetzt kündigen" (cancel now) are written into § 312k(2) BGB. A "corresponding clear wording" is also allowed.

Logins, ads and retention offers

Login. The word does not appear in § 312k BGB (German). The law requires the button and the confirmation page to be permanently available and directly and easily accessible (para. 2 sentence 4). Whether a login requirement is compatible with that is a question of interpretation. The Verbraucherzentrale (German consumer advice center) considers a login generally inadmissible for the related withdrawal button, with one exception: when the contract itself could only be concluded with a login. The safest option is a path that works without any login at all.

Ads and retention offers. Here the situation has been clear since July 16, 2026. The BGH ruled that the confirmation page may not contain any further details, offers or information beyond the details required by law and the confirmation button (BGH, judgment of July 16, 2026, I ZR 200/25, German). A gym had offered a free pause there instead of canceling, and that was not allowed. Discounts, surveys or an "Are you sure you want to leave?" have no place on this page.

What happens without a cancellation button

The direct consequence is in § 312k(6) BGB (German): if the button or the confirmation page is missing or does not meet the requirements, the customer can cancel at any time without a notice period. The notice periods in your contract then no longer apply.

On top of that come injunction claims. Both BGH judgments above go back to lawsuits by consumer associations entered in the list of qualified consumer associations under § 4 UKlaG, the German Injunctions Act (I ZR 161/24, I ZR 200/25, both German). Competitors can also demand that you stop (§ 8(3) no. 1 UWG, the German Unfair Competition Act, German).

Cancellation button and withdrawal button

Since June 19, 2026 there has also been the withdrawal button under § 356a BGB (BGBl. 2026 I No. 28, German). The two are often confused, but they cover different things:

Cancellation button Withdrawal button
Legal basis § 312k BGB § 356a BGB
Purpose End an ongoing contract for the future Unwind a contract within the withdrawal period
Applies to Continuing contracts concluded online All distance contracts with consumers concluded online
Financial services Exempt Covered
When visible Always During the withdrawal period
Label "Verträge hier kündigen", then "jetzt kündigen" "Vertrag widerrufen" (withdraw from contract), then "Widerruf bestätigen" (confirm withdrawal)

If you sell subscriptions to consumers, you therefore need both functions side by side for the first 14 days.

How customers cancel Rechnungskit subscriptions

If you sell subscriptions through Rechnungskit's subscription checkout, every subscriber gets a customer portal at konto.rechnungskit.de. The page for their subscription opens without a login. Cancellation and withdrawal sit there as two separate functions, one below the other.

Customer portal · konto.rechnungskit.de
The subscription page with cancel and withdraw
Seller: Example Software GmbH
Team plan
€29.00 per month
Active · current period until 31 October 2026
The cancellation takes effect at the end of the current billing period.
Cancel contract
Within the withdrawal period: the contract ends and the amount you already paid is refunded in full to your original payment method.
Withdraw from contract
Processed by Rechnungskit. Your contract is with the seller named above.
  • SellerYour business is named at the topYou are the contracting party; Rechnungskit is only the technical service provider.
  • Cancellation, § 312k BGB"Cancel contract" is always thereDepending on the plan, it takes effect at the end of the period or immediately. The note above it says which applies.
  • Withdrawal, § 356a BGB"Withdraw from contract" only within the periodThe button appears for the first 14 days after sign-up and disappears afterward.
Recreation of the real portal page with made-up example values. Labels as in the product (English portal; German customers see the German labels).

Clicking "Cancel contract" reveals the prompt "Do you want to submit your cancellation now? It will be binding.", together with "Confirm cancellation" and "Cancel". Nothing else appears there, no offer and no detour. After the second click, the page shows the cancellation for the customer's records: which declaration, which contract with which seller, received on which day at what time (German time), and when the contract ends. With "Print or save confirmation" the customer keeps it as a printout or PDF. The same details go to them by email in your name. Your system learns about the cancellation by webhook (subscription.canceled) and can revoke access at the end of the term.

Confirmation email · Example
What the cancellation confirmation says
From: Example Software GmbH
Cancellation confirmed, your subscription with Example Software GmbH
Hello,

we have received your cancellation and confirm it with this email.

Declaration: cancellation at the end of the current billing period
Contract: Team plan with Example Software GmbH
Received: 3 October 2026 at 14:05 (German time)
Contract ends: 31 October 2026

No further charges will be made after the contract ends.

Please keep this email as proof.
Wording from the English product email, with made-up example values. The details follow § 312k(4) BGB: content of the cancellation, date and time received, contract end.
Cancellation in the portal · Example
From the button to the confirmation with date and time
1 · Portal page
Cancel contract
Opens the confirmation directly below.
2 · Confirmation
Do you want to submit your cancellation now? It will be binding.
Confirm cancellation
Cancel
3 · Confirmation to save
Your cancellation
Declaration
Cancellation at the end of the current billing period
Contract
Team plan
Contract ends
31 October 2026
Received
3 October 2026 at 14:05 (German time)
Print or save confirmation
The prompt in step 2 contains only the question and the two buttons. The confirmation in step 3 lists the declaration, contract, seller, receipt with date and time, contract end, and the email address for the copy (excerpt).

Where your customers find the cancellation

Subscribers reach the portal in three ways:

Ways into the portal
Three ways to the subscription page, none needs a password
Confirmation email
The email sent when the subscription starts contains a personal link: "You can manage or cancel your subscription anytime here". It opens exactly this subscription, without a login.
After purchase
The confirmation page in the checkout shows "Manage subscription". In the same browser, the button leads straight into the subscription once, and later to a sign-in with an email code.
Your cancellation link
Under Products you copy the link konto.rechnungskit.de/subscription for each subscription plan and put it behind your "Verträge hier kündigen" button, in your terms and conditions or in your customer area.
Through the general link, the customer enters their email address and the reference from the confirmation email and receives their personal link by email.

What you take care of yourself

Rechnungskit provides the portal with cancellation, withdrawal, a confirmation to save and confirmation emails. You add the cancellation button on your own website yourself: a clearly visible "Verträge hier kündigen" button that leads to your cancellation link, for example in the footer and in the customer area of your app. Check with your legal advisor whether this route is enough for your website, because through the general link the customer only reaches the cancellation after receiving an email with their personal link.

With Stripe Billing or your own code

If you bill subscriptions with a different tool, such as Stripe Billing, a subscription plugin or your own code, you check each building block yourself:

  • A "Verträge hier kündigen" button on the website, permanently available and directly and easily accessible (§ 312k(2) BGB, German)
  • A confirmation page that asks only for the details required by law and shows nothing else (§ 312k(2) sentence 3 BGB, German)
  • A "jetzt kündigen" button that actually submits the cancellation (§ 312k(2) sentence 3 no. 2 BGB, German)
  • Saving the declaration with date and time for the customer (§ 312k(3) BGB, German)
  • Immediate confirmation in text form with content, time of receipt and contract end (§ 312k(4) BGB, German)
  • Since June 19, 2026, also the withdrawal button for the withdrawal period (§ 356a BGB, German)

With Rechnungskit, the portal, cancellation and withdrawal are part of the subscription checkout, together with the e-invoice for every period and the cancellation invoice (Storno) when a subscription is withdrawn. E-invoicing for SaaS shows what that looks like for software subscriptions. Seats, add-ons and plan changes are covered in subscription billing.

FAQ

No. § 312k(1) BGB (German) only covers contracts with consumers. If you only contract with businesses and enforce that in your ordering process, you are not covered. If private individuals can order too, the obligation applies to those contracts.
Read more
Guide E-invoicing for B2C in Germany: does the mandate apply to online shops? Guide E-invoicing in Germany: the mandate explained for founders Guide Invoicing in a foreign currency in Germany: which exchange rate applies? (ECB, DATEV, OSS) Guide GoBD explained: principles, retention and what they mean for your invoices Guide Small-amount invoices in Germany (§ 33 UStDV): when the buyer's address can be left out Guide E-invoicing for small businesses in Germany (Kleinunternehmer): duties, exemptions, thresholds 2026 Guide The date of supply on German invoices: shipping date or payment date? Guide Leitweg-ID: what it is, how it is structured and how it gets onto the invoice Guide The OSS scheme explained: the €10,000 threshold, registration and an example Guide Deferred revenue for SaaS and online courses in Germany: when a pRAP is required Guide Proforma invoices in Germany: what they are for and why they are not invoices Guide Deferred revenue in German accounting (pRAP): definition, bookings and an example Guide Changing the billing address on a German invoice afterward: is it possible? (without a cancellation) Guide Correcting an invoice in Germany: which route for which error? Guide Server-side tracking for Meta: Conversions API with a lean consent bar Guide Shopify gift cards in Germany: gift card, discount code and store credit for VAT Guide Shopify invoices in Germany: what Shopify does, what is missing, what applies from 2027 Guide Shopware invoices: what Shopware 6 does on its own and what is missing Guide Stripe DATEV export: getting Stripe payments into DATEV as a booking batch Guide Booking Stripe fees in Germany: clearing account, reverse charge and Stripe Technology Europe Ltd Guide Stripe Invoicing in Germany: creating invoices, pricing and e-invoicing Guide Stripe invoices with payment terms as e-invoices: bank transfer to the Stripe IBAN Guide Stripe invoices in Germany: what Stripe Invoicing and Billing do, what is missing, and what applies from 2027 Guide Shipping costs and VAT in Germany: 7%, 19% or tax-exempt? Guide The German withdrawal button (§ 356a BGB): mandatory since June 19, 2026 Guide WooCommerce DATEV export: options, file format and account mapping Guide WooCommerce invoices in Germany: plugins, mandatory details, e-invoicing Guide XRechnung vs ZUGFeRD: the XRechnung format explained Guide Payment terms on invoices in Germany: rules, due date calculation and wording Guide ZUGFeRD explained

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.

Every invoice automatically as a valid e-invoice.

Connect your payment provider and we take care of format, validation and archive. Start for free in test mode.

Try it now
de en