← Selected work

BOOKINGS + PAYMENT WORKFLOWS / Development project

TravelPay.

TravelPay brings hotel search, account access, booking records and payment workflows into one application. The project combines a React interface with an Express API and a MySQL data model.

  • React
  • Express
  • MySQL
  • M-PESA Daraja
Interface illustration

The problem

A booking is more than a form submission. The application needs to connect a customer, a room, availability and a payment record. The project focuses on making those relationships explicit across the interface, API and database.

What I built

  • Account registration and login workflows with JWT-based authentication.
  • Hotel search and room availability checks before creating a booking.
  • MySQL schemas for bookings, payments and the records they depend on.
  • M-PESA Daraja sandbox and Paystack integration workflows for development and testing.

Implementation focus

The booking and payment records have separate responsibilities. A booking describes the reservation, while a payment record describes the transaction workflow. That distinction makes it easier to represent pending work and investigate a failed or incomplete request.

The payment integrations are development workflows. This case study describes the application work and does not imply a live commercial booking service.

What this demonstrates

Relational schema design, authenticated APIs, integration work and an understanding of how business processes span multiple requests. It also shows the value of checking the whole journey, from search to the final booking state.

Want to explore the details?

I’m happy to discuss the implementation, decisions and further development.

Get in touch
NEXT PROJECTKenya Sports Odds API