================================================================================
ListifyPro - Laravel Business Directory, Service Booking & Vendor Marketplace
================================================================================

Thank you for purchasing ListifyPro.

ListifyPro is a modern Laravel-based multi-portal business directory, service
booking, and vendor marketplace platform. It is designed for local business
directories, service marketplaces, vendor listing platforms, booking platforms,
and multi-vendor service portals.

--------------------------------------------------------------------------------
PRODUCT INFORMATION
--------------------------------------------------------------------------------

Product Name  : ListifyPro
Full Title    : Laravel Business Directory, Service Booking & Vendor Marketplace
Version       : 3.2
Framework     : Laravel 13
PHP Version   : PHP 8.3+
Frontend      : Blade, Livewire v4, Tailwind CSS v4
Database      : MySQL / MariaDB
Payment       : Stripe, Wallet, Offline Payment
Authentication: Laravel Fortify
Permissions   : Spatie Laravel Permission

--------------------------------------------------------------------------------
MAIN PORTALS
--------------------------------------------------------------------------------

ListifyPro includes four major portals:

1. Public Website
   - Homepage
   - Business listings
   - Service listings
   - Search and filters
   - Category browsing
   - Vendor storefronts
   - Blog, FAQ, help center, contact pages
   - Service booking flow

2. Customer Portal
   - Customer dashboard
   - Bookings
   - Saved listings
   - Saved services
   - Inquiries
   - Messages
   - Wallet
   - Orders / service tracking
   - Support tickets
   - Profile management
   - Become a Vendor flow

3. Vendor Portal
   - Vendor dashboard
   - Business listings management
   - Services management
   - Booking management
   - Service jobs / orders
   - Availability schedule
   - Inquiries and messages
   - Earnings
   - Payouts
   - Withdrawal methods
   - Billing and subscriptions
   - Verification documents
   - Team management
   - Vendor profile

4. Admin / Staff Portal
   - System dashboard
   - Staff management
   - Roles and permissions
   - Vendors moderation
   - Customers management
   - Listings moderation
   - Services moderation
   - Bookings and jobs management
   - Reviews and reports moderation
   - Payments, commissions, and payouts
   - Pricing plans
   - Coupons and campaigns
   - Banners
   - Homepage sections
   - CMS pages, posts, FAQs, testimonials
   - Support tickets
   - Settings
   - CSV exports and imports

--------------------------------------------------------------------------------
CORE FEATURES
--------------------------------------------------------------------------------

- Multi-portal marketplace system
- Business directory listings
- Service booking system
- Slot-based availability
- Addons and packages
- Customer wallet
- Stripe payments
- Offline payments
- Vendor subscriptions
- Vendor payouts
- Commission management
- Customer-to-vendor upgrade
- Vendor verification documents
- Vendor verification tiers
- Listing claim system
- Reviews and review reports
- Inquiries and messaging
- Support tickets
- Notifications
- Coupon and campaign system
- Banner management
- Homepage section management
- Blog and CMS pages
- SEO-friendly routes
- Sitemap and robots.txt
- Roles and permissions
- Staff management
- Login and activity logs
- CSV exports
- Vendor and listing bulk import
- Responsive UI
- Light and dark mode support
- Demo mode write protection
- Seeded demo data

--------------------------------------------------------------------------------
SERVER REQUIREMENTS
--------------------------------------------------------------------------------

Please make sure your server meets the following requirements:

- PHP 8.3 or higher
- MySQL 8 / MariaDB 10.6 or higher
- Composer 2.x
- Node.js 18+ or 20+ recommended
- NPM
- PHP extensions:
  - BCMath
  - Ctype
  - cURL
  - DOM
  - Fileinfo
  - JSON
  - Mbstring
  - OpenSSL
  - PDO
  - PDO MySQL
  - Tokenizer
  - XML
  - Zip
  - GD or Imagick

Recommended:
- Apache or Nginx
- SSL certificate
- Cron job support
- SMTP email account
- Stripe account for online payments

--------------------------------------------------------------------------------
INSTALLATION GUIDE
--------------------------------------------------------------------------------

1. Upload Files
   Upload all project files to your server.

2. Set Document Root
   Your domain or subdomain must point to the public folder.

   Example:
   /your-project/public

3. Create Database
   Create a new MySQL database and database user.

4. Configure Environment File
   Rename or copy .env.example to .env and update the following values:

   APP_NAME="ListifyPro"
   APP_URL=https://your-domain.com

   DB_DATABASE=your_database_name
   DB_USERNAME=your_database_user
   DB_PASSWORD=your_database_password

5. Install Composer Dependencies
   Run:

   composer install --no-dev --optimize-autoloader

6. Generate Application Key
   Run:

   php artisan key:generate

7. Run Migrations and Seeders
   Run:

   php artisan migrate --seed

8. Install Frontend Dependencies
   Run:

   npm install

9. Build Assets
   Run:

   npm run build

10. Set Permissions
    Make sure the following folders are writable:

    storage/
    bootstrap/cache/

    Example command:

    chmod -R 775 storage bootstrap/cache

11. Create Storage Link
    Run:

    php artisan storage:link

12. Optimize Application
    Run:

    php artisan optimize:clear
    php artisan config:cache
    php artisan route:cache
    php artisan view:cache

--------------------------------------------------------------------------------
CRON JOB SETUP
--------------------------------------------------------------------------------

Add the following cron job to your server:

* * * * * php /path-to-your-project/artisan schedule:run >> /dev/null 2>&1

This is required for scheduled tasks such as:

- Booking reminders
- Payment reminders
- Subscription expiry notifications
- Inquiry follow-up reminders
- Admin daily digest
- Log pruning

--------------------------------------------------------------------------------
STRIPE SETUP
--------------------------------------------------------------------------------

To enable Stripe payments:

1. Login to Admin Panel
2. Go to Settings > Payment
3. Add your Stripe Secret Key
4. Add your Stripe Webhook Secret
5. Go to Pricing Plans
6. Click "Sync to Stripe" for paid plans
7. Configure Stripe webhook endpoint:

   https://your-domain.com/webhooks/stripe

Recommended Stripe webhook events:

- checkout.session.completed
- checkout.session.async_payment_succeeded
- checkout.session.async_payment_failed
- charge.refunded
- customer.subscription.created
- customer.subscription.updated
- customer.subscription.deleted
- invoice.payment_succeeded
- invoice.payment_failed

--------------------------------------------------------------------------------
EMAIL / SMTP SETUP
--------------------------------------------------------------------------------

To send registration, verification, invoice, notification, and support emails,
configure SMTP inside your .env file or from Admin Settings if available.

Example:

MAIL_MAILER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=587
MAIL_USERNAME=your_username
MAIL_PASSWORD=your_password
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=support@your-domain.com
MAIL_FROM_NAME="ListifyPro"

--------------------------------------------------------------------------------
DEFAULT DEMO ACCOUNTS
--------------------------------------------------------------------------------

If demo seed data is installed, you can use the following demo accounts:

Admin:
Email    : admin@demo.com
Password : password

Staff:
Email    : staff@demo.com
Password : password

Vendor:
Email    : vendor@demo.com
Password : password

Customer:
Email    : customer@demo.com
Password : password

For security, change or remove these demo accounts before using the system in
production.

--------------------------------------------------------------------------------
IMPORTANT ADMIN SETTINGS
--------------------------------------------------------------------------------

After installation, please review the following settings:

- Company settings
- Branding settings
- Payment settings
- Stripe settings
- Commission settings
- Email / SMTP settings
- Notification settings
- SEO settings
- Social links
- File storage settings
- Security settings

--------------------------------------------------------------------------------
PAYMENT METHODS
--------------------------------------------------------------------------------

ListifyPro supports:

- Stripe payment
- Wallet payment
- Offline payment

Vendor billing supports:

- Free plan
- Recurring subscription plan
- One-time / lifetime plan
- Plan upgrade and cancellation
- Subscription invoice PDF

--------------------------------------------------------------------------------
VENDOR WORKFLOW
--------------------------------------------------------------------------------

Typical vendor workflow:

1. Vendor registers and selects a plan
2. Vendor profile is created
3. Vendor adds business listings
4. Vendor adds services
5. Vendor sets availability
6. Customer books a service
7. Vendor manages booking
8. Service job/order is created
9. Payment is processed
10. Commission is recorded
11. Vendor requests payout
12. Admin processes payout

--------------------------------------------------------------------------------
CUSTOMER WORKFLOW
--------------------------------------------------------------------------------

Typical customer workflow:

1. Customer browses public website
2. Customer searches listings or services
3. Customer views business or service details
4. Customer books a service
5. Customer pays using Stripe, wallet, or offline payment
6. Customer manages bookings from account portal
7. Customer can message vendor
8. Customer can leave reviews
9. Customer can create support tickets

--------------------------------------------------------------------------------
ADMIN WORKFLOW
--------------------------------------------------------------------------------

Typical admin workflow:

1. Configure system settings
2. Create pricing plans
3. Sync paid plans with Stripe
4. Manage vendors and customers
5. Moderate listings and services
6. Manage bookings, jobs, payments, commissions, and payouts
7. Manage CMS content
8. Monitor reports, logs, and support tickets

--------------------------------------------------------------------------------
FOLDER STRUCTURE
--------------------------------------------------------------------------------

Important folders:

app/
  Application logic, models, services, Livewire components, controllers

database/
  Migrations, seeders, factories

resources/views/
  Blade templates and Livewire views

routes/
  Web routes and related route files

public/
  Public assets and entry point

storage/
  Uploaded files, logs, cache files

config/
  Application configuration files

--------------------------------------------------------------------------------
CUSTOMIZATION
--------------------------------------------------------------------------------

You can customize:

- Logo
- Favicon
- Colors
- Homepage sections
- Banners
- CMS pages
- Blog posts
- Pricing plans
- Categories
- Locations
- Payment settings
- Email settings
- SEO settings
- Permissions and roles

Most branding and content settings can be managed from the admin panel.

--------------------------------------------------------------------------------
UPDATING THE SYSTEM
--------------------------------------------------------------------------------

Before updating:

1. Backup your files
2. Backup your database
3. Upload updated files
4. Run:

   composer install --no-dev --optimize-autoloader
   php artisan migrate
   npm install
   npm run build
   php artisan optimize:clear

5. Re-check your settings and permissions

--------------------------------------------------------------------------------
TROUBLESHOOTING
--------------------------------------------------------------------------------

Common issue: 500 server error
Solution:
- Check storage/logs/laravel.log
- Check .env configuration
- Check file permissions
- Run php artisan optimize:clear

Common issue: CSS/JS not loading
Solution:
- Run npm run build
- Check public/build folder
- Make sure APP_URL is correct

Common issue: Storage images not showing
Solution:
- Run php artisan storage:link
- Check storage permissions

Common issue: Stripe not working
Solution:
- Check Stripe secret key
- Check webhook secret
- Check webhook URL
- Make sure your domain uses HTTPS

Common issue: Emails not sending
Solution:
- Check SMTP credentials
- Check MAIL_FROM_ADDRESS
- Check server mail restrictions

--------------------------------------------------------------------------------
SECURITY NOTES
--------------------------------------------------------------------------------

Before going live:

- Set APP_DEBUG=false
- Change demo account passwords
- Remove unused demo data if needed
- Configure SMTP
- Configure Stripe live keys
- Set correct file permissions
- Enable SSL
- Configure cron job
- Review admin users and roles
- Backup database regularly

--------------------------------------------------------------------------------
SUPPORT
--------------------------------------------------------------------------------

If you need support, please contact the author through the CodeCanyon support
section. Include:

- Purchase code
- Website URL
- Screenshot of the issue
- Error message
- Laravel log details if available

--------------------------------------------------------------------------------
THANK YOU
--------------------------------------------------------------------------------

Thank you for choosing ListifyPro.

We hope this product helps you build a powerful business directory, service
booking, and vendor marketplace platform.
