# BigCommerce email with Groundmail

Send BigCommerce store email through Groundmail by entering the Groundmail SMTP relay as your store's own SMTP server. Order and shipping notifications, account emails and the other store emails BigCommerce sends then go out from your own domain.

---

## Prerequisites

- A Groundmail account with a [verified sending domain](https://docs.groundmail.dev/domains).
- An SMTP credential: in the Groundmail dashboard, open **SMTP** and choose **Create SMTP credential**. The password (`gmsmtp_…`) is shown once, so copy it. See [SMTP relay](https://docs.groundmail.dev/smtp).
- Store owner or admin access to the BigCommerce control panel.

Everything the store sends through the relay goes out as transactional email, so use it for order, account and notification email. Never send cold email.

---

## Set the SMTP server

1. In the BigCommerce control panel, go to **Settings**, then **Miscellaneous**.
2. Under **Use SMTP Server**, choose **Let me specify my own SMTP server details**.
3. Fill in the fields:

| BigCommerce field | Value |
|-------------------|-------|
| SMTP Hostname | `starttls://smtp.groundmail.dev` |
| SMTP Username | `groundmail` |
| SMTP Password | Your SMTP credential (`gmsmtp_…`) |
| SMTP Port | `587` |

4. Click **Test SMTP Settings**, then **Save**.

The `starttls://` prefix tells BigCommerce to upgrade the connection with STARTTLS, which is what the relay expects. BigCommerce requires a secure connection and doesn't allow port 25. The SMTP setting applies to every storefront on the store.

**Match the sender.** Your store's email address must be on your verified domain, for example `orders@yourdomain.com`. Messages from any other domain are refused.

---

## Test it

**Test SMTP Settings** sends a test email to the store's administrator email address. Then confirm in Groundmail: open **Emails** in the dashboard, or run:

```bash
curl "https://api.groundmail.dev/emails?limit=5" \
  -H "Authorization: Bearer $GROUNDMAIL_API_KEY"
```

To test a real order email without emailing a customer, place a test order with the customer email `delivered@simulator.groundmail.dev`. Groundmail's simulator addresses never reach a real inbox: the email appears under **Emails** with the status `delivered` and `"test": true`. Use `bounce@simulator.groundmail.dev` to see a hard bounce. The full list is in [Testing](https://docs.groundmail.dev/testing#simulator-addresses).

---

## Troubleshooting

**The SMTP test fails to connect.** Check the hostname includes the `starttls://` prefix and the port is `587`. If 587 still fails, try port `2525`, which is the same server with the same STARTTLS and login.

**Authentication failed.** The username must be exactly `groundmail`, and the password must be the SMTP credential (`gmsmtp_…`), not an API key (`gm_…`).

**The message is rejected because of the From address.** The store's email address must use a [verified domain](https://docs.groundmail.dev/domains) on your account. Until then you can only send from the sandbox sender, and only to your own account email.

**A recipient never receives the email.** The address may be on your suppression list, usually after a hard bounce. See [Suppressions](https://docs.groundmail.dev/suppressions), and create a [webhook](https://docs.groundmail.dev/webhooks) for `email.bounced` to get notified.

**Sends are deferred.** A new account has a daily ramp-up limit, and the Free plan has a daily limit. The relay replies with a temporary error and a retry time. See [Sending limits](https://docs.groundmail.dev/sending-limits).

---

## Related

- [SMTP relay](https://docs.groundmail.dev/smtp)
- [Testing](https://docs.groundmail.dev/testing)
- [Webhooks](https://docs.groundmail.dev/webhooks)
