In my opinion a Discourse plug-in is a good idea, versus having a separate platform for booking. This would be less complex for the end-user experience and is one less system to manage for our time-strapped @systems team.
Therefore, I would suggest we build a proof-of-concept plug-in to determine the feasibility of having a first-class booking tool built-in to Discourse. This is something that I would be personally willing to invest time in.
The Discourse tech stack being Ruby and Ember.js is a little unfortunate as these are technologies that are less popular in 2023. The documentation from Discourse on creating plug-ins seems rather limited too. However, I’d be willing to give it a good go!
If following the proof-of-concept we determine that it is not feasible [1], then (again, in my opinion) a third-party platform with SSO / OAuth integration would seem like a reasonable second chioce we could build a PoC for.
[1] My primary concerns with the feasibility of the plug-in approach are 1) the plug-in is prohibitively difficult to write, due to limitations of the Discourse plug-in API, etc. 2) breaking changes to the plug-in API making it more difficult to upgrade Discourse in general, 3) the limitations of the user experience having to fit into the Discourse UI.