Getting Started

Onboard your first client

From provisioning a sub-account to verifying their sending domain and sending a test campaign — the complete client onboarding workflow.

What a client sub-account is

A client sub-account is a fully isolated workspace within your agency. Each client has their own subscriber lists, campaigns, automations, templates, and settings. They log in to the same platform UI but can only see and interact with their own data — they cannot access other clients' information, and they cannot see platform-level settings.

As the agency owner, you can view and operate any client's account from your console. This lets you set up campaigns, troubleshoot issues, or do hands-on work on behalf of a client without sharing passwords.

Sub-accounts can be on different plans — you might offer your top-tier clients a higher sending limit or access to SMS, while basic clients are on a simpler plan. You control this from the client settings in your console.

Provisioning a new client

Go to Console → Clients → Add Client. You will see a form with the following fields:

  • Company / Client name: Shown in your console list and as the header on their dashboard.
  • Login email: The email address they will use to sign in. They receive their welcome email here.
  • Plan: Controls feature access, subscriber limits, and sending volumes. Plans are configured under Console → Plans.
  • Timezone: Used to display campaign analytics and for scheduling sends at their local time.

Click Create client. Mally provisions the sub-account and sends a welcome email to the client with a login link and temporary password. The client is prompted to set a permanent password on first login.

Managing multiple contacts per client

Once a client account exists, additional users can be added from within that client's settings under Team Members. These are client-level users — they only see their own account, not the agency console.

Setting up their sender identity

The sender identity defines how emails from this client appear in recipients' inboxes. Navigate to the client's account (use View as client from your console, or log in as them) and go to Settings → Sender Identity.

Fill in:

  • From name: What shows in the "From" field — e.g. "Sarah at Acme Co." or just "Acme Newsletters". Keep this recognisable to recipients.
  • From email: The sending address, e.g. hello@client-domain.com. This must be on a domain you have verified with your sending gateway (AWS SES).
  • Reply-to email: Where replies land. Can differ from the from address — useful if replies should go to a CRM inbox or a monitored support address.
  • Physical address: Required by CAN-SPAM and CASL. Appears in the footer of every campaign.

Domain verification

Each sending domain must be verified with AWS SES before Mally can use it to deliver campaigns. Verification proves domain ownership and sets up DKIM signing, which significantly improves deliverability.

Go to Settings → Sending Domains → Add domain and enter the domain (e.g. newsletters.clientdomain.com). Mally will display the DNS records you need to add:

  • TXT record for domain verification: Confirms you own the domain. Usually takes a few minutes to propagate.
  • CNAME records for DKIM (3 records): Each CNAME enables a DKIM key. All three must be added for signing to work.
  • MX record for bounce handling (optional): Required if you want Mally to receive bounce notifications via email rather than SNS. Most users use SNS — see the AWS SES guide.

Once Mally shows a green "Verified" status next to the domain, it is ready to use. You can now select it in campaign settings.

Sending a test campaign

Before handing the account over to the client, send a test campaign to confirm the pipeline is working end to end. Create a small test list with your own email address (or a test inbox like Mailpit or Mail Tester).

  1. 1Go to Subscribers → Lists → Create list, name it "Internal Test"
  2. 2Add your own email address as a subscriber
  3. 3Go to Campaigns → New Campaign
  4. 4Select "Internal Test" as the list, fill in a subject line, and write a short body
  5. 5Click Send now (or Schedule for a few minutes ahead)
  6. 6Check the inbox — confirm delivery, DKIM signature, and unsubscribe link
  7. 7Return to the campaign analytics page and verify the open is recorded

Check your sending gateway first

If the test campaign fails, go to Console → Gateways and check that your AWS SES SMTP credentials are saved and showing a green "Connected" status. See the Connect AWS SES guide if you have not done this yet.