{"id":327756,"date":"2026-08-12T18:19:48","date_gmt":"2026-08-12T18:19:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/simple-booking\/"},"modified":"2026-08-13T15:48:01","modified_gmt":"2026-08-13T15:48:01","slug":"sinnvoll-booking-flow","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/sinnvoll-booking-flow\/","author":13881692,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.11.8","stable_tag":"1.11.8","tested":"7.0.4","requires":"6.5","requires_php":"8.1","requires_plugins":null,"header_name":"sinnvoll Booking Flow","header_author":"sinnvollF\u00dcHREN","header_description":"Seminar and event booking forms for trainers, coaches, and education providers.","assets_banners_color":"ffffff","last_updated":"2026-08-13 15:48:01","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/sinnvoll-fuehren.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":53,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.11.7":{"tag":"1.11.7","author":"rmiarka","date":"2026-08-12 18:19:35"},"1.11.8":{"tag":"1.11.8","author":"rmiarka","date":"2026-08-13 15:48:01"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3643871,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3643871,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3643871,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3643871,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.11.7","1.11.8"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3643871,"resolution":"1","location":"assets","locale":"","width":688,"height":332},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3643871,"resolution":"2","location":"assets","locale":"","width":1440,"height":900},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3643871,"resolution":"3","location":"assets","locale":"","width":1440,"height":900}},"screenshots":{"1":"The booking widget your visitors see \u2014 dates, price, remaining places and the booking form.","2":"Manage all your events with status, capacity and bookings at a glance.","3":"The attendee list of an event \u2014 who booked what, with CSV export."}},"plugin_section":[],"plugin_tags":[27868,269,1486,603,15480],"plugin_category":[40,58],"plugin_contributors":[275394],"plugin_business_model":[],"class_list":["post-327756","plugin","type-plugin","status-publish","hentry","plugin_tags-attendees","plugin_tags-booking","plugin_tags-events","plugin_tags-registration","plugin_tags-rsvp","plugin_category-calendar-and-events","plugin_category-user-management","plugin_contributors-rmiarka","plugin_committers-rmiarka"],"banners":{"banner":"https:\/\/ps.w.org\/sinnvoll-booking-flow\/assets\/banner-772x250.png?rev=3643871","banner_2x":"https:\/\/ps.w.org\/sinnvoll-booking-flow\/assets\/banner-1544x500.png?rev=3643871","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/sinnvoll-booking-flow\/assets\/icon-128x128.png?rev=3643871","icon_2x":"https:\/\/ps.w.org\/sinnvoll-booking-flow\/assets\/icon-256x256.png?rev=3643871","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/sinnvoll-booking-flow\/assets\/screenshot-1.png?rev=3643871","caption":"The booking widget your visitors see \u2014 dates, price, remaining places and the booking form."},{"src":"https:\/\/ps.w.org\/sinnvoll-booking-flow\/assets\/screenshot-2.png?rev=3643871","caption":"Manage all your events with status, capacity and bookings at a glance."},{"src":"https:\/\/ps.w.org\/sinnvoll-booking-flow\/assets\/screenshot-3.png?rev=3643871","caption":"The attendee list of an event \u2014 who booked what, with CSV export."}],"raw_content":"<!--section=description-->\n<p>sinnvoll Booking Flow lets you add seminar and event booking forms to any WordPress page or post with a shortcode. Visitors register for your events, you manage attendees and bookings from the admin, and everyone gets automatic confirmation emails.<\/p>\n\n<h4>Key features<\/h4>\n\n<ul>\n<li><strong>Booking widget<\/strong> for any event via <code>[sinnvoll_bf_widget id=\"EVENT_ID\"]<\/code><\/li>\n<li><strong>Event lists<\/strong> by IDs or timeframe via <code>[sinnvoll_bf_event_list]<\/code><\/li>\n<li><strong>Multiple attendees per booking<\/strong> with per-attendee details<\/li>\n<li><strong>Ticket capacity<\/strong> and minimum-tickets handling per event<\/li>\n<li><strong>Configurable confirmation emails<\/strong> with placeholders (booker, attendee, event, booking details) and multi-language templates<\/li>\n<li><strong>Admin management<\/strong> of events, bookings and attendees, including resend of confirmation emails<\/li>\n<li><strong>CSV export<\/strong> of bookings and attendees<\/li>\n<li><strong>GDPR tools<\/strong>: data export and erasure integration with WordPress Privacy, plus optional automatic anonymisation of old records<\/li>\n<li><strong>Cancellation policy<\/strong> and statutory right-of-withdrawal (revocation) form via shortcode<\/li>\n<li><strong>Spam protection<\/strong> for booking submissions (keyword\/domain filters, minimum submit time)<\/li>\n<li><strong>Custom frontend texts<\/strong> in multiple languages<\/li>\n<\/ul>\n\n<h4>Shortcodes<\/h4>\n\n<ul>\n<li><code>[sinnvoll_bf_widget id=\"EVENT_ID\" lang=\"de|en\"]<\/code> \u2014 full booking widget for one event<\/li>\n<li><code>[sinnvoll_bf_button id=\"EVENT_ID\"]<\/code> \u2014 just the \"book\" button<\/li>\n<li><code>[sinnvoll_bf_event_list timeframe=\"future|past|all\"]<\/code> \u2014 list of events<\/li>\n<li><code>[sinnvoll_bf_confirmation]<\/code> \u2014 booking confirmation messages on your success page<\/li>\n<li><code>[sinnvoll_bf_revocation_form]<\/code> \u2014 statutory right-of-withdrawal form<\/li>\n<li><code>[sinnvoll_bf_cancellation_policy]<\/code> \u2014 outputs your cancellation policy text<\/li>\n<\/ul>\n\n<h4>More power with sinnvoll Booking Flow Pro<\/h4>\n\n<p>Need more? <a href=\"https:\/\/sinnvoll-fuehren.com\/sinnvoll-booking-flow\/\">sinnvoll Booking Flow Pro<\/a> adds coupons, PDF certificates for attendees, waiting lists, multiple ticket types per event, bookable add-ons, bulk emails to attendees, a visual form editor, Excel export and calendar invitations. One-time purchase, 12 months of updates and support included.<\/p>\n\n<h3>Privacy<\/h3>\n\n<p>This plugin processes personal data as part of running bookings on your site.\nAll data stays in your WordPress database; the plugin makes no calls to\nexternal services. What it stores:<\/p>\n\n<ul>\n<li><strong>Booking data<\/strong> you collect through the form (names, email addresses and any\nfields you configure), for as long as you keep the bookings.<\/li>\n<li><strong>Consent log:<\/strong> when a visitor submits a booking, the plugin records which\nconsent checkboxes were accepted together with a timestamp, the visitor's IP\naddress and browser user agent, as proof of consent. The optional data\nretention settings anonymise the IP address after the configured period.<\/li>\n<li><strong>Audit log:<\/strong> administrative changes to bookings and attendees are recorded\nwith the acting user, IP address and user agent, so changes remain traceable.<\/li>\n<li><strong>Rate limiting:<\/strong> public booking submissions are counted per client IP using\na short-lived, hashed counter (a transient). No raw IP is persisted for this\npurpose and no cookie is involved.<\/li>\n<li><strong>Security cookie:<\/strong> see the FAQ above for the <code>sinnvoll_bf_cid<\/code> cookie.<\/li>\n<\/ul>\n\n<p>The plugin integrates with WordPress' personal-data export and erasure tools\n(Tools \u2192 Export\/Erase Personal Data) and registers suggested wording in the\nPrivacy Policy editor (Settings \u2192 Privacy). Reviewing and publishing your\nsite's privacy notice remains your responsibility.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to <code>\/wp-content\/plugins\/sinnvoll-booking-flow<\/code>, or install through the WordPress Plugins screen directly.<\/li>\n<li>Activate the plugin through the \"Plugins\" screen in WordPress.<\/li>\n<li>Go to <strong>sinnvoll Booking Flow<\/strong> in the admin menu to create your first event.<\/li>\n<li>Add a booking widget to any page with <code>[sinnvoll_bf_widget id=\"EVENT_ID\"]<\/code> (the event ID is shown on the event list).<\/li>\n<li>Configure confirmation emails, sender details and texts under <strong>sinnvoll Booking Flow \u2192 Settings<\/strong>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20do%20i%20show%20a%20booking%20form%20on%20a%20page%3F\"><h3>How do I show a booking form on a page?<\/h3><\/dt>\n<dd><p>Create an event in the admin, note its ID, then place <code>[sinnvoll_bf_widget id=\"EVENT_ID\"]<\/code> on any page or post.<\/p><\/dd>\n<dt id=\"can%20visitors%20register%20more%20than%20one%20attendee%3F\"><h3>Can visitors register more than one attendee?<\/h3><\/dt>\n<dd><p>Yes. A single booking can contain multiple attendees, each with their own name and email.<\/p><\/dd>\n<dt id=\"does%20it%20send%20confirmation%20emails%3F\"><h3>Does it send confirmation emails?<\/h3><\/dt>\n<dd><p>Yes. Confirmation emails are sent automatically and are fully configurable, including placeholders and multiple languages.<\/p><\/dd>\n<dt id=\"does%20it%20help%20with%20gdpr%3F\"><h3>Does it help with GDPR?<\/h3><\/dt>\n<dd><p>The plugin provides tools that support GDPR workflows: it integrates with WordPress' personal-data export and erasure tools and offers optional automatic anonymisation of old records. It does not make your site compliant on its own \u2014 compliance always depends on how you configure and operate your site, your legal texts, and your own processes.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20set%20any%20cookies%3F\"><h3>Does the plugin set any cookies?<\/h3><\/dt>\n<dd><p>It sets one cookie, <code>sinnvoll_bf_cid<\/code>, only when a booking widget or revocation\nform that needs a security token is rendered for a logged-out visitor. It stores\na random pseudonymous identifier \u2014 it contains no booking data and is not used\nfor tracking \u2014 and serves solely to tie the form's security nonce to the\nvisitor's browser, hardening the public booking form against cross-site request\nforgery and automated abuse. It is designed to function as a strictly necessary\nsecurity cookie, but this plugin cannot make legal determinations for your site\n\u2014 you are responsible for assessing your local consent and disclosure\nrequirements and listing the cookie in your cookie\/privacy notice. The plugin\nregisters suggested text in WordPress' Privacy Policy editor (Settings \u2192\nPrivacy) to help with this.<\/p><\/dd>\n<dt id=\"in%20which%20format%20can%20i%20export%20bookings%3F\"><h3>In which format can I export bookings?<\/h3><\/dt>\n<dd><p>Bookings and attendees can be exported as CSV, which opens in any spreadsheet application.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.11.8<\/h4>\n\n<ul>\n<li>New: Event cards show \"Price from:\" with the lowest ticket price when an event has multiple ticket types with different prices (translatable via the Texts screen).<\/li>\n<li>Changed: \"Hide tax\" on a ticket type now means final price \u2014 the booking costs exactly the displayed amount; no tax is calculated or stored for such tickets.<\/li>\n<li>Changed: The price summary in the booking form collapses to a single Total line when there is no tax to show (0% rate or final-price tickets); the full breakdown returns when a taxed ticket type is selected.<\/li>\n<li>Fixed: Hidden price-summary lines were still visible due to a CSS specificity conflict.<\/li>\n<\/ul>\n\n<h4>1.11.7<\/h4>\n\n<ul>\n<li>Fixed: Status badges in the attendee and booking lists (and the CSV export) now show translated labels instead of the raw English status value.<\/li>\n<li>Fixed: The admin toolbar above attendee\/booking lists no longer overlaps the table header when its controls wrap onto a second line.<\/li>\n<li>Fixed: Setting attendees to booked\/cancelled\/missed now shows a matching success notice instead of \"Attendee moved to trash.\"; German trash notices now say \"Papierkorb\".<\/li>\n<\/ul>\n\n<h4>1.11.6<\/h4>\n\n<ul>\n<li>New: Guest emails now follow the language the booking was made in. The booking form language is stored with each booking; confirmation and cancellation emails use it, falling back to the event language and then the site language. Events gained a Language setting (default: site language), and the widget renders in the event's language when the shortcode has no lang attribute. Admin notifications intentionally stay in the site language.<\/li>\n<\/ul>\n\n<h4>1.11.5<\/h4>\n\n<ul>\n<li>Initial release on the WordPress plugin directory.<\/li>\n<\/ul>","raw_excerpt":"Seminar and event booking forms for trainers, coaches, and education providers.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/327756","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=327756"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/rmiarka"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=327756"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=327756"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=327756"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=327756"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=327756"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=327756"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}