What has changed
What is new
This page lists what we have improved in termin.email. Every item is live and running. Nothing is announced here in advance.
-
Fixes from the eighth review round
- Appointment types that can only be booked with a single-use link confirm the booking at once. An email confirmation no longer applies there, because a booking that is never confirmed would have used up the link without anyone noticing.
- A reschedule now checks capacity and the weekly and monthly limits correctly even when someone else books the last place at the same moment.
- A vacation may last exactly 366 days. The form rejects special hours on a day that already lies in a vacation, and likewise a block over a day with special hours, instead of listing ineffective entries as active. The QR code page warns you while your booking page is not yet reachable.
- The backup test database is emptied right after every restore test, so deleted tenants do not stay there longer than promised. Three statements are corrected: the shortened IP address is kept for up to 48 instead of 24 hours, the diagnostic log for four days at most instead of 72 hours, and for the CalDAV integration we say which server it has been tested against so far.
-
Booking rules, single-use links, holidays and time off
- For each appointment type you set up to how many hours before the start guests can cancel or reschedule on their own. After that only you can cancel. Guests see the deadline before they book and again in their confirmation email.
- Besides the limit per day there are now limits per week and per month. They count in your time zone, Monday to Sunday and per calendar month.
- An appointment type can be hidden, so it is not listed on your profile page or in search engines. Or it can be bookable through single-use links only: each link is good for exactly one booking, for example a job interview.
- Every public appointment type and your profile page now have a QR code as an SVG for printing.
- Under availability you choose your German state, and its public holidays are blocked automatically. Time off goes in as one entry from one date to another.
-
Booking flow meets WCAG 2.2 AA
- Texts you write yourself now carry the language set for your account: names and descriptions of your appointment types, questions in the booking form, polls, legal notice and privacy policy. If a guest views your booking page in English, a screen reader still reads your German texts in German.
- That closed the last gap. Every criterion of levels A and AA from WCAG 2.2 is met by the public booking flow or does not apply to it. The assessment report gives the rating for each one.
- The confirmation after clicking the link in the email now only states the date and time. The appointment type is listed directly below in the overview.
-
Accessibility also assessed against WCAG 2.2
- The accessibility statement now also assesses the six new criteria at levels A and AA from WCAG 2.2. We checked them on 5 October 2026 in the browser and in the source code: four are met, two do not apply to the booking flow. WCAG 2.1 remains the legally decisive standard for now, but the new version of EN 301 549 already points to WCAG 2.2.
- Checkboxes and radio buttons in the forms are now 24 by 24 pixels instead of 18. That makes them easier to hit on touch screens.
-
Data export and deletion after the contract ends
- As the owner you can download all data of your account as a JSON file under Settings: user accounts, event types, availability, bookings including the details your guests entered, polls, waiting lists, connections and statistics. Passwords and access keys are not included.
- When a contract ends we keep the data available for export for 30 days. After that we delete the account with all its data and the logo. The encrypted backups that still contain it are gone no later than 15 days after that.
- termin.email is aimed exclusively at businesses, not at consumers. The conditions on the pricing page now say so as well.
-
termin.email is released
- The application is generally available. You can use termin.email for real customer appointments from now on.
- Before the release we walked a customer's whole path against the running application: creating an event type, setting availability, a guest booking, rescheduling, cancellation and erasure under Art. 17 GDPR.
- We checked the confirmation email in the recipient's mailbox: it carries a DKIM signature, the appointment as a calendar file and the link for rescheduling or cancelling.
- Delivered to a mailbox at a large provider, the confirmation email passes all three checks against forged senders (SPF, DKIM and DMARC). That decides whether your guests find the message in their inbox.
-
Calendar, staff changes and email sending secured
- Events in your connected calendar now also block times offered across midnight. Before, a double booking was possible there in rare cases.
- When you deactivate a staff member, user management shows whether their calendar connection is still needed for pending deletions, and you can remove it right away.
- If your own mail server hangs, your emails temporarily go out through termin.email, and your settings tell you so. Other customers' emails no longer wait because of it.
- Checking an erasure under Art. 17 GDPR still shows later which calendar copies are open. Your accessibility statement names the platform's known limitation.
-
Withdraw invitations
- A pending invitation can be withdrawn, for example after a mistyped address. The link stops working and the seat in your plan's user limit is free again straight away.
- When the user limit is reached, the application now tells you how to proceed: deactivate an account, withdraw an invitation or ask us for a higher limit.
-
Invitations, GDPR erasure and calendar sync more reliable
- An expired or lost invitation can be sent again; the old link stops working. Anyone who comes via "Forgot password" receives a new invitation. Reactivating an account respects the plan's user limit.
- Erasure under Art. 17 GDPR only counts a copy in the host's calendar as cleaned up once that has actually worked. It tells you explicitly about failed and still pending copies.
- If an appointment is cancelled or moved while the calendar sync is running, no outdated copy stays behind in the host's calendar. A calendar connection with an expired password can now be replaced.
- For availability that runs past midnight, the calendar only shows times that can actually be booked. The rebooking link in a cancellation keeps the guest's language, the waiting list link keeps their time zone.
- Slow webhook targets of one customer now hold up delivery to other customers only briefly, and test bookings trigger no webhooks. If the database fails, the alert email still goes out.
-
Availability, cover arrangements and status page sharpened
- A team member who has not set any availability no longer offers times in a team appointment. Before that, the application quietly assumed Monday to Friday, 9 to 17. The form now tells you who that applies to.
- The cover arrangement list and the booking overview name the appointment type even when a colleague created the booking. Whoever takes over a cover arrangement now sees what they are deciding about.
- A withdrawn email no longer goes out, even if the sending run had already picked it up. The status page no longer turns red because a guest mistyped their address.
- Design changes now reach you straight away. Before that, your browser could keep an older version of the stylesheet for days.
-
Polls, rescheduling and reminders brought in line
- A public scheduling poll stops accepting votes once its creator’s account is deactivated. The owner can now open and close it instead of only seeing it in the list.
- When an appointment type is switched off, the management page no longer offers rescheduling and tells the guest why. Before that, they went in circles between the calendar and a "slot just taken" message.
- When an appointment is rescheduled or handed to a stand-in, termin.email withdraws a reminder that was already queued. Guests no longer receive it with the old time.
- If you disconnect several calendar connections one after another, the application now records every copy left behind separately. A deletion request then names each of them.
- The accessibility statement now shows for each criterion when it was checked, instead of citing one date for everything.
-
More reliable reminders, cover arrangements and team appointments
- Appointment reminders now go out even while a host’s connected calendar is unreachable. Before that, a broken calendar connection could silently swallow the reminder.
- Cancelling or transferring several appointments at once through the cover arrangement no longer touches appointments that have already taken place. The list only shows what is still ahead.
- A team appointment stays bookable when the colleague who created it leaves. As long as one active team member offers times, the shared link keeps working.
- Saving an event type keeps team members the person saving could not decide about. Before that, a member could silently drop the owner from the team.
- The embedded booking widget now shows an error message inside the frame instead of an empty white area. The video room link opens in the whole window.
- The contrast check for your brand colour now measures against the text that actually sits on the button. We also darkened three text elements on our own pages so they clear the threshold.
-
Data protection, permissions and accessibility sharpened
- When an appointment is cancelled, termin.email withdraws the reminder that was already queued. Guests no longer receive a reminder for an appointment that no longer exists.
- Disconnecting a calendar connection now says plainly that the events already written stay in your own calendar together with the guest data. A later deletion request names those copies instead of reporting success.
- Invitations to scheduling polls now appear in the Article 15 report and are removed with an Article 17 deletion.
- User management is now limited to owners. The navigation shows each role only the pages it may actually open.
- Inside the embedded booking widget, rescheduling and cancelling now work within your own website. Before that, the frame stayed empty.
- Deactivated hosts disappear from public scheduling straight away. Guests no longer see times that nobody can attend.
- The accessibility conformance statement again names the real contrast values of the current design, and a test now keeps the statement and the stylesheet together.
-
Teams, administration and polish
- Owners see and edit all appointment types and bookings of their business, not only the ones they created themselves. Members still see only their own.
- Customer area and administration have a new header: who is signed in, which role and which business is always visible at the top. The navigation is an open bar; the collapsible menu is reserved for narrow screens.
- All tables share one compact action bar. The red button for deleting or deactivating is outlined and easy to spot.
- The website now has an icon for the browser tab, bookmarks and the iPhone home screen.
- The sign-in page states that it serves customers and the operator alike. A changed colour or a new logo now shows up immediately in the embedded booking window too.
-
New visual design, instant confirmation, monitored operation
- The website has a new design: large clear headings, calm colours, more space. Both typefaces are served from our own server. Nothing is loaded from third parties, fonts included.
- The confirmation link in the email confirms the appointment straight away. A second click is no longer needed. The page then confirms the booking with date and appointment type.
- The status page states for every area when it was last really checked, not just whether it responds.
- A watchdog calls the application every five minutes through the real address, that is through name resolution, certificate and web server. A new fault triggers an alert email on the next run at the latest, the same cause at most once a day. If the whole server or its mail server goes down, it can no longer report anything itself.
- The daily encrypted backup is additionally copied to a second storage location elsewhere. A restore test runs once a month.
- In every form the checkbox sits next to its text again, including on narrow screens.
- The application has exactly one address. Older spellings redirect permanently to termin.email, so saved links keep working.
-
Four findings from our own test against the running application
- Switching the language in the booking form led nowhere after an error message. The selected time and time zone are now kept.
- In the "please confirm" email the sentence about the deadline came after the link. It now comes before it, where it is read.
- A changed colour or a new logo could be up to an hour out of date in the browser. Both now carry a version and appear immediately.
- The API now answers unknown paths and wrong methods in the machine readable error format instead of an HTML page.
-
Public pages, accessibility conformance report, status page
- New public pages about features, pricing, frequently asked questions and contact.
- Written WCAG 2.1 AA conformance statement rating all 50 criteria individually, available as its own page.
- Public status page and daily backups with a monthly restore test.
Whether everything is running right now is shown by the real function checks on the status page. System status