Restaurant Reservation System
Enterprise-level reservation management system with real-time table availability, staff roles, and custom operating schedules. Features secure guest OTP authentication and Stripe payment integration.
by Muhammed Favas T P (Nayrix) · github.com/favasmuhammed/restaurant-reservation-system
★ 0stars
0forks
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/favasmuhammed/restaurant-reservation-system/archive/refs/heads/master.zipA professional, table-based restaurant reservation system for WordPress, tailored for the UK market.
Features
- Table Management: Manage restaurant tables with specific capacities.
- Advanced Scheduling: Define complex opening hours, holidays, and booking rules.
- Secure Booking Flow: OTP-verified email bookings to prevent spam.
- Integrated Payments: Secure payment processing via Stripe for reservation fees.
- Staff Dashboard: Dedicated frontend portal for staff to manage daily reservations.
- Admin Analytics: High-level dashboard with occupancy stats and revenue reports.
- GDPR Compliant: Automated and manual data anonymization for old records.
- Security Hardened: IP-based rate limiting and blacklisting.
Installation
- Upload the
restaurant-reservation-systemfolder to the/wp-content/plugins/directory. - Activate the plugin through the 'Plugins' menu in WordPress.
- Navigate to RRS Dashboard > Settings to configure your Stripe keys and booking rules.
- Use the shortcode
[restaurant_reservation]on any page to display the reservation form. - Use the shortcode
[restaurant_staff_reservations]on a private page for staff access.
Roles & Capabilities
The plugin introduces two custom roles:
- Restaurant Manager: Full access to settings, reports, tables, and reservations.
- Restaurant Staff: Access to view and manage reservations (Complete/Cancel).
API Endpoints
The plugin provides several REST API endpoints under the rrs/v1 namespace:
GET /availability: Check table availability.POST /otp/send: Request a booking OTP.POST /reservation: Create a pending reservation.POST /webhook: Stripe webhook handler.
Security
- Rate Limiting: Limits OTP requests and booking attempts per IP.
- Blacklisting: Manually block specific IPs or Emails from the settings page.
- Nonces: All admin and AJAX actions are protected by WordPress nonces.
Support & Development
This plugin is maintained and developed by Muhammed Favas T P.
- Email: info@nayrix.com
- LinkedIn: linkedin.com/in/muhammed-favas-t-p/
- Website: nayrix.com
License
GPLv2 or later.