> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vulpy.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Transactional email in Vulpy Commerce

> Configure SMTP, sender identity, and templates for the @vulpy/medusa-plugin-email plugin that sends order, shipping, and password reset emails.

Vulpy Commerce ships the `@vulpy/medusa-plugin-email` plugin in the Medusa backend. It provides SMTP configuration, a shared template set for common shop events, and a resend widget on the order detail page. This page shows how to set up the plugin and use it to send transactional emails.

<Tip>
  **The fastest way is to ask Fox.** Fox works in the same Medusa admin and can handle email configuration and operations for you.

  * Configure SMTP with these creds.
  * Change the order confirmation template subject line.
  * Send a test email.
</Tip>

## What ships out of the box

The plugin includes four built-in templates you can customize:

* **Order confirmation**: sent to the customer after a successful order placement
* **Shipping notification**: sent when an order is fulfilled and shipped
* **Password reset**: sent when a customer or admin requests a password reset
* **Admin order notice**: sent to the admin email when a new order is placed

Each template shares a base layout with your logo and sender identity.

## Configure SMTP

Set up the plugin through the Medusa admin dashboard.

<Steps>
  1. Open the Medusa admin at `localhost:9000/app` (dev) or `api.<domain>/app` (live), then go to **Settings → Email**. Or just ask Fox to configure SMTP for you.
  2. Enter your SMTP details: **Host**, **Port**, **User**, and **Password**.
  3. Set the **Sender identity**: fill in the **From name** and **From address** that recipients will see.
  4. Upload a **Logo** and customize the template copy for each email type.
  5. Click **Send test** to verify the connection and preview the rendered email.
</Steps>

<Note>
  Changes are saved per environment. Repeat this setup in staging and live if you use different SMTP providers or sender domains.
</Note>

## Resend a confirmation

If a customer reports a missing email, you can resend the order confirmation directly from the order detail page in the Medusa admin. The plugin adds a resend widget there. For more about managing orders, see [Orders](/shop/orders).

## Trigger points

Emails are sent automatically when the following events occur in Medusa:

* **Order placed**: order confirmation to the customer and admin order notice to the store owner
* **Fulfillment shipped**: shipping notification to the customer
* **Password reset requested**: password reset email to the customer or admin
* **New order created**: admin order notice to the configured admin address

## Debugging deliverability

If emails are not reaching recipients, check these common causes:

* **Spam folder**: ask the recipient to check spam and add the sender address to their contacts.
* **SPF/DKIM**: verify that your sender domain has correct SPF and DKIM records. Use your DNS provider or email service dashboard to confirm.
* **SMTP credentials**: re-enter host, port, user, and password in **Settings → Email** and send a test.
* **Medusa events not firing**: if the test works but live emails do not arrive, check the Medusa container logs with `pnpm vulpy env logs <name>` to look for send errors or event handler failures.

For more about the underlying Medusa notification system, see the [Medusa notification module documentation](https://docs.medusajs.com/resources/commerce-modules/notification).

<CardGroup cols={2}>
  <Card title="Orders" icon="shopping-bag" href="/shop/orders">
    Manage orders, fulfillments, and the resend widget.
  </Card>

  <Card title="Logs and health" icon="activity" href="/deploy/logs-health">
    Check container logs and monitor service health.
  </Card>
</CardGroup>
