A professional legal service booking system for WordPress with staff scheduling, service duration settings, deposit payments, calendar synchronization, and client CRM.
Features
Core Features
- Service Booking System: Complete appointment booking workflow with multi-step form
- Staff Scheduling: Set working hours for each attorney/staff member
- Service Duration: Configure service duration and pricing
- Deposit Payments: Accept PayPal deposits for appointments
- Calendar Sync: Google Calendar and Outlook integration
- Client CRM: Track client history and service records
- Email Notifications: Automated email reminders for appointments
Admin Features
- Dashboard: Overview of bookings, revenue, and statistics
- Booking Management: View, edit, confirm, and cancel bookings
- Client Management: Client profiles with booking history
- Schedule Management: Set weekly schedules for each staff member
- Payment Records: Track deposit payments
- Settings: Configure general, email, payment, and calendar settings
Installation
Requirements
- WordPress 6.0 or higher
- PHP 8.0 or higher
- MySQL 5.7 or higher
Installation Steps
- Upload the
legal-service-bookingfolder to/wp-content/plugins/ - Activate the plugin through the ‘Plugins’ menu in WordPress
- Configure settings in Booking Manager > Settings
- Create services in Services custom post type
- Add team members in Team custom post type
- Set staff schedules in Booking Manager > Schedules
Configuration
General Settings
Navigate to Booking Manager > Settings > General to configure:
- Business Name: Your law firm name
- Business Email: Contact email for notifications
- Business Phone: Contact phone number
- Timezone: Set your business timezone
- Currency: Select your preferred currency
- Date Format: Choose date display format
- Time Format: Choose time display format
Email Settings
Navigate to Booking Manager > Settings > Email to configure:
- Sender Name: Name shown in email notifications
- Sender Email: Email address for outgoing emails
- Admin Notification: Receive emails for new bookings
- Client Confirmation: Send confirmation emails to clients
- Reminder Emails: Configure reminder timing (24h, 48h before)
Email Notification Recipients
When a booking is created, emails are sent to:
- Client (Customer) – Always receives booking confirmation
- Attorney (Staff) – Receives notification if email is set in their profile
- Admin – Receives notification if “Admin Notifications” is enabled in settings
Important: SMTP Configuration Required
WordPress default email function (wp_mail()) often fails on many servers. You MUST configure SMTP to ensure emails are delivered.
Recommended SMTP Plugins:
- WP Mail SMTP (Recommended – Free and powerful)
- Easy WP SMTP
- Post SMTP Mailer
SMTP Configuration Examples
QQ Mail:
SMTP Host: smtp.qq.com
SMTP Port: 465 (SSL)
Encryption: SSL
Username: your-qq@qq.com
Password: Authorization Code (NOT your QQ password - get from QQ Mail settings)
163 Mail:
SMTP Host: smtp.163.com
SMTP Port: 465
Encryption: SSL
Password: Client Authorization Code (from 163 Mail settings)
Aliyun Enterprise Mail:
SMTP Host: smtp.qiye.aliyun.com
SMTP Port: 465
Encryption: SSL
Gmail:
SMTP Host: smtp.gmail.com
SMTP Port: 587 (TLS) or 465 (SSL)
Encryption: TLS
Password: App Password (enable 2FA first, then generate App Password)
Tencent Enterprise Mail (Exmail):
SMTP Host: smtp.exmail.qq.com
SMTP Port: 465
Encryption: SSL
Testing Email Configuration
- Install WP Mail SMTP plugin
- Go to Settings β WP Mail SMTP
- Configure your SMTP settings
- Use the “Email Test” feature to verify
- Check spam folder if emails don’t arrive in inbox
Troubleshooting Email Issues
- Emails not sending: Install and configure SMTP plugin
- Emails go to spam: Set up SPF/DKIM records for your domain
- Gmail not working: Use App Password instead of regular password
- Chinese email providers: Must use authorization code, not login password
Payment Settings
Navigate to Booking Manager > Settings > Payments to configure:
- Enable Deposits: Toggle deposit requirement
- PayPal Mode: Sandbox (testing) or Live
- PayPal Client ID: Your PayPal API client ID
- PayPal Secret: Your PayPal API secret
Calendar Sync Settings
Navigate to Booking Manager > Settings > Calendar to configure:
- Google Calendar: Enable and configure OAuth credentials
- Outlook Calendar: Enable and configure Microsoft credentials
Usage
Creating Services
- Go to Services > Add New
- Enter service title and description
- Set featured image
- Configure service details:
- Duration (in minutes)
- Price
- Deposit amount
- Available attorneys
Adding Team Members
- Go to Team > Add New
- Enter attorney name and bio
- Set featured image (photo)
- Configure member details:
- Position/Title
- Phone
- LinkedIn URL
- Bar Number
- Assign practice areas
Setting Schedules
- Go to Booking Manager > Schedules
- Select a team member
- Set working hours for each day:
- Check “Working” for available days
- Set start and end times
- Click “Save Schedule”
Managing Bookings
- Go to Booking Manager > Bookings
- View all appointments with filters:
- Filter by status (Pending, Confirmed, Completed, Cancelled)
- Filter by date range
- Search by client name/phone/email
- Click “View” to see booking details
- Update status and add notes
Using Shortcodes
Display the booking form on any page:
[lexington_booking_form]
With specific service or staff:
[lexington_booking_form service_id="123" staff_id="456"]
Frontend Booking Process
- Select Service: Client chooses a legal service
- Select Attorney: Client selects preferred attorney
- Choose Date: Calendar shows available dates
- Select Time: Available time slots are displayed
- Enter Details: Client fills in contact information
- Case Description: Client describes their legal matter
- Payment: Deposit payment via PayPal (if enabled)
- Confirmation: Booking is submitted and confirmed
Troubleshooting
Common Issues
Booking form not submitting:
- Check browser console for JavaScript errors
- Verify AJAX nonce is valid
- Ensure WordPress REST API is accessible
Emails not sending:
- Check email settings are configured
- Verify sender email is valid
- Test with SMTP plugin if needed
PayPal not working:
- Verify PayPal credentials are correct
- Check if using correct mode (Sandbox/Live)
- Ensure return URL is properly configured
Calendar sync failing:
- Re-authorize Google/Outlook connection
- Check OAuth credentials are valid
- Verify API quotas are not exceeded
Support
For support, please contact:
- Email: 1601800014@qq.com
Changelog
1.0.0
- Initial release
- Service booking system
- Staff scheduling
- PayPal deposit payments
- Google Calendar sync
- Outlook Calendar sync
- Client CRM
- Email notifications
License
Proprietary License
This plugin is commercial software. Purchase grants you a non-exclusive, non-transferable license to:
- Use the plugin on a single website
- Receive updates during your subscription period
- Access email support
You may NOT:
- Redistribute the plugin
- Modify and distribute the code
- Use on more sites than licensed
For multi-site licenses or enterprise pricing, contact: 1601800014@qq.com
User Reviews