Skip to content

Feature: Outlook does not treat Nextcloud Appointments .ics as a meeting invite (no Accept/Decline buttons) #647

@JohnsonJohnny

Description

@JohnsonJohnny

Description:
When using Nextcloud Appointments, the confirmation email includes an attached .ics file.
In Microsoft Outlook (Desktop and Outlook Web), this .ics is not recognized as a real meeting invitation.
Instead, Outlook treats it as a normal calendar file that can only be imported/added manually.

As a result, the recipient does NOT see the standard Outlook UI actions:

  • Accept
  • Tentative
  • Decline
    (and no automatic RSVP workflow)

This makes it hard to use Nextcloud Appointments with Outlook-based organizations, because users expect a "real meeting request" they can respond to directly in Outlook.

Observed behavior:

  • Email contains an attached .ics file
  • Outlook opens it as a calendar event / import action
  • No "Accept / Decline" buttons are shown
  • No RSVP is sent back

Expected behavior:
Outlook should detect the appointment as a proper meeting request, so the recipient can respond directly via:

  • Accept / Tentative / Decline
    and Outlook should handle the RSVP workflow.

Why this happens (likely root cause):
The generated ICS uses:

  • METHOD:PUBLISH
    which Outlook treats as a published calendar event, not an invitation (iTIP meeting request).

Additionally, the generated ICS does not include the recipient as an ATTENDEE with RSVP required.
Example from the exported ICS:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//IDN nextcloud.com//Appointments App | srgdev.com//EN
CALSCALE:GREGORIAN
METHOD:PUBLISH
BEGIN:VEVENT
SUMMARY:Meet XXX @ XXX Appointment
STATUS:CONFIRMED
DTSTART;TZID=Europe/Berlin:20260202T093000
DTEND;TZID=Europe/Berlin:20260202T100000
ORGANIZER;CN=XXX:mailto:XXX@XXX.de
ATTENDEE;CN=YYY;PARTSTAT=ACCEPTED;ROLE=REQ-PARTICIPANT:mailto:YYY@ZZZ.de
END:VEVENT
END:VCALENDAR

Notes:

  • METHOD:PUBLISH prevents Outlook from showing invitation actions (Accept/Decline)
  • ATTENDEE is set to the organizer itself and already marked as ACCEPTED
  • The actual recipient is not listed as an ATTENDEE with RSVP=TRUE / NEEDS-ACTION

Suggested fix / improvement:
Generate iTIP-compatible invites for recipients by using:

  • METHOD:REQUEST
  • Add the recipient as ATTENDEE with:
    • RSVP=TRUE
    • PARTSTAT=NEEDS-ACTION
  • Keep ORGANIZER as the person who is hosting the appointment

This should make Outlook treat the ICS as a meeting invite and show the Accept/Decline UI.

Environment:

  • Nextcloud Appointments (server-side email with .ics attachment)
  • Microsoft Outlook Desktop + Outlook Web
  • Timezone: Europe/Berlin

Impact:
Recipients on Outlook cannot respond properly to appointments.
This breaks the standard scheduling workflow for many enterprise users.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions