Everyone

Multi-Contact Accounts

How to add sub-contacts to a client account with separate logins and role-based portal access.

Last updated 1776211200
  • Adding a Contact (Client Self-Service)
  • Contact Email Notifications
  • Editing a Contact
  • Removing a Contact
  • Login Independence
  • Related Articles
  • What Are Contacts?

    A single client account can have multiple contacts — individuals who can log into the client portal with their own email address and password but are associated with the same billing account. This is useful for companies where different people manage billing, technical operations, and account administration.

    The primary contact is the client record itself (the account owner). Additional contacts are sub-contacts stored in the client_contacts table, linked to the main client record.


    Contact Roles

    Each contact is assigned one of three roles that control what they can see and do in the client portal:

    Role Portal Access
    Admin Full access — identical to the primary client login
    Billing Invoices and payment only — can view and pay invoices, download PDFs; cannot access services or tickets
    Technical Services and domains only — can view services and domains, open support tickets; cannot view invoices or make payments

    [!TIP] For a small business with separate IT and accounts teams, create a billing contact for the finance team and a technical contact for the developer. Neither sees the other's data.


    Adding a Contact (Admin)

    1. Go to Admin → Clients → [Client record] → Contacts tab.
    2. Click Add Contact.
    3. Fill in the contact form (see fields below).
    4. Click Save Contact.

    Contact Form Fields

    Field Notes
    First name Required
    Last name Required
    Email address Must be unique across all client contacts and clients; used as login
    Password Auto-generated if left blank (emailed to the contact)
    Role Admin, Billing, or Technical
    Phone number Optional
    Send invitation email Checkbox; sends a welcome email to the contact with login instructions

    Adding a Contact (Client Self-Service)

    Clients can add contacts themselves from Client → Profile → Contacts tab, if the administrator has enabled self-service contact management at Admin → Settings → Client Portal → Allow clients to manage contacts.

    The client follows the same process: click Add Contact, fill in name, email, password, and role, then save. The new contact receives a welcome email.


    Contact Email Notifications

    Commerce sends different email notifications to contacts based on their role:

    Email type Primary (Admin) Billing contact Technical contact
    Invoice generated / due Yes Yes No
    Payment received Yes Yes No
    Service provisioned / suspended Yes No Yes
    Domain expiry reminder Yes No Yes
    Ticket opened / replied Yes No Yes
    Account updates Yes No No

    [!IMPORTANT] Billing contacts receive invoice and payment emails but cannot open or view support tickets (unless their role is Admin). Technical contacts receive service and ticket emails but do not see invoice amounts. Design your contact roles to match your clients' internal team structure.


    Editing a Contact

    To edit an existing contact, go to Admin → Clients → [Client] → Contacts, click the pencil icon next to the contact. You can update their name, email, role, or reset their password.

    Clients with self-service enabled can do the same from their own profile.


    Removing a Contact

    To remove a contact:

    1. On the Contacts tab, click the Remove button next to the contact.
    2. A password confirmation modal appears.
    3. Confirm to delete the contact.

    [!IMPORTANT] Removing a contact is permanent. Their login credentials are deleted immediately. This action cannot be undone. If you need to temporarily disable a contact, consider changing their password instead.

    The primary client contact cannot be removed — it is the account itself. To close an account, see Suspending & Unsuspending or use the archive/delete flow from the client record.


    Login Independence

    Each contact's session is completely independent. A billing contact can be logged in at the same time as the primary client and the technical contact — there is no session conflict. Each session uses its own cookie.


    Related Articles