# Transactional Emails

> Learn how to set up and manage transactional emails in Broadcast for sending password resets, order confirmations, and other service-related messages.

Source: https://sendbroadcast.net/docs/transactional-emails

Transactional emails are one-time, programmatic emails sent to users based on specific triggers in your application. Unlike marketing emails (broadcasts and sequences), transactional emails are service-related messages that users expect to receive.

Common examples include:

- Password reset emails
- OTP/verification codes
- Account confirmation emails
- Order receipts and shipping notifications
- Security alerts

## Setting Up Transactional Emails

To send transactional emails, you need an **Access Token** with transactional email permissions. Broadcast automatically creates a default transactional email token when you create a channel.

Navigate to **Access Tokens** in the sidebar to view and manage your tokens.

![Access Tokens page showing the default transactional email token](https://sendbroadcast.net/assets/docs/transactional-emails/transactional-emails-tokens-1eaf0927.png)

Each token displays:
- **Name**: A label to identify the token's purpose
- **Token**: The masked API key (first and last 4 characters visible)
- **Permissions**: What the token can access (e.g., Transactional read/write)

## Sending a Test Email

Before integrating with your application, you can test your setup directly from Broadcast. Navigate to **Transactional** in the sidebar.

If you have an access token configured, you'll see a **Try it now** card with a button to send a test email to your account email address.

![Transactional emails empty state with test email option and API reference](https://sendbroadcast.net/assets/docs/transactional-emails/transactional-emails-empty-state-adebc3b5.png)

The page also displays a ready-to-use **cURL command** that you can copy and use in your terminal or integrate into your application.

## Viewing Transactional Emails

After sending transactional emails, they appear in a list view where you can:

- **Filter by email**: Search for emails sent to a specific recipient
- **Filter by status**: View all, sent, queued, pending, or failed emails
- **Monitor in real-time**: The "Live" indicator shows real-time updates as emails are processed

![Transactional emails list showing sent emails with status indicators](https://sendbroadcast.net/assets/docs/transactional-emails/transactional-emails-index-7f881b3f.png)

Click on any email to view its details, including:

- **Recipient information**: Email address and name
- **Email server**: Which server was used to send the email
- **Timeline**: When the email was created, queued, and sent
- **Email preview**: View the rendered email content

![Transactional email detail view showing timeline and email preview](https://sendbroadcast.net/assets/docs/transactional-emails/transactional-emails-show-04cd0db4.png)

You can also **resend** any transactional email directly from the detail view.

## Email Status

Transactional emails go through the following statuses:

| Status | Description |
|--------|-------------|
| **Pending** | Email created but not yet queued for sending |
| **Queued** | Email is in the queue, waiting to be sent |
| **Sent** | Email was successfully delivered to the mail server |
| **Failed** | Email failed to send (check error details for more info) |

## Sending via API

To send transactional emails programmatically, use the API endpoint with your access token. See the [Transactional Email API documentation](https://sendbroadcast.net/docs/api-transactional-email) for complete details.

**Quick example:**

```bash
curl "https://your-broadcast-domain.com/api/v1/transactionals.json" \
  -X POST \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "user@example.com",
    "subject": "Your verification code",
    "body": "Your code is: 123456"
  }'
```

## Unsubscribe Behavior

Transactional emails are fundamentally different from marketing emails. They include essential service-related messages that users need to receive regardless of their marketing preferences.

**Transactional emails will always be delivered, even if the recipient has unsubscribed from marketing emails.** This follows industry standards (CAN-SPAM, GDPR) which distinguish between marketing communications and service-related transactional messages.

However, transactional emails will still be blocked in these cases:

- **Redacted subscribers**: If a subscriber has been redacted (GDPR data deletion), transactional emails will not be sent to comply with data protection regulations.
- **Global suppression list**: If an email address is on the global suppression list (typically due to hard bounces or invalid addresses), transactional emails will not be sent.
