Aladdin Biyabangerd
All workVenue management

Heselo

A platform that allows venues to manage reservations and their day-to-day operations from a single system.

Built and online · Venue management · Reservation management · Venue operations · Payment tracking · Staff workflows · Customer records

The problem

In many venues, reservations are managed in one place, schedules in another, and payments are recorded separately. By the end of the day, it can become difficult to know which reservations actually took place, which sessions are still active, and which payments have been completed.

What I built

A unified platform for managing reservations, sessions, and payments. The goal is to replace multiple disconnected tools with a single system that keeps the venue's daily operations connected from reservation to payment.

Why it matters

A reservation becomes an active session, the session is completed with a payment, and at the end of the day the shift's financial records can be reconciled with the activity recorded in the system. This keeps the entire process connected and traceable from the moment a reservation is created until the payment is completed.

My role

Heselo is my own product. I designed and built the entire platform independently — including reservations, the live floor interface, payments, inventory, and administration screens. The product is built and available online. It has not yet been released for commercial use, so no venue currently runs its daily operations through Heselo.

Heselo · online

Heselo live floor showing active venue sessions and payment status
Heselo schedule for room and table reservations

Worked example · Heselo

One operational fact, three states

A reservation, a live session and a payment are not three apps. They are three states of the same record.

  1. Reserved

    The resource is promised for a window. Another booking cannot silently take it.

  2. guest arrives

    Live

    The guest is here. Time is running. Products can be added.

  3. session settles

    Closed

    The session has a total, a tender, and the shift it belongs to.

What the system refuses

  • A second booking taking a window already promised
  • Editing a business day that has been closed
  • Cash from one shift mixing into the next
  • Rewriting money without a confirmation code
Read how this holds at 21:00

How it works

    • Floor screens
    • Admin panel
    • Reservation calendar
    • One reservation record follows the entire process: reservation → session → payment
    • One shared database
The reservation, the session created from it, and the final payment are treated as different stages of the same record. This approach helps prevent the same time slot from being promised twice and keeps payment records from different shifts from becoming mixed together.

Built with: Java · Spring Boot · REST APIs · PostgreSQL · React · Docker