Web Lead System
User & Installation Guide
A practical guide for installing, configuring, securing, and operating the Web Lead System—from the first server upload to daily lead management.
1. Server requirements
Confirm compatibility before uploading the system. Your exact release may specify a newer minimum version.
Web server
Apache or a compatible HTTPS web server with URL rewriting, sessions, and protected directories.
PHP
A currently supported PHP 8.x release with PDO, JSON, mbstring, OpenSSL, and session support.
Database
MySQL 8.x or compatible MariaDB, plus one dedicated database user with only the required privileges.
- A valid SSL certificate and forced HTTPS
- Access to the hosting file manager, SFTP, or a deployment tool
- Access to database creation and scheduled backups
- A working mail service or authenticated SMTP provider
- A private administrative email address for the primary owner
2. Installation: beginning to end
These steps describe a conventional self-hosted installation. Keep the supplied filenames and directory relationships intact.
Recommended file structure
Back up the existing website
Download the current website files and export its database. Record the PHP version and active DNS/mail settings.
Create the application database
In the hosting control panel, create a dedicated database and database user. Generate a unique password and grant that user access only to this database.
Import the supplied schema file using the hosting database tool. Do not reuse a WordPress administrator password.
Upload the application package
Extract the release ZIP locally. Upload the complete application folder to
/public_html/web-lead-system/using SFTP or the hosting file manager.Protect private directories
Prevent direct web access to configuration, storage, backups, and logs. Apply the server rules supplied with the release and confirm that opening a protected file URL returns
403 Forbidden.Enter the server configuration
Set the database host, database name, username, password, application URL, organization name, timezone, mail transport, sender address, and reply address in the supplied configuration file or setup screen.
Set production mode
Disable visible PHP errors, enable secure session cookies, set the application environment to production, and confirm HTTPS is forced before login credentials are created.
Connect the website form
Point the public contact form to its installed receiver, normally
/api/contact/contact.php. Match every HTML field name and allowed option to the server configuration.Use a honeypot, same-origin validation, rate limiting, and server-side validation. Never rely on browser validation alone.
Test delivery without real customer data
Submit a clearly labeled test lead. Confirm it appears once in the dashboard, reaches the intended notification mailbox, and sends a visitor confirmation only when that option is enabled.
Create the primary owner
Open the private application URL and complete first-run setup. The first authorized account becomes the Primary Owner. Use a unique password and record the recovery method securely.
Add the initial team
Invite users into available seats, assign job titles, and grant only the permissions each person needs. Confirm each invitation individually.
Complete the launch checklist
Test login, logout, password recovery, lead reply, internal message, transfer approval, export, archive, mobile layout, and backup restoration before announcing the system to employees.
3. Users, roles & permissions
Titles describe people; permissions control actions. “Carpenter,” “Estimator,” or “Office Coordinator” can be customized without granting unrestricted authority.
Primary Owner
- Controls organization settings and branding
- Manages users and temporary authority
- Approves sensitive account actions
- Views reports and historical records
Lead Coordinator
- Reviews and assigns incoming leads
- Replies, follows up, and archives when permitted
- Publishes announcements when authorized
- Cannot take ownership from the Primary Owner
Team Member
- Views leads assigned to the account
- Replies and schedules follow-up
- Sends private internal messages
- Requests transfers rather than taking leads
Custom or Limited Role
- Receives only explicitly granted capabilities
- May be used for assistants, field staff, or observers
- Should begin with the minimum necessary access
- Can be revised after promotion or reassignment
4. Reading the dashboard
The dashboard concentrates the work that needs attention. What appears depends on the logged-in user’s permissions.
Recent email leads
Attention counts
Overdue, due today, upcoming, unassigned, and transfer counts identify immediate work.
Presence
Online, away, offline, or—when authorized—invisible indicates availability, not physical location.
Current view
My Leads and My Messages restrict information to the current user. Broader views require explicit permission.
5. Managing leads
A lead should move through a deliberate lifecycle. Avoid leaving an inquiry unassigned or using archive as a substitute for answering it.
| Status | Meaning | Recommended action |
|---|---|---|
| New | Received but not fully reviewed. | Screen, verify, and assign. |
| Assigned | A team member owns the next action. | Contact the visitor promptly. |
| Awaiting Reply | Your business responded and is waiting. | Schedule a reasonable follow-up. |
| Follow-Up | A future action is scheduled. | Complete, reschedule, or cancel with a note. |
| Answered | The inquiry received a substantive response. | Continue the thread or close when resolved. |
| Closed | No further action is expected. | Retain the record; reopen if necessary. |
| Archived | Removed from active work without deletion. | Use for preserved inactive records. |
Daily lead workflow
- Open the lead and verify the contact information.
- Review screening indicators and previous activity.
- Assign the lead to the appropriate authorized user.
- Reply from the lead thread so the response remains recorded.
- Set a status and schedule the next action.
- Close or archive only when the outcome is understood.
6. Internal messages
Messages let authorized users coordinate without exposing private notes to the website visitor.
Choose a recipient
Open Team, confirm the person and presence indicator, then select Send Message.
Write a useful subject
Reference the lead, project, decision, or deadline. Avoid vague messages such as “Call me.”
Keep customer replies separate
Internal messages are for employees. Use the lead thread to communicate with the visitor.
Preserve context
Reply in the existing thread when continuing the same subject.
7. Assignment & transfer requests
Users may request a reassignment, but sensitive transfers should remain subject to owner or delegated approval.
Request
The current assignee selects the proposed recipient and provides a business reason.
Review
The authorized decision-maker reviews workload, experience, history, and fairness.
Approve or deny
The system records the decision, decision-maker, time, and reason.
Notify
Affected users receive the outcome. The lead remains with the original assignee until approval succeeds.
8. Company announcements
Announcements distribute organization-wide information and can request acknowledgement.
- Use a clear title, publication time, expiration date, and priority
- Request acknowledgement only when confirmation is genuinely needed
- Review recipient and acknowledgement counts from the sender’s view
- Use approved decorative images sparingly and provide accessible alternative text
- Allow expired announcements to leave the active dashboard while preserving the record
9. User accounts
Add a user
- Open Team and select an available seat.
- Enter the person’s real name, company email, title, and access profile.
- Review permissions; remove anything unnecessary.
- Send the invitation. The seat remains pending until accepted.
- Confirm the user can log in and sees only the intended information.
Edit, suspend, or deactivate
Title and permissions may change as responsibilities change. Suspension temporarily blocks access. Deactivation permanently ends access without destroying historical records.
Temporary delegation
The Primary Owner may grant selected capabilities to an authorized user for a fixed period. Delegation should expire automatically and must not transfer ownership, billing control, or historical ownership records.
10. Appearance & branding
Owner-only controls can coordinate the application with the business website without exposing arbitrary CSS or font changes.
Header mode
Show the branded header for a standalone installation, or hide the public header when the system is embedded beneath an existing website header.
Application title
Choose Web Lead System, Communications Dashboard, Inter-Office System, or an approved custom title.
Colors & buttons
Select accessible header, navigation, button, and status colors while preserving readable contrast.
11. Records, reports & exports
The system preserves operational history; it does not prove a person’s physical location or identity at a specific moment.
Lead reports
Received, assigned, answered, awaiting reply, closed, archived, and follow-up activity by date range.
User account history
Invitations, permission changes, suspensions, deactivations, assignments, messages, and decisions.
Former users
Search preserved accounts without reactivating them. Open leads should already have been reassigned.
Local exports
Download periodic CSV, text, or supported report formats and store encrypted copies according to company policy.
12. Security checklist
- Force HTTPS and secure session cookies
- Use unique passwords and multi-factor authentication when supported
- Hash passwords with PHP’s current password API; never store plain text
- Use prepared database statements and server-side authorization on every action
- Require CSRF tokens for state-changing requests
- Validate, limit, and encode all visitor input
- Disable file uploads unless a separately secured feature explicitly requires them
- Keep configuration, logs, exports, and backups outside public reach
- Rate-limit login and form submissions
- Review active accounts and delegated authority regularly
- Apply supported PHP, database, application, and server updates
- Maintain off-server encrypted backups and test restoration
13. Maintenance schedule
| Frequency | Action |
|---|---|
| Daily | Review failed mail, screening holds, overdue follow-ups, and backup status. |
| Weekly | Review unassigned leads, stale conversations, pending transfers, and pending invitations. |
| Monthly | Export reports, test a sample restore, review users and permissions, and inspect storage use. |
| Quarterly | Install tested maintenance releases, audit configuration, and review retention policy. |
| When staff changes | Immediately suspend access, reassign open work, then complete non-destructive deactivation. |
Safe update procedure
- Read the release notes and confirm server compatibility.
- Back up files and database.
- Test the update in a staging copy with fictional data.
- Place production in maintenance mode if required.
- Upload only the documented changed files and run migrations once.
- Clear server/browser caches and complete the regression checklist.
- Roll back immediately if records, permissions, or mail behavior are inconsistent.
14. Troubleshooting
The contact form says “Thank you,” but no lead appears
Email notification did not arrive
A user sees information outside their role
A page returns 403 or a security challenge
Branding preview works but changes disappear
The interface works in one browser but not another
15. Support information
Before requesting assistance, record what happened, the exact time, the signed-in role, browser, page address, and visible error. Remove passwords and customer-sensitive data from screenshots.
Include
- Application version
- PHP and database versions
- Exact steps to reproduce
- Error text and relevant sanitized log entry
- Whether the issue occurs in a clean session
Do not send
- Passwords or recovery codes
- Database credentials
- Unredacted customer correspondence
- Complete private configuration files
- Server backups through ordinary email
End of Web Lead System Documentation.
