Contacts

Manage the master contact database used across mailing lists, imports, personalization, validation, and send history.

Purpose

What the Contacts Module Controls

The Contacts module manages the global contact records in Virtual Mailer. These are the master identities behind mailing list memberships. A single contact can belong to multiple mailing lists without being duplicated as separate master records.

Master Identity

Stores the canonical email address and profile fields such as display name, first name, last name, company, phone, and location data.

Shared Data

Changes made to a contact affect that contact everywhere it is used, including any mailing lists linked to the same master record.

Quality Control

Supports import review, duplicate prevention, filtered validation runs, and bulk cleanup for better deliverability and cleaner audience data.

Think of Contacts as the shared address book and Mailing Lists as the audience-group layer built on top of those records.
Main Screen

Working in the Contacts Module

  • Create: use New to open the Contact Editor and add a new master contact.
  • Edit: double-click any contact row to open the selected record.
  • Delete: remove one or more selected contacts from the database.
  • Import: open the CSV preview and mapping workflow to add many contacts at once.
  • Validate Emails: run bulk email validation against the currently visible rows in the grid.
  • Filter Row: show or hide the grid filter row and work on filtered subsets of contacts.
Deleting a contact is broader than removing a mailing list member. Contact deletion removes the master record, removes mailing-list memberships tied to it, and also removes sent-message history connected to that contact.
Grid Columns

What the Main Grid Shows

Column Meaning Why It Matters
Name Computed display value shown as Last, First when both exist. Useful for operator review and quick identification in large datasets.
Email Display Name Friendly display name stored on the contact. Can be used for sender-facing identity and personalization.
Email Address The primary unique email address for the contact. This is the critical identity field and duplicate creation is blocked.
Phone / Mobile Optional contact details. Useful for CRM-style enrichment and operator context.
State / Postal Selected location fields from the contact profile. Can support segmentation, regional review, and data cleanup.
Comments Free-form notes stored on the contact. Useful for internal operator context and list-maintenance notes.
Lists How many mailing lists currently reference the contact. High-value context before editing or deleting a shared record.
Record Counts

Filtering and Visible-Row Behavior

The Contacts grid updates its record count and validation scope based on the rows currently displayed.

  • Filter-aware count: the contact count shown at the bottom reflects visible rows after filtering, not always the full database total.
  • Validation scope: Validate Emails processes only the visible rows currently shown in the grid.
  • Selection reset: changing filters clears stale selection to avoid accidental operations on previously selected rows.
A filtered validation run is useful when you want to inspect only a region, domain, import batch, or suspected subset of problematic contacts.
Create and Edit

Using the Contact Editor

The Contact Editor is the detailed profile form for a single master contact record. It supports both new-contact creation and editing of existing records.

Editable Fields

  • Email Address
  • Email Display Name
  • First Name / Last Name
  • Company
  • Address / City / State / Postal / Country
  • Website
  • Phone / Mobile
  • Comments

Read-Only Context

  • Created Date: shown for existing contacts.
  • Total Emails Sent: calculated from sent-message records for that contact.
  • Mailing Lists Grid: shows which lists the contact belongs to, including unsubscribe and disabled status.
Editor Rules

Save Behavior and Validation

  • Email required: the email address must be present before the contact can be saved.
  • Format check: invalid email syntax is blocked at save time.
  • Duplicate protection: new contacts cannot be created with an email address already used by another contact.
  • Edit duplicate protection: if you change the email address of an existing contact, the new email must still be unique.
  • Dirty-state save: for existing contacts, the Save button only enables when at least one field has changed and the email is still valid.
  • New-contact save: for new contacts, Save enables as soon as a valid email address is present.
Mailing List Context

What the Contact Editor Shows About Mailing Lists

For existing contacts, the editor includes a read-only grid of mailing-list memberships associated with the selected contact.

Field Meaning Use
Name The mailing list the contact belongs to. Shows current audience membership for the selected contact.
Unsub Whether the contact is unsubscribed on that specific list. Useful for support and consent review.
Disabled Whether the contact is operationally suppressed on that list. Useful when diagnosing why someone did not receive a campaign.
Last Mailed The latest send date tied to campaigns that used that list for this contact. Quick support context for delivery-history review.
Created When that list membership was created. Helpful for auditability and import review.
CSV Import

How Contact Import Works

Contact import uses the same two-stage CSV workflow used elsewhere in Virtual Mailer: file preview first, field mapping second.

  1. Select Import from the Contacts module.
  2. Choose a .csv or tab-delimited .txt file.
  3. Preview the file and confirm whether the first row contains headers.
  4. Select the correct delimiter: comma, tab, semicolon, or pipe.
  5. Continue to the field-mapping step.
  6. Drag CSV columns onto Virtual Mailer destination fields.
  7. Map at least the Email Address field.
  8. Run the import and review Added, Duplicates, and Errors.
Mapping Rules

What the Mapping Step Does

  • Drag-and-drop mapping: source columns are dragged from the file preview list onto Virtual Mailer destination fields.
  • Email required: import cannot continue unless Email Address is mapped.
  • Clear action: mapped fields can be cleared individually.
  • Progress feedback: the import shows progress while records are validated and processed.
  • Optional list linking: the same import flow can also be used from Mailing Lists to create contacts and immediately link them to a selected list.
Duplicate Handling

How Imported Data Is Treated

  • Invalid emails are skipped: rows with unusable email values count as errors or skipped rows.
  • Existing contacts are reused: imports are designed to avoid creating duplicate master contact identities.
  • Duplicate email creation is blocked: the system protects the global contact table from duplicate email-address records.
  • Import results are summarized: after completion, Virtual Mailer reports Added, Duplicates, and Errors.
Validation

Email Validation Workflow

The Contacts module includes a bulk validation tool intended to help identify problematic email addresses before campaigns are sent.

  • Visible rows only: validation runs only on contacts currently displayed in the grid.
  • Progress panel: the UI shows progress and the current email being checked.
  • Cancelable run: active validation can be cancelled.
  • Summary output: results show total checked, passed, and failed counts.
  • Log support: failed addresses are written to the log when failures are detected.
Use the filter row before validation if you want to review only a recent import batch, a specific domain, or a region-specific subset of contacts.
Deletion Rules

What Happens When Contacts Are Deleted

Deleting contacts from the Contacts module is a true master-record delete, not just a list-membership cleanup.

  • Mailing-list memberships are removed: linked MailingListMembers records are deleted first.
  • Sent-message history is removed: sent-message records tied to the deleted contacts are also removed.
  • The contact record is removed: the master MailingListAddresses record is then deleted.
  • Multiple selection is supported: the module can delete multiple selected contacts in one operation.
Use contact deletion carefully. If you only want to remove someone from one audience, do that from the Mailing List Editor instead of deleting the master contact.
Licensing Notes

Basic-Version Contact Limits

  • Max Contacts: the Basic version is limited to 500 total contacts.
  • Single-contact creation: new-contact creation checks the current global contact count before opening the editor.
  • CSV import rows: Basic imports are also capped per run and may be truncated during preview before import continues.
  • Import respects remaining capacity: if the file exceeds remaining contact allowance, Virtual Mailer can offer a partial import up to the allowed count.
Best Practices

How to Keep the Contact Database Clean

  • Use consistent naming and company conventions so personalization stays predictable.
  • Validate newly imported contacts before including them in larger campaigns.
  • Avoid deleting contacts when suppression or list-level removal is enough.
  • Use comments for operator context, not for storing private or unnecessary sensitive data.
  • Review high-list-count contacts carefully before editing or deleting because they may be shared across several active audiences.
Related Guides

Read These Next