Contacts
Organize and manage contacts across different platforms like WhatsApp and SaaS and also can add, edit, filter, import, export, and manage contacts with ease.
1. Adding New Contacts
View contact list and create new contacts.
Contact List View

All created contacts will appear in the Contact List table.
Contact List Column Breakdown
| Column | Description |
|---|---|
| SR.NO | Serial number of the contact in the list |
| Name | Full name of the contact (clickable to view details) |
| Type | Contact classification: lead, customer, or guest |
| Phone | Contact's phone number |
| Assigned | The user or team assigned to the contact |
| Initiate chat | WhatsApp icon button to send template-based messages and start conversations |
| Status | Contact's current progress status (e.g., New, In Progress) |
| Source | Where the contact came from: Facebook or WhatsApp |
| Group | Shows which group(s) the contact belongs to (displays N/A if no group assigned) |
| Opted Out | Indicator showing if contact has opted out from receiving campaign messages |
| Active | Toggle switch to activate/deactivate contact visibility |
| Created At | Shows how recently the contact was added |
Additional Actions in the Contact List
- Activation Toggle: Use the blue switch to turn a contact on/off.
- Search: Use the top-right search box to find contacts quickly.
- Bulk Actions: Select multiple contact checkboxes to reveal bulk action buttons:
- Bulk Delete: Remove multiple contacts at once
- Bulk Actions: Change status, source, assign to groups, or reassign contacts in bulk
- Initiate chat: Send template messages to multiple contacts simultaneously
- Column Visibility: Click the Columns icon to show or hide specific table columns based on your needs.
- Filter Panel: Use the filter icon to open a side panel with advanced filtering options.
- Import Contacts: Click
Import Contactsto upload contacts in bulk from CSV or Excel.
Only active contacts may appear in downstream workflows or reports.
How to Create a New Contact
This guide walks you through the process of creating a new contact using the Add New Contact form.
Step 1: Open the Contact Form
- Click the
+ New Contactbutton on the contacts page. - A form titled Add New Contact will open.

Step 2: Fill in Contact Details
In the Contact Details tab, enter the following:
Required Fields (* marked)
| Field | Description |
|---|---|
| Status* | Select the contact’s current status: • New• In Progress• Contacted• Qualified• Closed |
| Source* | Choose where the lead came from: • Facebook• WhatsApp |
| First Name* | Enter the contact’s first name |
| Last Name* | Enter the contact’s last name |
| Type* | Select the contact type: • Lead• Customer• Guest |
| Email* | Provide a valid email address |
| Phone* | Enter the contact’s phone number with country code |
Optional Fields
| Field | Description |
|---|---|
| Assigned | Assign the contact to a team or user (e.g., Staff members) |
| Company | Enter the associated company name |
| Website | Provide a website URL if applicable |
| Assign to groups | Assign the contact to one or more groups for organization |
Step 3: Fill in Other Details (Optional)
Switch to the Other Details tab to add additional background information:
| Field | Description |
|---|---|
| City | Contact's city |
| State | State or province |
| Country | Country name |
| Zip Code | Postal or ZIP code |
| Address | Street address or location |
| Description | Internal notes or contact background |
Step 4: Save the Contact
- Once all required fields are completed, click the
Addbutton to save. - To discard the form, click
Cancel.
Contact Creation Limits
The number of contacts you can create depends on your subscription plan:
- The Unlimited badge (shown in the top-right corner) indicates your contact creation limit based on your purchased plan.
- Different plans may have different contact quotas (e.g., 100 contacts, 1,000 contacts, or unlimited).
- If you reach your plan's contact limit, you'll need to upgrade your subscription to add more contacts.
Note: Check your plan details to see your current contact limit and usage.
Understanding Contact Types
WhatsMark SaaS supports three types of contacts to help you categorize and manage your interactions effectively:
Contact Type Definitions
| Type | Description | Usage |
|---|---|---|
| Lead | Potential customers who have shown interest in your business | Used for prospecting and nurturing campaigns |
| Customer | Existing clients who have made purchases or established business relationships | Used for customer support, retention, and loyalty programs |
| Guest | Users who have sent messages but haven't been converted to leads or customers yet | Automatically assigned to new message senders |
Guest Type Behavior
Auto-Classification
When someone sends a message to your WhatsApp Business number for the first time, they are automatically stored as a Guest type if the WhatsApp Auto Lead setting is not enabled.
- Default Storage: All new incoming messages from unknown numbers are stored as guests
- Auto Lead Setting: When Auto Lead is enabled, contacts are created as Lead type instead of guests
- Manual Conversion: You can manually convert guests to leads or customers at any time by editing their contact details
- Usage in Automation: Guest contacts can be targeted in:
- Message Bots
- Template Bots
- Campaigns
- Bulk messaging operations
Best Practice
Review your guest contacts regularly and convert promising prospects to leads for better tracking and follow-up workflows.
Notes (Available After Contact Is Created)
Once the contact is successfully added, a Notes tab will become available. You can use this tab to:
- Add follow-up information
- Track conversation history
- Write internal remarks
Important: You must first create the contact before accessing the Notes section.
Notes Section (Only in Edit Mode)

Note: The Notes tab is available only after a contact is created. You cannot add notes during contact creation.
Adding Notes
- Open the contact in Edit mode.
- Navigate to the Notes tab.
- Use the Add Notes input to write comments, updates, or follow-ups.
- Click
Addto save the note.
Notes List
- All previously added notes appear in chronological order.
- Each note shows a timestamp and can be deleted using the trash icon.
Initiate Chat - Send Template Messages

The Initiate chat feature allows you to send template-based WhatsApp messages to contacts to start conversations in compliance with Meta's 24-hour messaging policy.
How It Works
- Click the WhatsApp icon in the Initiate chat column for any contact.
- An Initiate chat popup window will open.
Popup Features
Template Selection
- Template Dropdown: Choose from pre-approved WhatsApp message templates.
- Templates must be approved by Meta before they can be used.
Variables Section
Templates often contain dynamic variables that can be personalized:
- Variable Input Field: Type text or use dynamic merge fields from contacts.
- @ Mention System: Type the
@symbol to trigger a popup showing all available merge fields:- Contact First Name
- Contact ID
- Contact Last Name
- Contact Company
- Contact Email
- Contact Phone Number
- Contact Website
- Contact Type
- Auto-Complete: Select any field from the popup to automatically insert it as a variable.
- The selected merge field will be replaced with the actual contact data when the message is sent.
Message Preview
- The right panel shows a live preview of how the message will appear.
- Variables are highlighted in blue (e.g.,
@contact). - Preview updates automatically as you fill in variables.
Sending the Message
- Click
sendto deliver the template message. - Click
cancelto close without sending.
Meta's 24-Hour Messaging Policy
Conversation Window
Once a contact replies to your template message, a 24-hour conversation window opens. During this time, you can send free-form messages without using templates. After 24 hours of inactivity, you must use another template to re-initiate the conversation.
Use Cases
- Lead Follow-up: Send initial outreach messages to new leads
- Re-engagement: Reconnect with inactive contacts
- Appointment Reminders: Send scheduled notifications
- Order Updates: Notify customers about order status
Bulk Initiate Chat
Send template messages to multiple contacts at once:
- Select Contacts: Check the boxes next to contacts you want to message.
- Click Initiate chat: A purple
Initiate chatbutton appears in the toolbar. - Choose Template: Select a template and configure variables.
- Send: All selected contacts will receive the same template message.
Tip: Use this feature for campaigns, announcements, or batch follow-ups.
2. Export Contacts
Export your contact data for reporting, backup, or external processing.
How to Export
- Click the green
Export CSVbutton in the top-right corner of the contact list. - A CSV file containing all your contacts will be downloaded directly to your device.
3. Filtering Contacts

Use the advanced filter panel to quickly find specific contacts based on multiple criteria.
How to Use Filters
- Click the Filter icon (funnel icon) in the top-right area of the contact list.
- A Filters panel will slide in from the right side of the screen.
- Select your desired filter criteria from the dropdown menus.
- Click
Resetto clear all filters and return to the full contact list.
Available Filter Options
| Filter | Options |
|---|---|
| Type | Filter by Lead, Customer, or Guest |
| Assigned | Filter contacts assigned to a specific user or team |
| Status | New, In Progress, Contacted, Qualified, Closed |
| Source | Filter by origin: Facebook, WhatsApp, etc. |
| Groups | Filter contacts belonging to specific groups |
Filter Behavior
- Multiple Filters: You can combine multiple filters to narrow down results precisely.
- Real-time Updates: The contact list updates automatically as you select filter options.
- Export Impact: Filtering affects exports — only filtered contacts will be included in the CSV download.
Quick Reset
Use the Reset button at the top of the filter panel to instantly clear all active filters.
4. Bulk Actions

Perform actions on multiple contacts simultaneously to save time and effort.
Accessing Bulk Actions
- Select Contacts: Check the boxes next to the contacts you want to modify.
- Action Buttons Appear: Once contacts are selected, three action buttons appear in the toolbar:
- Bulk Delete (red button)
- Bulk Actions (green button)
- Initiate chat (purple button)
Bulk Actions Modal
Click the green Bulk Actions button to open the bulk modification modal.
Available Bulk Operations
| Action | Description |
|---|---|
| Status | Change the status of selected contacts (e.g., New, Contacted) |
| Source | Update the source field for multiple contacts |
| Assign to groups | Add selected contacts to one or more groups |
| Assigned | Reassign contacts to a different user or team |
How to Use Bulk Actions
- Select contacts using the checkboxes.
- Click
Bulk Actions. - Choose the fields you want to update from the dropdown menus.
- Click
Saveto apply changes orCancelto discard.
Important
Bulk actions cannot be undone. Make sure you've selected the correct contacts before applying changes.
5. Column Visibility Control
Customize which columns are displayed in the contact list table.
How to Show/Hide Columns
- Click the Columns icon (three vertical lines) in the top-right area.
- A Columns panel will open showing all available columns with checkboxes.
- Check or uncheck columns to show or hide them.
- Changes apply instantly to the table view.
6. Opt-Out Management
The Opted Out column indicates whether contacts have opted out from receiving campaign messages.
How Opt-Out Works
Automatic Opt-Out
- Opt-out status is managed automatically based on application settings.
- When a contact opts out (e.g., by replying with a keyword like "STOP"), their status updates automatically.
Manual Opt-Out
- You can manually set a contact's opt-out status from the contact list or edit screen.
- Use this when contacts request opt-out through other channels.
Campaign Impact
Campaign Restriction
Contacts marked as Opted Out will NOT receive campaign messages. This restriction applies to:
- Bulk Campaigns
- Automated Marketing Messages
- Template Broadcasts
Best Practices
- Respect Preferences: Always honor opt-out requests to maintain compliance and trust.
- Regular Review: Periodically check opt-out contacts to understand why they unsubscribed.
- Re-engagement: Consider targeted re-engagement campaigns for opted-out contacts (with appropriate consent).
Note: Opted-out contacts can still receive transactional messages (like order confirmations) and replies to their inquiries.
7. Contact Groups
The Group column displays which group(s) a contact belongs to.
Group Assignment
- Contacts can be assigned to groups for better organization.
- Shows
N/Awhen no group is assigned. - Multiple groups can be assigned to a single contact.
Assigning Contacts to Groups
Individual Assignment
During Contact Creation:
- When creating a new contact, use the Assign to groups field in the Contact Details tab.
- Select one or more groups from the dropdown.
- Click
Addto save the contact with the selected groups.
After Contact Creation:
- Edit the contact.
- Select the desired group from the group dropdown.
- Save the contact.
Bulk Assignment
- Select multiple contacts using checkboxes.
- Click
Bulk Actions. - Choose groups from the Assign to groups dropdown.
- Click
Save.
Benefits of Using Groups
- Organized Campaigns: Target specific groups with relevant messages.
- Easy Filtering: Quickly find contacts by group membership.
- Segmentation: Create customer segments for personalized communication.
8. Import Contacts

Import multiple contacts at once by uploading a properly formatted CSV file. The import process runs asynchronously using cron jobs and queue workers.
Preview
Step-by-Step Import Process
Step 1: Access Import Feature
- Navigate to the Contacts page.
- Click the
+ Importbutton in the top-right corner. - The Import contacts from CSV file modal will open.
Step 2: Download Sample File & Review Requirements
Before importing, review the CSV format requirements:
- Click Download Sample File & Read Rules link in the import modal.
- A popup will display important requirements:
CSV Requirements
Phone Number Column Requirement
Your CSV file must include a column named Phone. Each record in this column should contain a valid contact number, correctly formatted with the country code, including the '+' sign.
CSV Format and Encoding
Your CSV data should follow the specified format. The first row of your CSV file must contain the column headers, as shown in the example table. Ensure that your file is encoded in UTF-8 to prevent any encoding issues.
- Click the green
Download Samplebutton to get a pre-formatted CSV template.
Sample CSV Format
| Column | Required | Description |
|---|---|---|
| STATUS_ID | Yes | Status ID from Contact Statuses reference |
| SOURCE_ID | Yes | Source ID from Lead Sources reference |
| ASSIGNED_ID | No | Staff member ID to assign the contact to |
| FIRST_NAME | Yes | Contact's first name |
| LAST_NAME | Yes | Contact's last name |
| COMPANY | No | Company name |
| TYPE | Yes | Contact type: Lead, Customer, or Guest |
| No | Valid email address | |
| PHONE | Yes | Phone number with country code (e.g., +1 555 123 4567) |
| GROUP_ID | No | Group ID(s) from Contact Groups reference (comma-separated for multiple groups) |
Example Phone Format:
+1 555 123 4567
Step 3: Prepare Your CSV File
The import modal displays reference panels on the right side showing all available IDs you'll need:
Staff Members (Assigned ID)
Shows staff member IDs, names, and emails:
- Use the ID column value in your CSV's
assigned_idfield - Example:
4= Vatsal Patani,10= Corbital admin
Contact Groups
- Multiple groups can be assigned using comma separation:
"1,2,3"
Using Reference IDs
All reference panels show "Use for [field_name] column" links. Make sure to use the exact numeric IDs (not names) in your CSV file.
Step 4: Upload CSV File
- In the Import Contact section:
- Drag and drop your
.csvfile into the upload area, or - Click in the area to browse and select your file
- Drag and drop your
- Only CSV files are accepted.
- Click the blue
Uploadbutton to start the import. - Click
Cancelto close the modal without importing.
Import Logs

After uploading, your import is queued and processed in the background. Track progress on the Import Logs page.
Accessing Import Logs
- Navigate to Dashboard > Contact > Import Contacts
- The Import Logs page displays: "View and manage contact import history and status."
Import Logs Table Columns
| Column | Description |
|---|---|
| ID | Unique import job identifier |
| Status | Current status: Processing (yellow), Completed (green) |
| File | CSV filename with unique identifier (clickable link) |
| Progress | Progress bar showing import completion percentage |
| Records | Import statistics: • Total records to process • ✓ Successfully imported (green) • ✗ Failed records (red) |
| Created | When the import was initiated (e.g., "9 seconds ago", "3 weeks ago") |
| Actions | View details (eye icon) and Delete import log (trash icon) |
Status Types
- Processing: Import is currently being processed by queue workers
- Completed: All records have been processed
- Pending: Import is queued but not yet started (see troubleshooting below)
How Import Processing Works
The contact import process is handled asynchronously:
- Upload: You upload the CSV file
- Queue: Import job is added to the queue system
- Processing: Queue workers process records in batches
- Completion: Status updates to "Completed" with success/failure counts
Background Processing
Imports run in the background using cron jobs and queue workers. This allows you to continue working while large imports are processed without blocking the interface.
Troubleshooting Import Issues
Import Stuck in "Pending" Status
If your import remains in Pending status and doesn't progress:
Cron Job and Queue Worker Verification Required
Imports require properly configured cron jobs and queue workers to process. If imports don't start, the system's background job processing may not be running.
Common Import Errors
| Error Type | Cause | Solution |
|---|---|---|
| Invalid Phone | Missing country code or incorrect format | Add '+' and country code to all phone numbers |
| Invalid Status ID | Status ID doesn't exist in system | Use IDs from Contact Statuses reference panel |
| Invalid Source ID | Source ID doesn't exist | Use IDs from Lead Sources reference panel |
| Invalid Type | Type not in allowed values | Use only: Lead, Customer, or Guest |
| Duplicate Phone | Phone number already exists | Remove duplicates or update existing contacts |
| Missing Required | Required field is empty | Ensure all required columns have values |
| Encoding Issues | File not in UTF-8 | Re-save CSV with UTF-8 encoding |
Import Summary
Once imports complete successfully:
- New contacts appear in the main Contact List
- They can be filtered, exported, and managed like manually created contacts
- Import logs are retained for audit purposes
- Failed records can be reviewed and re-imported after correction
Contact Kanban Board
The Contact Kanban Board is a drag-and-drop interface that helps you visually manage the progress of your contacts across different stages. Each contact is represented as a card that you can move between status columns to update their current state.
Key Features
- Drag and drop contacts between status columns
- Instant visual feedback on contact progression
- Automatic status updates upon drop
- Responsive design for desktop and mobile
- Customizable status stages
Status Columns
The board organizes contacts into the following stages:
- Contacted – The contact has been reached out to
- Qualified – The contact meets the desired criteria
- In Progress – Communication or process is ongoing
- In Setup (formerly "In s") – Preparation phase before final closure (optional / customizable)
- Closed – The contact has reached a final state (deal closed, process complete, etc.)
All status labels are fully configurable based on your workflow.
How It Works
- Each contact appears as a draggable card in their current status column.
- Drag a contact card and drop it into another column to change its status.
- The backend updates the contact's status automatically once dropped.
- All changes are reflected in real time.