Commercial Booking Engine

ServNex

A comprehensive multi-service booking ecosystem designed to streamline reservations for hotels and restaurants, handling everything from secure payments to real-time waitlist management.

Role
Lead Developer
Platform
Web (Responsive)
Stack
Django & React
Timeline
Ongoing Project

Technical Architecture

ServNex utilizes a modern decoupled architecture. The Django REST Framework backend serves as a robust engine handling complex business logic, while the React frontend provides a seamless, app-like experience for users.

  • 01.
    Google OAuth 2.0

    Secure and frictionless social authentication for improved user retention.

  • 02.
    Razorpay API Integration

    End-to-end payment lifecycle management including signature verification and failure reporting.

  • 03.
    Signal-based Notifications

    Automated triggers for booking confirmations, cancellations, and payment reminders.

// Razorpay Signature Verification Flow
def verify_payment(request):
    payment_id = request.data.get('payment_id')
    order_id = request.data.get('order_id')
    signature = request.data.get('signature')
    
    params_dict = {
        'razorpay_order_id': order_id,
        'razorpay_payment_id': payment_id,
        'razorpay_signature': signature
    }
    
    try:
        client.utility.verify_payment_signature(params_dict)
        # Handle success...
    except SignatureVerificationError:
        # Handle failure...
          

Core Features

🛎

Smart Booking

Intelligent availability engine that prevents overbooking and manages table/room assignments dynamically.

📉

Real-time Waitlist

Dynamic queue management for high-traffic restaurants, giving users accurate wait-time estimates via SMS/Email.

🔒

Financial Security

Strict adherence to payment security protocols, ensuring every transaction is verified and logged for auditability.

Interface Showcase

ServNex Dashboard

Central Booking Dashboard

Booking Process

Seamless Booking Flow

Waitlist Management

Real-time Waitlist & Queue

Overcoming the "Payment Mismatch" Challenge

One of the biggest hurdles was ensuring data consistency when users cancelled payments mid-process. I implemented a robust "Post-Payment Verification" system and centralized failure logging to ensure that no booking remained in a "Ghost" state, providing clear feedback to users even when transactions failed.