Migration from PostMark to ZeptoMail

Zoho ZeptoMail is a transactional email-sending service designed to ensure fast and reliable delivery of your critical emails. This guide explains how to migrate your transactional email setup from Postmark to ZeptoMail with minimal disruption.

Note

ZeptoMail is a dedicated transactional email service. Ensure that it is used only for transactional email streams and not for marketing or bulk email campaigns.  If you are looking for a bulk email provider, you can visit Zoho Campaigns. 

 

Terminology mapping

The table below maps commonly used Postmark terms to their ZeptoMail equivalents:

PostMarkZeptoMail
Servers Mail Agents
Sender signature Domains 
TemplatesTemplates
ActivityProcessed emails
SuppressionsSuppression List
StatisticsReports

Before migration

Before you begin migrating from PostMark to ZeptoMail, ensure you have the following in place:

  • Your PostMark Account API token.
  • Any critical transactional emails logs exported for reference.
  • All the transactional email streams, templates, webhooks, and suppression lists are reviewed and upto date. 

Migrating from PostMark to ZeptoMail

The migration process involves the following steps:

ZeptoMail account creation

To migrate to ZeptoMail you must first create a ZeptoMail account.

  1. Navigate to the ZeptoMail homepage and click Get started from the top right corner.

    get started
     
  2. Enter the relevant details and click Sign up for free.

    Screenshot of signup form
     
  3. Verify your account using the verification code sent to your registered mobile number.
  4. If you are already using other Zoho services and have an existing Zoho account, click Access ZeptoMail and proceed with the next steps.

    Access ZeptoMail for existing users
     
  5. Once you sign up and verify yourself, you will be directed to the Welcome page.
  6. Enter your organization name.

    welcome page
     
  7. Review the terms and conditions and click Get started.
  8. Add the domain you will use for sending transactional emails and click Add.

    Domain page
     
  9. Once the domain is added successfully, you will be redirected to the ZeptoMail dashboard.

A short survey will appear asking how you found ZeptoMail. Select Postmark from the drop-down list and click Save. This will take you to the migration setup screen.

Survey pop-up

Migration process

The following data will be migrated from your PostMark account:

  • Transactional email streams
  • Sender signatures
  • Email templates
  • Suppression lists
  • Webhooks

 

To begin migration:

  1. Click Let's begin.

    Migration initiation
     
  2. Enter the Account API key copied from your PostMark account and click Validate.
  3. Once validated, click Migrate to start the migration process.

    Postmark migration confirmation
     

You can view the progress of your data migration in the migration window. Upon successful migration, each Postmark server will be created as a separate Mail Agent in ZeptoMail, along with its associated templates and webhooks.

Mail Agent

A Mail Agent in ZeptoMail is similar to a server in PostMark. Mail Agents help segment different types of transactional emails based on their purpose, application, or workflow. Segmenting emails using Mail Agents enables better organization and management. You can associate one or more verified domains with each Mail Agent to send emails.

 

Migrating additional accounts

To migrate additional accounts, you can access the migration menu from Settings >>Migration >>New migration.

new migration window

This section lists the past 30 days' migration information.

Troubleshooting migration issues

In some cases, you may encounter errors during migration. The table below lists common issues and their resolutions:

 Error/failure messageResolution
General errorsData already existsCheck for duplicates or update the existing record and try again.
Invalid valueOccurs when some templates or webhooks contain formats that maybe valid, but are restrictedby ZeptoMail. Contact support@zeptomail.com for further clarifications. 
Threshold reachedThe maximum number of API requests allowed, has been reached. Wait for 15–30 mins and retry.
Max limit exceededThe limit on how much data can be migrated has been reached. Delete any unused migrated data and try again.
Records already existCheck for duplicates or update the existing record and retry.
Template-related errorsYou have reached the maximum limit for creating a message templatesDelete unused templates or contact support@zeptomail.com
Message template alias already existsUse a different name or update the existing template alias.
Template addition failed. Occurs if the template size or formate exceeds the permissible limit or any undefined issue that prevents the template from being migrated. Contact support@zeptomail.com if the issue persists.
Template size limit exceedsReduce the template size by removing attachments or minimizing template content and retry. The maximum size of the template is 5KB. 
Template not foundCheck your PostMark account for the right template and retry.
Webhook-related errorsURL cannot be reachedEnsure the Webhook URL is active and retry.
Invalid URLEnsure the Webhook URL is well formatted and retry.
URL already existsRemove duplicates or update the existing webhook.
Sandbox webhook limit exceededDelete any unused webhooks and try again. Contact support@zeptomail.com if the issue continues. The permissable number of sandbox webhooks is 10. 
Suppression-related errorsSuppression data already existsCheck for duplicates or update the existing data.
Suppression data not foundEnsure the suppression data exists in PostMark and try again.

Domain verification

Before sending emails through ZeptoMail, you must verify the domain(s) that are migrated from PostMark. Domain authorization is specific to each email service provider. DNS records added for Postmark authorize only Postmark’s infrastructure and cannot be reused for ZeptoMail.

ZeptoMail requires new DKIM and CNAME records to be added to your domain’s DNS.

To verify your domain:

  1. In the domain verification page of your ZeptoMail account, choose your DNS provider from the Select your DNS provider drop-down. In-case your DNS provider is not listed, select Other from the drop-down.

    Select domains from drop-down
     
  2. Copy the DKIM and CNAME values.
  3. Login to your respective DNS provider.
  4. Add the copied DKIM and CNAME records.
  5. Return to ZeptoMail and click Verify.
  6. Once verified, the domain will be ready to send emails.
  7. DNS record update can take upto 48 hours depending on the DNS provider.​

If you do not have access to the DNS Manager, click Share records with colleague to email the records to your IT admin.

Setting up email-sending

ZeptoMail supports both SMTP and API-based email sending.

SMTP configuration

 PostMarkZeptoMail
SMTP end-points smtp.postmarkapp.comsmtp.zeptomail.com
Suported port values587,25,2525587(TLS), 465(SSL)

To configure SMTP:

  1. Choose the Agent that you want to connect with your ZeptoMail account.
  2. Navigate to the SMTP/API section and go to the SMTP tab.

    SMTP section
     
  3. Copy the SMTP credentials to your application to start sending out emails.

API configuration

Each Mail Agent in ZeptoMail has a unique API token also known as the Send Mail Token, that separates the Mail Agents from one another. 

To access the Send Mail Token:

  1. Go to the required Mail Agent.
  2. Navigate to SMTP/API → API.

    API section
     
  3. Copy the Send Mail Token.

Refer to the ZeptoMail API library to select the appropriate API for your application.

Email tracking

You can enable open and click tracking for individual Mail Agents.

To enable tracking:

  1. Go to the required Mail Agent.
  2. Navigate to Email tracking.

    Enable tracking
     
  3. Enable tracking as needed.

Refer to the ZeptoMail help documentation to learn more about email tracking.

Points to note

After completing the migration, it is recommended to:

  • Send test emails to confirm successful delivery.
  • Monitor reports and suppression activity.
  • Keep note of the tracking activity.