Case Study:
Booking Calendar

Microservice for Managing and Displaying Accommodation Availability

Customer

Funke Digital operates successful online accommodation portals with monteurzimmer.de and pension.de. These platforms act as intermediaries, connecting interested parties with accommodation providers, allowing bookings to be made directly without any commission fees. This unique positioning sets Funke Digital apart from other market players, playing a significant role in the accommodation industry.

Project

Landlords and accommodation seekers faced a common problem while using the accommodation portals. Since bookings were made directly between providers and interested parties, there was no system information on the actual availability of rooms and apartments. This gap often resulted in users encountering numerous fully booked accommodations and providers being overwhelmed with inquiries for unavailable units, leading to frustration for both parties. The project's aim was to introduce a booking calendar that would make availability data transparent, thus optimizing communication between providers and seekers and making the platform's use more efficient and user-friendly.

Implementation

The implementation unfolded in three phases: analysis, planning, and development. The analysis phase focused on understanding how landlords technically manage their accommodations. Besides direct surveys of landlords, existing booking systems and market interfaces were analyzed. CosmoCode critically engaged with various providers and technologies to determine the most suitable ones for integration into the Funke portals. This process included a close examination of synchronization options to avoid redundant tasks for providers using other systems.

Based on the market analysis and defined requirements, a detailed concept for the booking system was developed. This included a comprehensive textual description of all components to be developed: descriptions of all managed data entities and their properties, API interface definitions, and detailed user and automation workflows specifying how third-party data synchronizes with the system. Mockups added to the UI mechanism descriptions helped make future user interactions tangible for the client.

A notable decision was to implement the system using a microservice architecture. The various user interfaces are incorporated into the existing portals as web component widgets. These portals communicate via a REST API with the backend service, which handles data management and synchronization.

For the implementation of the booking calendar for Funke Digital’s accommodation portals, CosmoCode chose a robust and proven technology stack, including Django, PostgreSQL, and React.

Django was employed for the backend system due to its efficient framework structure. This Python-based framework provides numerous functionalities essential for the rapid development and clear structuring of web applications. It allows easy management of database operations, user-friendly URL routing, and secure handling of user inputs, crucial for processing and storing booking data.

The team chose PostgreSQL for data management, a powerful, open-source object-relational database known for its reliability, robustness, and performance, even when handling large volumes of booking data and complex query requirements.

CosmoCode opted for React on the frontend, a modern JavaScript framework known for creating reactive user interfaces. React enables efficient, flexible development of UI components that can dynamically respond to user interactions. Using React, an intuitive and seamless interaction with the availability calendar on the portals was realized, ensuring an optimal user experience.

For authenticating all accesses to the booking system, both via the API and widgets, the system uses JSON Web Tokens (JWT) according to the RFC7519 standard.

An automated deployment system was established within the project, relying on GitHub Actions and AWS Elastic Beanstalk. This system ensures that all new developments pass through a predefined pipeline of tests and quality checks before reaching production, thus enhancing the overall stability and reliability of the solution.

Kunde
Funke Digital
Zeitraum
2023 - 2024

We can also implement your project!

Do you want to implement a similar project? Or do you have a completely different idea? Talk to us and we will find the best solution together.