gRDV Cancellation & Contract Termination

Descriere

gRDV Cancellation & Contract Termination provides two separate public workflows without requiring WooCommerce or another shop system:

  • an electronic cancellation function with popup or standalone form;
  • a public contract termination button and direct confirmation page.

Cancellation shortcodes:

  • [grdv_widerruf_button] follows the globally configured popup or page behavior;
  • [grdv_widerruf_button mode="popup"] explicitly opens the accessible popup;
  • [grdv_widerruf_button mode="page"] explicitly links to the configured cancellation page;
  • [grdv_widerruf_form] renders the cancellation form on a page.

Contract termination shortcodes:

  • [grdv_kuendigung_button] renders the configurable public cancellation link;
  • [grdv_kuendigung_form] renders the complete confirmation form on one public page.

The contract termination form captures the termination type, reason for an extraordinary termination, identifying data, contract identification, and requested end date. The public Verträge hier kündigen and final jetzt kündigen labels remain fixed. After submission, the plugin stores the declaration with a reference and server-side timestamp, immediately shows a receipt, offers a permanent text download, and sends receipt emails to the consumer and operator.

The Stripe customer portal is not required for submitting a cancellation. Operators can match and process the recorded declaration manually or add a separate server-side Stripe integration later.

This plugin is only a technical aid, not legal advice. Its supplied texts and workflows are general suggestions and carry no guarantee of completeness, currency, fitness for a particular business model, or legal compliance. Have the complete production setup reviewed by qualified counsel before use and after relevant legal changes. The website operator remains responsible for configuration, placement, privacy information, delivery monitoring, retention, deletion, and processing. This notice does not limit liability that cannot legally be excluded.

Privacy and data handling

Submitted declarations are stored in dedicated tables in the site’s own WordPress database. Depending on the form, this includes the name, email address, contract information, optional message or cancellation reason, requested end date, submission time, receipt content, and mail-transport status. Version 2.2 and later do not record the submitting IP address or browser user-agent for new declarations.

The plugin sends confirmation messages through the site’s configured WordPress mail transport to the submitting person and the configured operator address. It does not contact a gRDV service, analytics provider, CDN, payment provider, or other external API. Website operators remain responsible for documenting this processing, defining retention and deletion procedures, securing WordPress and email delivery, and responding to data-subject requests.

Uninstalling the plugin permanently deletes its settings and both custom database tables, including all stored cancellation and contract termination records. Export any records that must be retained before uninstalling.

Capturi ecran

Instalare

  1. Upload the plugin folder to /wp-content/plugins/.
  2. Activate the plugin in WordPress.
  3. Open gRDV Cancellation & Contract Termination in the WordPress admin.
  4. Choose popup or standalone-page behavior in the cancellation settings. For a standalone page, create and publish a public page with [grdv_widerruf_form].
  5. Create and publish a public cancellation page with [grdv_kuendigung_form].
  6. Enter both public page URLs in the respective settings.
  7. Place [grdv_kuendigung_button] in a permanently available location such as the global footer.
  8. Test storage, browser receipts, downloads, and email delivery.

Întrebări frecvente

Does this require WooCommerce?

No. The plugin is intentionally independent from shop and payment systems.

Does cancellation require a WordPress or Stripe login?

No. The cancellation button and confirmation page are designed to be publicly accessible.

Does the plugin cancel subscriptions automatically in Stripe?

No. Version 2.0 records the cancellation independently from Stripe so a failed customer match cannot prevent receipt of the declaration. A server-side Stripe processing integration can be added separately.

Which cancellation button labels can I edit?

The public label Verträge hier kündigen and final confirmation label jetzt kündigen are fixed to prevent accidental non-compliant wording.

Is this legally compliant by itself?

No plugin can guarantee legal compliance for every contract and business model. Have the final setup and processing procedure reviewed by qualified counsel.

Is it translatable?

Yes. Interface strings use the grdv-widerruf text domain. Configurable text and page URLs can be maintained separately for German (informal and formal), English (US and UK), and every additional language enabled in WPML directly in the plugin settings. Design, delivery, and technical settings remain shared across languages; WPML String Translation is not required for these fields. Additional languages initially use the English source defaults until their content is customized.

Recenzii

Nu există nicio verificare pentru acest modul.

Contributori și dezvoltatori

„gRDV Cancellation & Contract Termination” este un software open-source. La acest modul au contribuit următoarele persoane.

Contributori

„gRDV Cancellation & Contract Termination” a fost tradus în 2 locale. Mulțumim traducătorilor pentru contribuția lor.

Tradu „gRDV Cancellation & Contract Termination” în limba ta.

Te interesează dezvoltarea?

Răsfoiește codul, vezi depozitarul SVN, sau abonează-te la jurnalul de dezvoltare prin RSS.

Istoric modificări

2.2.1

  • Declared and verified compatibility with WordPress 7.1.

2.2.0

  • Added language-specific content settings for German (informal and formal), English (US and UK), and additional active WPML languages, including automatic migration of existing values.
  • Added prominent legal-review and no-guarantee notices to the WordPress administration.
  • Locked the public and confirmation labels to the statutory German wording.
  • Made the consumer withdrawal receipt mandatory.
  • Added the privacy-policy link to the cancellation form.
  • Stopped recording IP hashes and browser user-agent strings for new declarations.
  • Limited frontend assets to pages that actually render a plugin shortcode.
  • Removed obsolete manual translation loading for WordPress.org language packs.
  • Redesigned the administration lists and record details for clearer review and management of declarations and cancellations.

2.1.0

  • Added a global setting that lets the withdrawal button open the popup or link to the standalone withdrawal page.
  • Kept mode="popup" and mode="page" as per-shortcode overrides.
  • Shows the standalone withdrawal page URL only when page behavior is selected.
  • Added configurable outline width, color, and offset for the public and confirmation buttons in both workflows; a width of 0 disables the outline.
  • Added optional CSS classes and native hover movement controls for all public and confirmation buttons without overriding external theme transitions by default.

2.0.4

  • Fixed a fatal error on the overview page caused by an inaccessible cancellation table-name method.

2.0.3

  • Removed manual translation loading in favor of the WordPress.org language-pack mechanism.
  • Clarified scanner annotations for protected public receipt links and hardened settings request handling.
  • Normalized internal database table handling for repository checks.
  • Replaced stored withdrawal IP addresses with salted one-way hashes and documented all submitted data.

2.0.2

  • Added complete required-field markings and a compact required-fields note.
  • Restricted specifically requested end dates to today or the future in browser and server validation.
  • Clarified that the admin email status records acceptance by the WordPress mail transport, not recipient delivery.

2.0.1

  • Added independent styling controls for the public cancellation and final confirmation buttons.
  • Added a one-click action to copy both button styles from the withdrawal settings.
  • Changed the default public label to Vertrag kündigen.
  • Hardened the standalone cancellation form layout against Divi theme overrides and improved conditional-field UX.
  • Removed the duplicate Settings menu entry and renamed the main admin menu to match the plugin.

2.0.0

  • Renamed the plugin to gRDV Widerruf & Kündigung.
  • Added public cancellation button and standalone confirmation form shortcodes.
  • Added ordinary and extraordinary cancellation data, contract identification, and requested end date.
  • Added a separate cancellation table, admin list, and settings page.
  • Added immediate browser receipt, protected permanent text download, and mandatory customer receipt email.
  • Added hashed IP storage instead of storing a raw address for cancellations.
  • Added a standalone withdrawal form and page-link mode while retaining the popup mode.
  • Added a combined admin overview and preserved existing withdrawal data and shortcodes.

1.0.0

  • Renamed the plugin to gRDV Widerruf and introduced the canonical withdrawal shortcode.
  • Redesigned the settings screen and retained previous options and records.

0.1.0

  • Initial draft with withdrawal shortcode, settings, storage, and email notifications.