> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.swellsystem.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Client Portal Overview

# Client Portal Overview

## Introduction

The Client Portal module allows you to provide your clients and companies with secure, self-service access to view their invoices, proposals, contracts, tasks, projects, support tickets, and files. The portal is fully customizable, allowing you to control what clients see and how they interact with your services.

## Key Features

### 1. Portal Configuration
- **Custom Branding**: Upload your logo and customize colors to match your brand
- **Welcome Message**: Personalized greeting for your clients
- **Module Management**: Enable or disable specific modules (invoices, proposals, tasks, etc.)
- **Feature Toggles**: Control file sharing and activity feed visibility
- **Custom CSS**: Full styling control over the portal appearance

### 2. Custom Menu Items
- **Module Links**: Direct access to enabled modules
- **External Links**: Add links to third-party services (opens in new tab option)
- **Custom Pages**: Link to pages built with the content builder
- **Drag & Drop Sorting**: Easily reorder menu items
- **Enable/Disable**: Toggle menu item visibility

### 3. Custom Pages
- **Content Builder**: Visual drag-and-drop page builder
- **Merge Tags**: Dynamic variables for displaying client-specific data
- **Page Templates**: Pre-built templates for invoices, proposals, projects, etc.
- **SEO Controls**: Meta titles and descriptions
- **Visibility Controls**: Control who can see which pages

### 4. Token-Based Access
- **Secure Authentication**: No passwords required - clients access via secure token links
- **Email Invitations**: Send portal access links via email
- **Configurable Expiration**: Set how long access links remain valid (default: 30 days)
- **Access Tracking**: Monitor when clients access the portal

### 5. Client Portal Sections
- **Invoices**: View and download invoices
- **Proposals**: View and respond to proposals
- **Contracts**: View and sign contracts
- **Tasks**: View assigned tasks and progress
- **Projects**: View project details and milestones
- **Support Tickets**: Create and manage support tickets
- **Files**: Upload and download shared files
- **Activity Feed**: Timeline of all client-related activities

## Getting Started

### Step 1: Configure Your Portal

1. Navigate to **Settings → Client Portal**
2. Set your portal name and upload a logo
3. Choose your brand colors
4. Write a welcome message for your clients
5. Select which modules clients can access
6. Enable features like file sharing and activity feed
7. Click "Save Settings"

### Step 2: Customize Your Menu

1. In the Client Portal settings, click the "Menu Items" tab
2. Click "Add Menu Item"
3. Choose the item type:
   - **Module**: Link to invoices, proposals, tasks, etc.
   - **External Link**: Link to a third-party website
   - **Custom Page**: Link to a page you've created
4. Set the label and icon
5. Configure sort order
6. Save the menu item

### Step 3: Create Custom Pages (Optional)

1. Click "Page Builder" in the Client Portal settings
2. Enter a title and description
3. Use the content builder to design your page
4. Add merge tags for dynamic content (e.g., `{{contact.name}}`, `{{invoice.total}}`)
5. Set SEO information
6. Publish the page

### Step 4: Invite Your Clients

1. Navigate to a Contact or Company detail page
2. Click "Send Portal Invitation"
3. Optionally add a custom message
4. Click "Send Invitation"

The client will receive an email with a secure link to access their portal. The link expires after the configured number of days (default: 30 days).

## Portal Access for Clients

### How Clients Access the Portal

1. Client receives an email invitation with a portal access link
2. Client clicks the link (no password required)
3. Portal opens showing the client's dashboard
4. Client can navigate using the sidebar menu

### What Clients Can Do

- View all their invoices, proposals, contracts, tasks, and projects
- Create new support tickets
- Reply to existing tickets
- Upload and download files (if enabled)
- View activity timeline (if enabled)
- Access custom pages created for them

## Security

### Token-Based Authentication
- Portal uses secure, time-limited tokens instead of passwords
- Tokens are automatically generated when you send invitations
- Tokens expire after the configured number of days
- New tokens can be sent at any time

### Data Isolation
- Clients can only see their own data
- Companies see company-level data and related contacts' data
- All data is tenant-isolated

### Best Practices
- Use HTTPS for all portal access
- Set appropriate token expiration periods
- Monitor portal access activity
- Regularly review enabled modules and menu items

## Customization

### Merge Tags / Variables

Use merge tags in custom pages to display dynamic client data:

**Contact Variables:**
- `{{contact.name}}` - Full name
- `{{contact.email}}` - Email address
- `{{contact.phone}}` - Phone number
- `{{contact.company}}` - Company name

**Invoice Variables:**
- `{{invoice.number}}` - Invoice number
- `{{invoice.total}}` - Total amount
- `{{invoice.status}}` - Invoice status

**Project Variables:**
- `{{project.name}}` - Project name
- `{{project.status}}` - Project status
- `{{project.progress}}` - Project progress percentage

**System Variables:**
- `{{system.current_date}}` - Current date
- `{{system.company_name}}` - Your company name

See the [Merge Tags Reference](../merge-tags-reference.md) for a complete list.

## Integration with Other Modules

### CRM
- Portal invitations sent from Contact/Company detail pages
- Activity feed shows portal access events
- Client portal activities appear in CRM activity timeline

### Finance
- Clients can view and download invoices
- Payment history visible in portal
- Invoice details with payment options

### Projects
- Clients can view project details
- Task lists and progress tracking
- Project files accessible in portal

### Support
- Clients can create tickets from portal
- View ticket history and replies
- File attachments supported

### Proposals & Contracts
- View proposals and contracts
- Respond to proposals
- Sign contracts digitally

## Troubleshooting

### Client Can't Access Portal

1. **Check token expiration**: Verify the token hasn't expired
2. **Verify email sent**: Check that the invitation email was sent successfully
3. **Resend invitation**: Send a new portal invitation
4. **Check portal status**: Ensure portal is enabled in settings

### Client Can't See Certain Items

1. **Check module settings**: Verify the module is enabled in portal settings
2. **Check menu items**: Ensure menu items are enabled and visible
3. **Verify data exists**: Confirm the client has invoices/proposals/etc. assigned to them

### Portal Looks Incorrect

1. **Check custom CSS**: Review custom CSS for errors
2. **Verify logo upload**: Ensure logo is uploaded correctly
3. **Clear browser cache**: Have client clear their browser cache

## Best Practices

1. **Customize Branding**: Match portal colors and logo to your brand
2. **Welcome Message**: Write a friendly, helpful welcome message
3. **Enable Relevant Modules**: Only enable modules clients will actually use
4. **Organize Menu**: Use logical menu item ordering
5. **Test Portal**: Regularly test the portal as a client would see it
6. **Monitor Access**: Review portal access logs periodically
7. **Keep Content Updated**: Update custom pages and menu items as needed
8. **Provide Support**: Include contact information in portal for client questions

## Next Steps

- Learn about [Custom Pages and Content Builder](https://help.swellsystem.com/en/article/custom-pages-in-client-portal-1l3qbqg/)
- Read the [Merge Tags Reference](../merge-tags-reference.md)
- See [API Documentation](https://help.swellsystem.com/en/article/client-portal-api-egxmdl/) for integration options
