How we helped Introlab.me to
IntroLab is a network building company that connects clients to industry professionals. Clients (site users) can utilize the platform to browse a database of professionals and fine-tune their search with a variety of filtering options. They will then be able to schedule sessions – either digital or in person, depending on the offerings of the specific provider – and wait for the provider’s confirmation. Once confirmed, IntroLab will generate a meeting invite for a digital session or provide further details about meeting up.
Their vision was to develop a best-in-class, consumer-centric solution that ensures proper end-to-end management of complicated schedulinig probelms. Introlab aims to enable every young professional to understand the modern business world better and find a job that they are truly passionate about.
After a subsequent iterative phase of prototyping and testing, we built Introlabs Scheduling System. Consultants had to manage their availability. We had to implement a feature that would allow them to schedule available times for consulting sessions on a recurring schedule. They should be able include single available dates or exclude specific dates as well. Moreover, consultants and client might be in different timezones and the scheduler had to account for that that to avoid errors and false bookings.
We implemented a recurring date pattern. This is a serialized array of arrays which stores availability slots in a form like:
We store seven arrays, one for every day of the week. We use another table to store the bookings made for each consultant. We compare the available times against the bookings to get a list of available slots. The available slots are being printed to the front-end in a block format.
After the consultant has confirmed the appointment both parties get an invitation in their calendar to block this time. Consultants also have the option the reject a booked consultation. In this case the client gets an email that his appointment has been cancelled and he gets a refund.
The availability interface for consultants works like a reverse scheduling system. In google calendar, when you want to block a time for an appointment, you input the start and end date of the appointment. In IntroLab you block time of availability. This is due to the nature of the consultants who are having full time jobs and other responsibilities and are thus more likely to be unavailable than available.
Payment have to be taken on the website. Clients pay upfront but are being refunded when the slot has been declined or cancelled. For the platform there is a % of a fee being calculated on every transaction. The consultant also had to be paid the remaining amount after deducting the fee.
We implemented Stripe as a payment gateway. Their Connect API provides the perfect solution we need for IntroLabs marketplace payment system.