Ticket Management
This comprehensive guide covers all aspects of ticket management in HelpDesk Pro, from creating tickets to resolving customer issues.
Understanding Tickets
What is a Ticket?
A ticket is a formal record of a customer's support request. Each ticket contains:
- Unique ID - System-generated identifier
- Subject - Brief description of the issue
- Description - Detailed problem description
- Customer Information - Contact details and history
- Status - Current state of the ticket
- Priority - Urgency level
- Category - Type of issue
- Assigned Agent - Who is handling the ticket
- Timestamps - Creation, updates, and resolution times
Ticket Lifecycle
graph LR
A[New Ticket] --> B[Open]
B --> C[In Progress]
C --> D[Pending Customer]
D --> C
C --> E[Resolved]
E --> F[Closed]
F --> G[Archived]
Creating Tickets
Method 1: From Dashboard
Navigate to Tickets → Create Ticket
Fill Out Ticket Form:
Subject: Brief description of the issue Description: Detailed problem description Customer: Select existing or create new Category: Choose appropriate category Priority: Set urgency level Department: Assign to department Due Date: Set deadline (optional)
Add Attachments (if needed):
- Click "Add Files" button
- Select files from your computer
- Supported formats: JPG, PNG, PDF, DOC, TXT, ZIP
- Maximum file size: 10MB per file
Submit Ticket:
- Review all information
- Click "Create Ticket"
- System generates unique ticket ID
Method 2: From Customer Profile
- Go to Users → Customers
- Find the customer
- Click "Create Ticket" button
- Fill out ticket form (customer info pre-filled)
- Submit ticket
Method 3: Public Ticket Submission
Customers can create tickets through your public website:
Visit your support page
Fill out public ticket form:
Name: Customer's full name Email: Valid email address Subject: Issue description Description: Detailed problem Category: Select from dropdown Priority: Choose urgency level
Submit ticket (creates customer account if needed)
Managing Tickets
Ticket List View
View Options
- Grid View - Card-based layout with visual elements
- List View - Compact table format
- Kanban View - Drag-and-drop status management
Filtering Tickets
// Available filters
const filters = {
status: ['open', 'in_progress', 'pending', 'resolved', 'closed'],
priority: ['low', 'medium', 'high', 'urgent'],
category: ['technical', 'billing', 'general', 'feature_request'],
department: ['support', 'sales', 'billing'],
agent: ['john.doe', 'jane.smith', 'unassigned'],
date_range: ['today', 'this_week', 'this_month', 'custom'],
customer: 'Search by customer name or email'
}
Sorting Options
- Date Created (Newest/Oldest)
- Last Updated (Recent/Old)
- Priority (High to Low)
- Status (Alphabetical)
- Customer (A-Z)
- Agent (A-Z)
Ticket Details View
Ticket Information Panel
// Ticket detail structure
$ticket = [
'id' => 'TKT-2025-001',
'subject' => 'Login issues after system update',
'status' => 'in_progress',
'priority' => 'high',
'category' => 'technical',
'customer' => [
'name' => 'John Smith',
'email' => 'john@example.com',
'phone' => '+1-555-0123',
'company' => 'Acme Corp'
],
'agent' => 'jane.smith@company.com',
'department' => 'Technical Support',
'created_at' => '2025-01-15T10:30:00Z',
'updated_at' => '2025-01-15T14:45:00Z',
'due_date' => '2025-01-16T18:00:00Z',
'sla_status' => 'on_track'
];
Quick Actions
- Reply - Respond to customer
- Assign - Change ticket assignment
- Escalate - Move to higher priority
- Close - Resolve and close ticket
- Merge - Combine with related tickets
- Add Note - Internal agent note
Ticket Conversations
Adding Comments
Customer-Facing Comments
Open ticket details
Scroll to conversation section
Type your response in the text editor
Format text using toolbar options:
- Bold, italic, underline
- Bullet points and numbering
- Links and images
- Code blocks
Add attachments (if needed)
Choose visibility:
- Public - Customer can see
- Internal - Agents only
Click "Send Reply"
Internal Notes
Click "Add Internal Note"
Type private note for other agents
Set note type:
- General note
- Escalation reason
- Resolution steps
- Customer feedback
Save note
Conversation Thread
Timeline View
- Chronological order of all interactions
- User avatars for easy identification
- Timestamps for each message
- Message types clearly labeled
- Attachment indicators
Rich Text Editor Features
<!-- Supported formatting -->
<b>Bold text</b>
<i>Italic text</i>
<u>Underlined text</u>
<a href="url">Links</a>
<img src="image.jpg" alt="Image">
<code>Code snippets</code>
<ul><li>Bullet points</li></ul>
<ol><li>Numbered lists</li></ol>
Ticket Status Management
Available Statuses
Default Statuses
- Open - New ticket, awaiting assignment
- In Progress - Agent is working on the ticket
- Pending Customer - Waiting for customer response
- Resolved - Issue fixed, awaiting customer confirmation
- Closed - Ticket completed and archived
Custom Statuses
You can create additional statuses:
- Awaiting Approval - Needs manager approval
- On Hold - Temporarily paused
- Escalated - Moved to senior support
- Duplicate - Similar to existing ticket
Changing Ticket Status
Method 1: Quick Status Change
- In ticket list view
- Click status dropdown on ticket card
- Select new status
- Add optional comment
- Confirm change
Method 2: From Ticket Details
- Open ticket details
- Click "Change Status" button
- Select new status
- Add status change reason
- Notify customer (optional)
- Save changes
Status Change Rules
// Status transition rules
$statusRules = [
'open' => ['in_progress', 'closed'],
'in_progress' => ['pending_customer', 'resolved', 'closed'],
'pending_customer' => ['in_progress', 'closed'],
'resolved' => ['closed', 'in_progress'],
'closed' => ['open'] // Reopen if needed
];
Ticket Assignment
Assigning Tickets
Method 1: Quick Assignment
- In ticket list view
- Click "Assign" button
- Select agent from dropdown
- Add assignment note (optional)
- Confirm assignment
Method 2: From Ticket Details
Open ticket details
Click "Assign Ticket" button
Choose assignment method:
- Manual - Select specific agent
- Auto-assign - System chooses based on workload
- Department - Assign to department head
Set assignment reason
Notify agent (optional)
Save assignment
Auto-Assignment Rules
Workload-Based Assignment
// Auto-assignment algorithm
$assignmentRules = [
'workload_balance' => true,
'skill_matching' => true,
'department_routing' => true,
'priority_handling' => true,
'max_tickets_per_agent' => 10
];
Skill-Based Assignment
- Technical Issues → Technical Support Team
- Billing Questions → Billing Department
- Feature Requests → Product Team
- General Inquiries → General Support
Reassigning Tickets
When to Reassign
- Agent is unavailable
- Issue requires different expertise
- Customer requests different agent
- Escalation to senior support
Reassignment Process
- Click "Reassign" button
- Select new agent
- Add reassignment reason
- Transfer ticket history
- Notify both agents
- Update ticket status
Ticket Priority Management
Priority Levels
Default Priorities
- Low (Green) - Non-urgent issues
- Medium (Yellow) - Standard requests
- High (Orange) - Important issues
- Urgent (Red) - Critical problems
Priority Guidelines
// Priority assignment guidelines
$priorityGuidelines = [
'urgent' => [
'description' => 'System down, security breach',
'sla_time' => '1 hour',
'escalation_time' => '30 minutes'
],
'high' => [
'description' => 'Major feature broken',
'sla_time' => '4 hours',
'escalation_time' => '2 hours'
],
'medium' => [
'description' => 'Standard support request',
'sla_time' => '24 hours',
'escalation_time' => '12 hours'
],
'low' => [
'description' => 'Minor issues, questions',
'sla_time' => '72 hours',
'escalation_time' => '48 hours'
]
];
Changing Priority
Method 1: Quick Priority Change
- In ticket list view
- Click priority indicator
- Select new priority
- Add priority change reason
- Confirm change
Method 2: From Ticket Details
- Open ticket details
- Click "Change Priority" button
- Select new priority level
- Add justification
- Update SLA deadline
- Save changes
Ticket Categories and Types
Managing Categories
Default Categories
- Technical Issues - System problems, bugs
- Billing Questions - Payment, invoices, refunds
- Feature Requests - New functionality requests
- General Inquiries - Questions, information
- Account Issues - Login, profile problems
Creating Custom Categories
Go to Settings → Categories
Click "Create Category"
Fill out category form:
Name: Category name Description: Brief description Parent Category: Main category (optional) Department: Assigned department Color: Visual identifier Icon: Category icon
Set category rules:
- Auto-assignment rules
- SLA requirements
- Escalation procedures
Ticket Types
Default Types
- Incident - Something is broken
- Service Request - Request for service
- Change Request - System modification
- Problem - Root cause analysis
Type-Specific Workflows
// Type-specific handling
$typeWorkflows = [
'incident' => [
'priority' => 'high',
'sla' => '4 hours',
'escalation' => '2 hours'
],
'service_request' => [
'priority' => 'medium',
'sla' => '24 hours',
'escalation' => '12 hours'
],
'change_request' => [
'priority' => 'low',
'sla' => '72 hours',
'approval_required' => true
]
];
Ticket History and Audit Trail
Viewing Ticket History
Complete Timeline
- Open ticket details
- Click "History" tab
- View chronological events:
- Ticket creation
- Status changes
- Assignments
- Comments added
- Attachments uploaded
- Priority changes
- Category updates
History Event Types
// History event types
$historyEvents = [
'ticket_created' => 'Ticket was created',
'status_changed' => 'Status changed from X to Y',
'assigned' => 'Ticket assigned to agent',
'reassigned' => 'Ticket reassigned to different agent',
'priority_changed' => 'Priority changed from X to Y',
'category_changed' => 'Category changed from X to Y',
'comment_added' => 'Comment added by user',
'attachment_added' => 'File attached',
'escalated' => 'Ticket escalated',
'closed' => 'Ticket closed',
'reopened' => 'Ticket reopened'
];
Audit Trail Features
Detailed Logging
- User actions - Who did what
- Timestamps - When actions occurred
- IP addresses - Where actions came from
- Change details - What exactly changed
- Reason codes - Why changes were made
Export History
- Click "Export History" button
- Choose export format:
- PDF report
- Excel spreadsheet
- CSV data file
- Select date range
- Download file
Bulk Operations
Selecting Multiple Tickets
Selection Methods
- Individual selection - Click checkboxes
- Select all - Select all visible tickets
- Filter selection - Select by criteria
- Range selection - Select ticket range
Bulk Actions Available
// Available bulk operations
$bulkActions = [
'change_status' => 'Update status for multiple tickets',
'change_priority' => 'Update priority for multiple tickets',
'assign_agent' => 'Assign tickets to agent',
'change_category' => 'Update category for multiple tickets',
'add_tag' => 'Add tags to multiple tickets',
'export' => 'Export ticket data',
'delete' => 'Delete multiple tickets',
'merge' => 'Combine related tickets'
];
Performing Bulk Operations
Example: Bulk Status Change
- Select multiple tickets
- Click "Bulk Actions" button
- Choose "Change Status"
- Select new status
- Add bulk operation reason
- Confirm changes
- Review results
Bulk Assignment
- Select tickets to assign
- Choose "Assign Agent"
- Select target agent
- Set assignment reason
- Confirm assignment
- Verify assignments
Advanced Ticket Features
Ticket Merging
When to Merge Tickets
- Duplicate tickets from same customer
- Related issues that should be handled together
- Multiple tickets about same problem
- Customer submitted same issue multiple times
Merge Process
- Select tickets to merge
- Click "Merge Tickets"
- Choose primary ticket (keeps original ID)
- Set merge reason
- Confirm merge operation
- Review merged ticket
Ticket Splitting
When to Split Tickets
- Single ticket contains multiple issues
- Different departments need to handle parts
- Customer has multiple unrelated problems
- Complex issue needs separate tracking
Split Process
- Open ticket to split
- Click "Split Ticket" button
- Select content to move
- Create new ticket
- Set new ticket details
- Confirm split operation
Ticket Templates
Creating Templates
Go to Settings → Templates
Click "Create Template"
Fill out template:
Name: Template name Subject: Default subject Description: Template content Category: Default category Priority: Default priority Department: Default department
Save template
Using Templates
- Click "Create Ticket"
- Select "Use Template"
- Choose template
- Customize content
- Submit ticket
SLA Management
SLA Configuration
Setting SLA Times
// SLA configuration example
$slaSettings = [
'urgent' => [
'first_response' => '1 hour',
'resolution' => '4 hours',
'business_hours' => true
],
'high' => [
'first_response' => '4 hours',
'resolution' => '24 hours',
'business_hours' => true
],
'medium' => [
'first_response' => '24 hours',
'resolution' => '72 hours',
'business_hours' => false
],
'low' => [
'first_response' => '72 hours',
'resolution' => '168 hours',
'business_hours' => false
]
];
SLA Monitoring
- Response time tracking - Time to first response
- Resolution time tracking - Time to close ticket
- Breach alerts - Notifications when SLA is at risk
- Performance reports - SLA compliance metrics
Escalation Rules
Automatic Escalation
// Escalation rules
$escalationRules = [
'time_based' => [
'trigger' => 'SLA breach imminent',
'action' => 'Notify manager',
'time' => '30 minutes before breach'
],
'priority_based' => [
'trigger' => 'Urgent ticket not assigned',
'action' => 'Auto-assign to senior agent',
'time' => '15 minutes'
],
'customer_based' => [
'trigger' => 'VIP customer ticket',
'action' => 'Immediate notification',
'time' => 'Immediate'
]
];
Best Practices
Ticket Management Best Practices
For Agents
- Respond Quickly - Meet SLA requirements
- Use Clear Language - Professional communication
- Update Status Regularly - Keep customers informed
- Add Internal Notes - Document your actions
- Follow Up - Ensure customer satisfaction
For Managers
- Monitor Performance - Track team metrics
- Review Escalations - Handle complex issues
- Provide Training - Improve team skills
- Optimize Workflows - Streamline processes
- Analyze Trends - Identify common issues
For Customers
- Provide Clear Information - Detailed problem description
- Include Relevant Details - System info, error messages
- Attach Files - Screenshots, logs, documents
- Respond Promptly - Answer agent questions quickly
- Rate Service - Provide feedback on resolution
Common Mistakes to Avoid
Agent Mistakes
- ❌ Not updating ticket status
- ❌ Using unclear language
- ❌ Not following up with customers
- ❌ Ignoring SLA requirements
- ❌ Not documenting actions
Customer Mistakes
- ❌ Vague problem descriptions
- ❌ Not providing contact information
- ❌ Submitting duplicate tickets
- ❌ Not responding to agent questions
- ❌ Not rating service quality
Troubleshooting
Troubleshooting Common Issues
Ticket Not Appearing
- Check filters - Ensure ticket isn't filtered out
- Verify permissions - Confirm access rights
- Refresh page - Clear browser cache
- Check assignment - Verify ticket assignment
Email Notifications Not Working
- Check SMTP settings - Verify email configuration
- Review notification preferences - Check user settings
- Check spam folder - Look for blocked emails
- Test email delivery - Send test message
Performance Issues
- Clear browser cache - Refresh page data
- Check internet connection - Verify connectivity
- Reduce ticket list size - Use filters to limit results
- Contact administrator - Report persistent issues
Getting Help
Support Resources
- Documentation - Comprehensive guides
- Video Tutorials - Step-by-step instructions
- Community Forum - User discussions
- Email Support - Direct assistance
Contact Information
- Technical Support - support@yourdomain.com
- Training Requests - training@yourdomain.com
- Feature Requests - features@yourdomain.com
- General Inquiries - info@yourdomain.com
Next Steps
- Explore Live Chat for real-time communication
- Learn Knowledge Base for self-service support
- Set up AI Features for intelligent automation
- Review Analytics for performance insights
Master Ticket Management to provide exceptional customer support. Start with basic operations and gradually explore advanced features as you become more comfortable with the system.