ZeptoMail

ZeptoMail is Zoho’s dedicated transactional email service. It offers regional API endpoints, so you can keep your message data in a specific region (US / EU / India / China / Australia) for residency or latency reasons.

ZeptoMail tile

When to use ZeptoMail

  • You already use Zoho (Mail, CRM, Workplace) and want transactional mail to live in the same vendor.
  • You have data-residency requirements that exclude US-only services.
  • You want a flat per-email price with no marketing-list quotas tangled up in the plan.

Setup

  1. Create a Mail Agent at https://www.zoho.com/zeptomail/help/mail-agents.html. Each Mail Agent is bound to one verified sender domain.
  2. Generate a Send Mail Token under the Mail Agent’s Setup Info > SMTP & API > API > Generate a Token dialog. Tokens begin with Zoho-enczapikey ....
  3. Verify your sender domain by adding the DKIM and SPF records ZeptoMail provides. Domain verification is required before ZeptoMail will accept mail from your domain.
  4. In WordPress, go to NimblyMail > Settings > Connection and select the ZeptoMail card.
  5. Paste the token (the full string, including the Zoho-enczapikey prefix) into the Send Mail Token field.
  6. Pick the Region that matches the ZeptoMail account region (US com, EU eu, India in, China com.cn, Australia com.au).
  7. Click Save Changes.
  8. Use NimblyMail > Tools > Email Tester to send a test email.

API endpoint

NimblyMail sends every email via HTTPS POST to the regional endpoint:

Region Endpoint
US (default) https://api.zeptomail.com/v1.1/email
EU https://api.zeptomail.eu/v1.1/email
India https://api.zeptomail.in/v1.1/email
China https://api.zeptomail.com.cn/v1.1/email
Australia https://api.zeptomail.com.au/v1.1/email

The Send Mail Token travels in the Authorization header (Authorization: Zoho-enczapikey xxxx...).

What gets stored

Field Storage
zeptomail.api_key DB (encrypted at rest, AES-256-CBC + HMAC-SHA256). Masked as ******** in the admin UI.
zeptomail.region DB (plain — non-sensitive).

Locking the token via wp-config.php

define( 'NIMBLY_MAIL_ZEPTOMAIL_API_KEY', 'Zoho-enczapikey xxxxxxx' );
define( 'NIMBLY_MAIL_ZEPTOMAIL_REGION',  'eu' );

Troubleshooting

TM_3201 "Sender domain is not verified" — Verify your sender domain (DKIM CNAMEs, SPF) at https://www.zoho.com/zeptomail/help/getting-started/sender-verification.html.

TM_3501 "Account is suspended" — Your ZeptoMail account is on hold. Check your Zoho dashboard for the reason; common causes are unpaid invoices or unusually high bounce rates.

TM_3001 "Invalid API token" — The token is malformed, expired, or for a different region. Re-generate it from the Mail Agent and verify the Region field matches the account region.

Mismatch between configured region and account region — Each ZeptoMail account is provisioned in one region. If your account is on eu but you configured com, every send will fail. Re-check the Region dropdown.

Was this article helpful?