Client portal with slot booking / calendar integration

Hi all - I’m new to coda and loving the possibilities. This is what I would like to get to:

Client portal docs where clients can see current job statuses etc and make comments and also (and this is the bit I’m struggling with) see our availability for new projects and book slots for new projects.

I think I can utilize cross docs to share the data etc, but I dont know the best solution for the booking part. Any ideas?

Ideally they would be able to book ‘slots’ (say 2 available per working day) and not specific time blocks, which I think I could use Calendly for. But I wonder if a coda button could be programmed to launch a form?

Something like “Next available slot is Monday 28th February - Click here to book”. And then this would then roll on button to give the next slot /working day once the form is submitted?

Alternatively I could embed a calendar and provide limited visibility to show free slots - but this would then require more manual work.

Anyone think this is possible or have any better ideas?

hi @Chris_daddy , most and maybe all of this might be possible with some effort. People like @Federico_Stefanato are well placed to fill out the tech requests.

Two other elements you might want to consider:

  1. each user has to create a Coda Profile to track their behaviour in the doc
  2. if docs contain sensitive information, you might come accross issues for any doc can be duplicated by any other Coda user

best, Christiaan

Some thoughts:

  • If using the calendar view, it will be easier to manage full days rather than having mulitple slots per day.
  • If you let them book full days it could be as easy as letting them create new events on the calendar as the input/request method. New events could have a status (and corresponding conditional formatting colour) for “Requested” and eventually you change it to “Declined” or “Confirmed”
  • Buttons to pop up forms can be a good way to go (and you can pre-fill visible and hidden fields for them like their clientId, etc)

Thanks @Christiaan_Huizer that’s good to know. I thought it must be possible and look forward to hearing @Federico_Stefanato 's thoughts.

Re 1. I thought that actually I can create a login for the uses and just provide the username and password for them, which they can save in browser to make it slick their end.
Re. 2. Yes this would potentially be an issue. I would have cross doc tables filtered out on the master doc side, so I dont know if they would then be able to add another cross doc reference to a different table? :thinking:

Thanks. Great ideas. I need to play further with the calendar integration to see what’s possible there.

One caveat to the calendar-as-input-method thing: users will think they can click on a date to create an event, but they need to click and drag (even if it’s only a 1-day event). My users haven’t found this functionality to be very discoverable, so I recommend giving them a button for it above the calendar view.

Alternatively maybe you have the events already created (slots, even), and then users can click on them to pop them open. Within them you have a button to “Claim” or “Request” or something

Re: user accounts, when creating accounts for users you will need to validate their emails; so either you need to create accounts for them on dummy email accounts you control, or involve them in the signup process.

1 Like

@Chris_daddy ,

regarding the user logic, the input of @Nick_HE as stated below is important :

Re: user accounts, when creating accounts for users you will need to validate their emails; so either you need to create accounts for them on dummy email accounts you control, or involve them in the signup process.

the cross doc logic with a source file that contains a table that already is set up based on users will do the job. As such any copied document only contains the info of the user. The filtering takes already place in the source file, not in the work doc. This in combination with a Team Plan could provide a solid basis for the Team plan permits locking docs and pages.

hope it helps, best, christiaan

1 Like

Hi @Chris_daddy ,

As far as I understood, you basically need a client-side document where your clients can book slots.

Why do you need a form at all?

If you need a recurring booking facility, then an “Assignment Engine” should be made (and this would be quite complicated…)

Anyway, as usual, I prefer starting with something concrete and see if it goes to the right direction thus I did a very simple client-side booking facility:

Please, tell me if this might work in your use-case.