SendGrid
In this document, you’ll learn about the SendGrid plugin, what it does, and how to use it.
Overview
SendGrid is an email and notification service that can be used to send emails to your customers and users.
By integrating SendGrid with Medusa, you’ll be sending email notifications to your users in the following cases:
- Order-related events include new orders, shipments created, and orders canceled.
- Swaps and Returns related events including new return requests of orders and items returned successfully.
- When Gift Cards in an order are created.
- User-related events including reset passwords.
- Restock Notifications for when product stocks are low.
Prerequisites
Before going further with this guide make sure you have a Medusa server set up. You can follow the Quickstart guide.
You also must have Redis configured on your Medusa server. Sending emails is done through Subscribers, which uses Redis as the event queue. If you don’t set up Redis, the plugin will not send emails.
Create a SendGrid Account
If you don’t have a SendGrid account, make sure to create one first. You also need to set up a single sender first in SendGrid before you can start sending emails.
API Key
For the integration to work, you need to create an API key in your SendGrid account.
You can do that by choosing from the sidebar of your SendGrid dashboard Settings > API Keys. Then, click on Create API Key.

If you choose to give the API Key restricted access, make sure to at least give it the “Mail Send” access.
Once you create the API key, the key will be shown for one time only. Make sure to copy and save it somewhere for later usage.
Email Templates
The SendGrid plugin uses SendGrid templates to send emails. If you don’t provide the plugin with the templates necessary then emails will not be sent.
To create an email template, go to Email API > Dynamic Templates. Then, click “Create a Dynamic Template”. You’ll then be able to see the Template ID which you’ll need for your plugin setup.
When you create the dynamic templates you’ll be able to use variables sent from Medusa using Handlebars.
For a full list of templates and their variables please check out the Template Reference.

Medusa supports localization so you can also create multiple templates for multiple languages.
Template Reference
This section covers the template types supported by the plugin and what variables you can expect in your dynamic template. You can use the variables to add details like order total or customer name.

You don’t have to create a template for every type in the reference. You can simply create templates for the type of emails you want to send using Medusa and SendGrid,
Order Placed
Key in plugin options: order_placed_template
Description: Template to be sent to the customer when they place a new order.
Example Data
{
  "beforeInsert": [Function],
  "billing_address": null,
  "billing_address_id": null,
  "canceled_at": null,
  "cart_id": null,
  "claims": Array [],
  "created_at": Any<Date>,
  "currency_code": "usd",
  "customer": Object {
    "billing_address_id": null,
    "created_at": Any<Date>,
    "deleted_at": null,
    "email": "test@testson.com",
    "first_name": null,
    "has_account": false,
    "id": Any<String>,
    "last_name": null,
    "metadata": null,
    "phone": null,
    "updated_at": Any<Date>,
  },
  "customer_id": Any<String>,
  "date": Any<String>,
  "discount_total": "0.00 USD",
  "discounts": Array [],
  "display_id": Any<Number>,
  "draft_order_id": null,
  "email": "test@testson.com",
  "external_id": null,
  "fulfillment_status": "fulfilled",
  "fulfillments": Array [],
  "gift_card_total": "0.00 USD",
  "gift_card_transactions": Array [],
  "gift_cards": Array [],
  "has_discounts": 0,
  "has_gift_cards": 0,
  "id": Any<String>,
  "idempotency_key": null,
  "items": Array [
    Object {
      "allow_discounts": true,
      "cart_id": null,
      "claim_order_id": null,
      "created_at": Any<Date>,
      "description": "",
      "discounted_price": "12.00 USD",
      "fulfilled_quantity": 2,
      "has_shipping": null,
      "id": "test-item",
      "is_giftcard": false,
      "is_return": false,
      "metadata": null,
      "order_id": Any<String>,
      "price": "12.00 USD",
      "quantity": 2,
      "returned_quantity": null,
      "shipped_quantity": 2,
      "should_merge": true,
      "swap_id": null,
      "tax_lines": Array [
        Object {
          "code": "default",
          "created_at": Any<Date>,
          "id": Any<String>,
          "item_id": "test-item",
          "metadata": null,
          "name": "default",
          "rate": 20,
          "updated_at": Any<Date>,
        },
      ],
      "thumbnail": null,
      "title": "Intelligent Plastic Chips",
      "totals": Object {
        "discount_total": 0,
        "gift_card_total": 0,
        "original_tax_total": 400,
        "original_total": 2400,
        "quantity": 2,
        "subtotal": 2000,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "item_id": "test-item",
            "metadata": null,
            "name": "default",
            "rate": 20,
            "updated_at": Any<Date>,
          },
        ],
        "tax_total": 400,
        "total": 2400,
        "unit_price": 1000,
      },
      "unit_price": 1000,
      "updated_at": Any<Date>,
      "variant": Object {
        "allow_backorder": false,
        "barcode": null,
        "created_at": Any<Date>,
        "deleted_at": null,
        "ean": null,
        "height": null,
        "hs_code": null,
        "id": "test-variant",
        "inventory_quantity": 10,
        "length": null,
        "manage_inventory": true,
        "material": null,
        "metadata": null,
        "mid_code": null,
        "origin_country": null,
        "product": Object {
          "collection_id": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "description": null,
          "discountable": true,
          "external_id": null,
          "handle": null,
          "height": null,
          "hs_code": null,
          "id": "test-product",
          "is_giftcard": false,
          "length": null,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "profile_id": Any<String>,
          "status": "draft",
          "subtitle": null,
          "thumbnail": null,
          "title": "Awesome Metal Ball",
          "type_id": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "product_id": "test-product",
        "sku": null,
        "title": "Practical Granite Pizza",
        "upc": null,
        "updated_at": Any<Date>,
        "weight": null,
        "width": null,
      },
      "variant_id": "test-variant",
    },
  ],
  "locale": null,
  "metadata": null,
  "no_notification": null,
  "object": "order",
  "payment_status": "captured",
  "payments": Array [],
  "refunded_total": 0,
  "refunds": Array [],
  "region": Object {
    "automatic_taxes": true,
    "created_at": Any<Date>,
    "currency_code": "usd",
    "deleted_at": null,
    "fulfillment_providers": Array [],
    "gift_cards_taxable": true,
    "id": "test-region",
    "metadata": null,
    "name": "Test region",
    "payment_providers": Array [
      PaymentProvider {
        "id": "test-pay",
        "is_installed": true,
      },
    ],
    "tax_code": null,
    "tax_provider_id": null,
    "tax_rate": 12.5,
    "updated_at": Any<Date>,
  },
  "region_id": "test-region",
  "returns": Array [],
  "shipping_address": Object {
    "address_1": "84185 Lindsey Centers",
    "address_2": null,
    "city": null,
    "company": null,
    "country_code": "us",
    "created_at": Any<Date>,
    "customer_id": null,
    "deleted_at": null,
    "first_name": "Chyna",
    "id": Any<String>,
    "last_name": "Osinski",
    "metadata": null,
    "phone": null,
    "postal_code": "51510",
    "province": null,
    "updated_at": Any<Date>,
  },
  "shipping_address_id": Any<String>,
  "shipping_methods": Array [],
  "shipping_total": "0.00 USD",
  "status": "pending",
  "subtotal": "24.00 USD",
  "subtotal_ex_tax": "20.00 USD",
  "swaps": Array [],
  "tax_rate": null,
  "tax_total": "4.00 USD",
  "total": "24.00 USD",
  "updated_at": Any<Date>,
}
Order Canceled
Key in plugin options: order_canceled_template
Description: Template to be sent to a customer when their order is canceled.
Example Data
{
  "beforeInsert": [Function],
  "billing_address": null,
  "billing_address_id": null,
  "canceled_at": Any<Date>,
  "cart_id": null,
  "claims": Array [],
  "created_at": Any<Date>,
  "currency_code": "usd",
  "customer": Object {
    "billing_address_id": null,
    "created_at": Any<Date>,
    "deleted_at": null,
    "email": "test@testson.com",
    "first_name": null,
    "has_account": false,
    "id": Any<String>,
    "last_name": null,
    "metadata": null,
    "phone": null,
    "updated_at": Any<Date>,
  },
  "customer_id": Any<String>,
  "date": Any<String>,
  "discount_total": "0.00 USD",
  "discounts": Array [],
  "display_id": Any<Number>,
  "draft_order_id": null,
  "email": "test@testson.com",
  "external_id": null,
  "fulfillment_status": "canceled",
  "fulfillments": Array [],
  "gift_card_total": "0.00 USD",
  "gift_card_transactions": Array [],
  "gift_cards": Array [],
  "has_discounts": 0,
  "has_gift_cards": 0,
  "id": Any<String>,
  "idempotency_key": null,
  "items": Array [
    Object {
      "allow_discounts": true,
      "cart_id": null,
      "claim_order_id": null,
      "created_at": Any<Date>,
      "description": "",
      "fulfilled_quantity": null,
      "has_shipping": null,
      "id": "test-item",
      "is_giftcard": false,
      "is_return": false,
      "metadata": null,
      "order_id": Any<String>,
      "price": "10.00 USD",
      "quantity": 2,
      "returned_quantity": null,
      "shipped_quantity": null,
      "should_merge": true,
      "swap_id": null,
      "tax_lines": Array [
        Object {
          "code": "default",
          "created_at": Any<Date>,
          "id": Any<String>,
          "item_id": "test-item",
          "metadata": null,
          "name": "default",
          "rate": 20,
          "updated_at": Any<Date>,
        },
      ],
      "thumbnail": null,
      "title": "Intelligent Plastic Chips",
      "unit_price": 1000,
      "updated_at": Any<Date>,
      "variant": Object {
        "allow_backorder": false,
        "barcode": null,
        "created_at": Any<Date>,
        "deleted_at": null,
        "ean": null,
        "height": null,
        "hs_code": null,
        "id": "test-variant",
        "inventory_quantity": 12,
        "length": null,
        "manage_inventory": true,
        "material": null,
        "metadata": null,
        "mid_code": null,
        "origin_country": null,
        "product": Object {
          "collection_id": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "description": null,
          "discountable": true,
          "external_id": null,
          "handle": null,
          "height": null,
          "hs_code": null,
          "id": "test-product",
          "is_giftcard": false,
          "length": null,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "profile_id": Any<String>,
          "status": "draft",
          "subtitle": null,
          "thumbnail": null,
          "title": "Awesome Metal Ball",
          "type_id": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "product_id": "test-product",
        "sku": null,
        "title": "Practical Granite Pizza",
        "upc": null,
        "updated_at": Any<Date>,
        "weight": null,
        "width": null,
      },
      "variant_id": "test-variant",
    },
  ],
  "locale": null,
  "metadata": null,
  "no_notification": null,
  "object": "order",
  "payment_status": "canceled",
  "payments": Array [],
  "refunded_total": 0,
  "refunds": Array [],
  "region": Object {
    "automatic_taxes": true,
    "created_at": Any<Date>,
    "currency_code": "usd",
    "deleted_at": null,
    "fulfillment_providers": Array [],
    "gift_cards_taxable": true,
    "id": "test-region",
    "metadata": null,
    "name": "Test region",
    "payment_providers": Array [
      PaymentProvider {
        "id": "test-pay",
        "is_installed": true,
      },
    ],
    "tax_code": null,
    "tax_provider_id": null,
    "tax_rate": 12.5,
    "updated_at": Any<Date>,
  },
  "region_id": "test-region",
  "returns": Array [],
  "shipping_address": Object {
    "address_1": "84185 Lindsey Centers",
    "address_2": null,
    "city": null,
    "company": null,
    "country_code": "us",
    "created_at": Any<Date>,
    "customer_id": null,
    "deleted_at": null,
    "first_name": "Chyna",
    "id": Any<String>,
    "last_name": "Osinski",
    "metadata": null,
    "phone": null,
    "postal_code": "51510",
    "province": null,
    "updated_at": Any<Date>,
  },
  "shipping_address_id": Any<String>,
  "shipping_methods": Array [
    Object {
      "cart_id": null,
      "claim_order_id": null,
      "data": Object {},
      "id": Any<String>,
      "order_id": Any<String>,
      "price": 0,
      "return_id": null,
      "shipping_option": Object {
        "admin_only": false,
        "amount": 500,
        "created_at": Any<Date>,
        "data": Object {},
        "deleted_at": null,
        "id": Any<String>,
        "is_return": false,
        "metadata": null,
        "name": "free",
        "price_type": "flat_rate",
        "profile_id": Any<String>,
        "provider_id": "test-ful",
        "region_id": "test-region",
        "updated_at": Any<Date>,
      },
      "shipping_option_id": Any<String>,
      "swap_id": null,
      "tax_lines": Array [],
    },
  ],
  "shipping_total": "0.00 USD",
  "status": "canceled",
  "subtotal": "20.00 USD",
  "swaps": Array [],
  "tax_rate": null,
  "tax_total": "4.00 USD",
  "total": "24.00 USD",
  "updated_at": Any<Date>,
}
Order Shipment Created
Key in plugin options: order_shipped_template
Description: Template to be sent to the customer when a shipment of their order has been created.
Example Data
{
  "date": Any<String>,
  "email": "test@testson.com",
  "fulfillment": Object {
    "canceled_at": null,
    "claim_order_id": null,
    "created_at": Any<Date>,
    "data": Object {},
    "id": Any<String>,
    "idempotency_key": null,
    "items": Array [
      Object {
        "fulfillment_id": Any<String>,
        "item_id": "test-item",
        "quantity": 2,
      },
    ],
    "metadata": Object {},
    "no_notification": null,
    "order_id": Any<String>,
    "provider_id": "test-ful",
    "shipped_at": Any<Date>,
    "swap_id": null,
    "tracking_links": Array [],
    "tracking_numbers": Array [],
    "updated_at": Any<Date>,
  },
  "locale": null,
  "order": Object {
    "beforeInsert": [Function],
    "billing_address": null,
    "billing_address_id": null,
    "canceled_at": null,
    "cart_id": null,
    "claims": Array [],
    "created_at": Any<Date>,
    "currency_code": "usd",
    "customer": Object {
      "billing_address_id": null,
      "created_at": Any<Date>,
      "deleted_at": null,
      "email": "test@testson.com",
      "first_name": null,
      "has_account": false,
      "id": Any<String>,
      "last_name": null,
      "metadata": null,
      "phone": null,
      "updated_at": Any<Date>,
    },
    "customer_id": Any<String>,
    "discount_total": 0,
    "discounts": Array [],
    "display_id": Any<Number>,
    "draft_order_id": null,
    "email": "test@testson.com",
    "external_id": null,
    "fulfillment_status": "shipped",
    "fulfillments": Array [
      Object {
        "canceled_at": null,
        "claim_order_id": null,
        "created_at": Any<Date>,
        "data": Object {},
        "id": Any<String>,
        "idempotency_key": null,
        "items": Array [
          Object {
            "fulfillment_id": Any<String>,
            "item_id": "test-item",
            "quantity": 2,
          },
        ],
        "metadata": Object {},
        "no_notification": null,
        "order_id": Any<String>,
        "provider_id": "test-ful",
        "shipped_at": Any<Date>,
        "swap_id": null,
        "tracking_numbers": Array [],
        "updated_at": Any<Date>,
      },
    ],
    "gift_card_total": 0,
    "gift_card_transactions": Array [],
    "gift_cards": Array [],
    "id": Any<String>,
    "idempotency_key": null,
    "items": Array [
      Object {
        "allow_discounts": true,
        "cart_id": null,
        "claim_order_id": null,
        "created_at": Any<Date>,
        "description": "",
        "fulfilled_quantity": 2,
        "has_shipping": null,
        "id": "test-item",
        "is_giftcard": false,
        "is_return": false,
        "metadata": null,
        "order_id": Any<String>,
        "quantity": 2,
        "returned_quantity": null,
        "shipped_quantity": 2,
        "should_merge": true,
        "swap_id": null,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "item_id": "test-item",
            "metadata": null,
            "name": "default",
            "rate": 20,
            "updated_at": Any<Date>,
          },
        ],
        "thumbnail": "",
        "title": "Intelligent Plastic Chips",
        "unit_price": 1000,
        "updated_at": Any<Date>,
        "variant": Object {
          "allow_backorder": false,
          "barcode": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "ean": null,
          "height": null,
          "hs_code": null,
          "id": "test-variant",
          "inventory_quantity": 10,
          "length": null,
          "manage_inventory": true,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "product": Object {
            "collection_id": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "description": null,
            "discountable": true,
            "external_id": null,
            "handle": null,
            "height": null,
            "hs_code": null,
            "id": "test-product",
            "is_giftcard": false,
            "length": null,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "profile_id": Any<String>,
            "status": "draft",
            "subtitle": null,
            "thumbnail": null,
            "title": "Awesome Metal Ball",
            "type_id": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "product_id": "test-product",
          "sku": null,
          "title": "Practical Granite Pizza",
          "upc": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "variant_id": "test-variant",
      },
    ],
    "metadata": null,
    "no_notification": null,
    "object": "order",
    "payment_status": "captured",
    "payments": Array [],
    "refundable_amount": 0,
    "refunded_total": 0,
    "refunds": Array [],
    "region": Object {
      "automatic_taxes": true,
      "created_at": Any<Date>,
      "currency_code": "usd",
      "deleted_at": null,
      "fulfillment_providers": Array [],
      "gift_cards_taxable": true,
      "id": "test-region",
      "metadata": null,
      "name": "Test region",
      "payment_providers": Array [
        PaymentProvider {
          "id": "test-pay",
          "is_installed": true,
        },
      ],
      "tax_code": null,
      "tax_provider_id": null,
      "tax_rate": 12.5,
      "updated_at": Any<Date>,
    },
    "region_id": "test-region",
    "returns": Array [],
    "shipping_address": Object {
      "address_1": "84185 Lindsey Centers",
      "address_2": null,
      "city": null,
      "company": null,
      "country_code": "us",
      "created_at": Any<Date>,
      "customer_id": null,
      "deleted_at": null,
      "first_name": "Chyna",
      "id": Any<String>,
      "last_name": "Osinski",
      "metadata": null,
      "phone": null,
      "postal_code": "51510",
      "province": null,
      "updated_at": Any<Date>,
    },
    "shipping_address_id": Any<String>,
    "shipping_methods": Array [
      Object {
        "cart_id": null,
        "claim_order_id": null,
        "data": Object {},
        "id": Any<String>,
        "order_id": Any<String>,
        "price": 0,
        "return_id": null,
        "shipping_option": Object {
          "admin_only": false,
          "amount": 500,
          "created_at": Any<Date>,
          "data": Object {},
          "deleted_at": null,
          "id": Any<String>,
          "is_return": false,
          "metadata": null,
          "name": "free",
          "price_type": "flat_rate",
          "profile_id": Any<String>,
          "provider_id": "test-ful",
          "region_id": "test-region",
          "updated_at": Any<Date>,
        },
        "shipping_option_id": Any<String>,
        "swap_id": null,
        "tax_lines": Array [],
      },
    ],
    "shipping_total": 0,
    "status": "pending",
    "subtotal": 2000,
    "swaps": Array [],
    "tax_rate": null,
    "tax_total": 400,
    "total": 2400,
    "updated_at": Any<Date>,
  },
  "tracking_links": Array [],
  "tracking_number": "",
}
Order Return Requested
Key in plugin options: order_return_requested_template
Description: Template to be sent to the customer when a return request is made for an order.
Example Data
{
  "date": Any<String>,
  "email": "test@testson.com",
  "has_shipping": false,
  "items": Array [
    Object {
      "allow_discounts": true,
      "cart_id": null,
      "claim_order_id": null,
      "created_at": Any<Date>,
      "description": "",
      "fulfilled_quantity": 2,
      "has_shipping": null,
      "id": Any<String>,
      "is_giftcard": false,
      "is_return": false,
      "metadata": null,
      "order_id": Any<String>,
      "price": "12.00 USD",
      "quantity": 1,
      "returned_quantity": null,
      "shipped_quantity": 2,
      "should_merge": true,
      "swap_id": null,
      "tax_lines": Array [
        Object {
          "code": "default",
          "created_at": Any<Date>,
          "id": Any<String>,
          "item_id": "test-item",
          "metadata": null,
          "name": "default",
          "rate": 20,
          "updated_at": Any<Date>,
        },
      ],
      "thumbnail": null,
      "title": "Intelligent Plastic Chips",
      "totals": Object {
        "discount_total": 0,
        "gift_card_total": 0,
        "original_tax_total": 200,
        "original_total": 1200,
        "quantity": 1,
        "subtotal": 1000,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "item_id": "test-item",
            "metadata": null,
            "name": "default",
            "rate": 20,
            "updated_at": Any<Date>,
          },
        ],
        "tax_total": 200,
        "total": 1200,
        "unit_price": 1000,
      },
      "unit_price": 1000,
      "updated_at": Any<Date>,
      "variant": Object {
        "allow_backorder": false,
        "barcode": null,
        "created_at": Any<Date>,
        "deleted_at": null,
        "ean": null,
        "height": null,
        "hs_code": null,
        "id": "test-variant",
        "inventory_quantity": 10,
        "length": null,
        "manage_inventory": true,
        "material": null,
        "metadata": null,
        "mid_code": null,
        "origin_country": null,
        "product": Object {
          "collection_id": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "description": null,
          "discountable": true,
          "external_id": null,
          "handle": null,
          "height": null,
          "hs_code": null,
          "id": "test-product",
          "is_giftcard": false,
          "length": null,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "profile_id": Any<String>,
          "status": "draft",
          "subtitle": null,
          "thumbnail": null,
          "title": "Awesome Metal Ball",
          "type_id": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "product_id": "test-product",
        "sku": null,
        "title": "Practical Granite Pizza",
        "upc": null,
        "updated_at": Any<Date>,
        "weight": null,
        "width": null,
      },
      "variant_id": "test-variant",
    },
  ],
  "locale": null,
  "order": Object {
    "beforeInsert": [Function],
    "billing_address_id": null,
    "canceled_at": null,
    "cart_id": null,
    "claims": Array [],
    "created_at": Any<Date>,
    "currency_code": "usd",
    "customer_id": Any<String>,
    "discounts": Array [],
    "display_id": Any<Number>,
    "draft_order_id": null,
    "email": "test@testson.com",
    "external_id": null,
    "fulfillment_status": "fulfilled",
    "gift_card_transactions": Array [],
    "gift_cards": Array [],
    "id": Any<String>,
    "idempotency_key": null,
    "items": Array [
      Object {
        "allow_discounts": true,
        "cart_id": null,
        "claim_order_id": null,
        "created_at": Any<Date>,
        "description": "",
        "fulfilled_quantity": 2,
        "has_shipping": null,
        "id": Any<String>,
        "is_giftcard": false,
        "is_return": false,
        "metadata": null,
        "order_id": Any<String>,
        "quantity": 2,
        "returned_quantity": null,
        "shipped_quantity": 2,
        "should_merge": true,
        "swap_id": null,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "item_id": "test-item",
            "metadata": null,
            "name": "default",
            "rate": 20,
            "updated_at": Any<Date>,
          },
        ],
        "thumbnail": "",
        "title": "Intelligent Plastic Chips",
        "unit_price": 1000,
        "updated_at": Any<Date>,
        "variant": Object {
          "allow_backorder": false,
          "barcode": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "ean": null,
          "height": null,
          "hs_code": null,
          "id": "test-variant",
          "inventory_quantity": 10,
          "length": null,
          "manage_inventory": true,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "product": Object {
            "collection_id": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "description": null,
            "discountable": true,
            "external_id": null,
            "handle": null,
            "height": null,
            "hs_code": null,
            "id": "test-product",
            "is_giftcard": false,
            "length": null,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "profile_id": Any<String>,
            "status": "draft",
            "subtitle": null,
            "thumbnail": null,
            "title": "Awesome Metal Ball",
            "type_id": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "product_id": "test-product",
          "sku": null,
          "title": "Practical Granite Pizza",
          "upc": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "variant_id": "test-variant",
      },
    ],
    "metadata": null,
    "no_notification": null,
    "object": "order",
    "payment_status": "captured",
    "refunds": Array [],
    "region": Object {
      "automatic_taxes": true,
      "created_at": Any<Date>,
      "currency_code": "usd",
      "deleted_at": null,
      "fulfillment_providers": Array [],
      "gift_cards_taxable": true,
      "id": Any<String>,
      "metadata": null,
      "name": "Test region",
      "payment_providers": Array [
        PaymentProvider {
          "id": "test-pay",
          "is_installed": true,
        },
      ],
      "tax_code": null,
      "tax_provider_id": null,
      "tax_rate": 12.5,
      "updated_at": Any<Date>,
    },
    "region_id": "test-region",
    "returns": Array [
      Object {
        "claim_order_id": null,
        "created_at": Any<Date>,
        "id": Any<String>,
        "idempotency_key": Any<String>,
        "items": Array [
          Object {
            "is_requested": true,
            "item_id": "test-item",
            "metadata": null,
            "note": null,
            "quantity": 1,
            "reason_id": null,
            "received_quantity": null,
            "requested_quantity": 1,
            "return_id": Any<String>,
          },
        ],
        "metadata": null,
        "no_notification": null,
        "order_id": Any<String>,
        "received_at": null,
        "refund_amount": 1200,
        "shipping_data": null,
        "status": "requested",
        "swap_id": null,
        "updated_at": Any<Date>,
      },
    ],
    "shipping_address": Object {
      "address_1": "84185 Lindsey Centers",
      "address_2": null,
      "city": null,
      "company": null,
      "country_code": "us",
      "created_at": Any<Date>,
      "customer_id": null,
      "deleted_at": null,
      "first_name": "Chyna",
      "id": Any<String>,
      "last_name": "Osinski",
      "metadata": null,
      "phone": null,
      "postal_code": "51510",
      "province": null,
      "updated_at": Any<Date>,
    },
    "shipping_address_id": Any<String>,
    "shipping_methods": Array [],
    "status": "pending",
    "swaps": Array [],
    "tax_rate": null,
    "total": 2400,
    "updated_at": Any<Date>,
  },
  "refund_amount": "12.00 USD",
  "return_request": Object {
    "claim_order_id": null,
    "created_at": Any<Date>,
    "id": Any<String>,
    "idempotency_key": Any<String>,
    "items": Array [
      Object {
        "is_requested": true,
        "item": Object {
          "allow_discounts": true,
          "cart_id": null,
          "claim_order_id": null,
          "created_at": Any<Date>,
          "description": "",
          "fulfilled_quantity": 2,
          "has_shipping": null,
          "id": Any<String>,
          "is_giftcard": false,
          "is_return": false,
          "metadata": null,
          "order_id": Any<String>,
          "quantity": 2,
          "returned_quantity": null,
          "shipped_quantity": 2,
          "should_merge": true,
          "swap_id": null,
          "tax_lines": Array [
            Object {
              "code": "default",
              "created_at": Any<Date>,
              "id": Any<String>,
              "item_id": "test-item",
              "metadata": null,
              "name": "default",
              "rate": 20,
              "updated_at": Any<Date>,
            },
          ],
          "thumbnail": "",
          "title": "Intelligent Plastic Chips",
          "unit_price": 1000,
          "updated_at": Any<Date>,
          "variant": Object {
            "allow_backorder": false,
            "barcode": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "ean": null,
            "height": null,
            "hs_code": null,
            "id": "test-variant",
            "inventory_quantity": 10,
            "length": null,
            "manage_inventory": true,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "product": Object {
              "collection_id": null,
              "created_at": Any<Date>,
              "deleted_at": null,
              "description": null,
              "discountable": true,
              "external_id": null,
              "handle": null,
              "height": null,
              "hs_code": null,
              "id": "test-product",
              "is_giftcard": false,
              "length": null,
              "material": null,
              "metadata": null,
              "mid_code": null,
              "origin_country": null,
              "profile_id": Any<String>,
              "status": "draft",
              "subtitle": null,
              "thumbnail": null,
              "title": "Awesome Metal Ball",
              "type_id": null,
              "updated_at": Any<Date>,
              "weight": null,
              "width": null,
            },
            "product_id": "test-product",
            "sku": null,
            "title": "Practical Granite Pizza",
            "upc": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "variant_id": "test-variant",
        },
        "item_id": "test-item",
        "metadata": null,
        "note": null,
        "quantity": 1,
        "reason_id": null,
        "received_quantity": null,
        "requested_quantity": 1,
        "return_id": Any<String>,
      },
    ],
    "metadata": null,
    "no_notification": null,
    "order_id": Any<String>,
    "received_at": null,
    "refund_amount": "12.00 USD",
    "shipping_data": null,
    "shipping_method": null,
    "status": "requested",
    "swap_id": null,
    "updated_at": Any<Date>,
  },
  "shipping_total": "0.00 USD",
  "subtotal": "12.00 USD",
}
Order Items Returned
Key in plugin options: order_items_returned_template
Description: Template to be sent to the customer when an order’s items have been returned.
Example Data
{
  "date": Any<String>,
  "email": "test@testson.com",
  "has_shipping": false,
  "items": Array [
    Object {
      "allow_discounts": true,
      "cart_id": null,
      "claim_order_id": null,
      "created_at": Any<Date>,
      "description": "",
      "fulfilled_quantity": 2,
      "has_shipping": null,
      "id": Any<String>,
      "is_giftcard": false,
      "is_return": false,
      "metadata": null,
      "order_id": Any<String>,
      "price": "12.00 USD",
      "quantity": 1,
      "returned_quantity": 1,
      "shipped_quantity": 2,
      "should_merge": true,
      "swap_id": null,
      "tax_lines": Array [
        Object {
          "code": "default",
          "created_at": Any<Date>,
          "id": Any<String>,
          "item_id": "test-item",
          "metadata": null,
          "name": "default",
          "rate": 20,
          "updated_at": Any<Date>,
        },
      ],
      "thumbnail": null,
      "title": "Intelligent Plastic Chips",
      "totals": Object {
        "discount_total": 0,
        "gift_card_total": 0,
        "original_tax_total": 200,
        "original_total": 1200,
        "quantity": 1,
        "subtotal": 1000,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "item_id": "test-item",
            "metadata": null,
            "name": "default",
            "rate": 20,
            "updated_at": Any<Date>,
          },
        ],
        "tax_total": 200,
        "total": 1200,
        "unit_price": 1000,
      },
      "unit_price": 1000,
      "updated_at": Any<Date>,
      "variant": Object {
        "allow_backorder": false,
        "barcode": null,
        "created_at": Any<Date>,
        "deleted_at": null,
        "ean": null,
        "height": null,
        "hs_code": null,
        "id": "test-variant",
        "inventory_quantity": 11,
        "length": null,
        "manage_inventory": true,
        "material": null,
        "metadata": null,
        "mid_code": null,
        "origin_country": null,
        "product": Object {
          "collection_id": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "description": null,
          "discountable": true,
          "external_id": null,
          "handle": null,
          "height": null,
          "hs_code": null,
          "id": "test-product",
          "is_giftcard": false,
          "length": null,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "profile_id": Any<String>,
          "status": "draft",
          "subtitle": null,
          "thumbnail": null,
          "title": "Awesome Metal Ball",
          "type_id": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "product_id": "test-product",
        "sku": null,
        "title": "Practical Granite Pizza",
        "upc": null,
        "updated_at": Any<Date>,
        "weight": null,
        "width": null,
      },
      "variant_id": "test-variant",
    },
  ],
  "locale": null,
  "order": Object {
    "beforeInsert": [Function],
    "billing_address_id": null,
    "canceled_at": null,
    "cart_id": null,
    "claims": Array [],
    "created_at": Any<Date>,
    "currency_code": "usd",
    "customer_id": Any<String>,
    "discounts": Array [],
    "display_id": Any<Number>,
    "draft_order_id": null,
    "email": "test@testson.com",
    "external_id": null,
    "fulfillment_status": "requires_action",
    "gift_card_transactions": Array [],
    "gift_cards": Array [],
    "id": Any<String>,
    "idempotency_key": null,
    "items": Array [
      Object {
        "allow_discounts": true,
        "cart_id": null,
        "claim_order_id": null,
        "created_at": Any<Date>,
        "description": "",
        "fulfilled_quantity": 2,
        "has_shipping": null,
        "id": Any<String>,
        "is_giftcard": false,
        "is_return": false,
        "metadata": null,
        "order_id": Any<String>,
        "quantity": 2,
        "returned_quantity": 1,
        "shipped_quantity": 2,
        "should_merge": true,
        "swap_id": null,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "item_id": "test-item",
            "metadata": null,
            "name": "default",
            "rate": 20,
            "updated_at": Any<Date>,
          },
        ],
        "thumbnail": "",
        "title": "Intelligent Plastic Chips",
        "unit_price": 1000,
        "updated_at": Any<Date>,
        "variant": Object {
          "allow_backorder": false,
          "barcode": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "ean": null,
          "height": null,
          "hs_code": null,
          "id": "test-variant",
          "inventory_quantity": 11,
          "length": null,
          "manage_inventory": true,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "product": Object {
            "collection_id": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "description": null,
            "discountable": true,
            "external_id": null,
            "handle": null,
            "height": null,
            "hs_code": null,
            "id": "test-product",
            "is_giftcard": false,
            "length": null,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "profile_id": Any<String>,
            "status": "draft",
            "subtitle": null,
            "thumbnail": null,
            "title": "Awesome Metal Ball",
            "type_id": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "product_id": "test-product",
          "sku": null,
          "title": "Practical Granite Pizza",
          "upc": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "variant_id": "test-variant",
      },
    ],
    "metadata": null,
    "no_notification": null,
    "object": "order",
    "payment_status": "captured",
    "refunds": Array [],
    "region": Object {
      "automatic_taxes": true,
      "created_at": Any<Date>,
      "currency_code": "usd",
      "deleted_at": null,
      "fulfillment_providers": Array [],
      "gift_cards_taxable": true,
      "id": Any<String>,
      "metadata": null,
      "name": "Test region",
      "payment_providers": Array [
        PaymentProvider {
          "id": "test-pay",
          "is_installed": true,
        },
      ],
      "tax_code": null,
      "tax_provider_id": null,
      "tax_rate": 12.5,
      "updated_at": Any<Date>,
    },
    "region_id": "test-region",
    "returns": Array [
      Object {
        "claim_order_id": null,
        "created_at": Any<Date>,
        "id": Any<String>,
        "idempotency_key": Any<String>,
        "items": Array [
          Object {
            "is_requested": true,
            "item_id": "test-item",
            "metadata": null,
            "note": null,
            "quantity": 1,
            "reason_id": null,
            "received_quantity": null,
            "requested_quantity": 1,
            "return_id": Any<String>,
          },
        ],
        "metadata": null,
        "no_notification": null,
        "order_id": Any<String>,
        "received_at": Any<Date>,
        "refund_amount": 1200,
        "shipping_data": null,
        "status": "received",
        "swap_id": null,
        "updated_at": Any<Date>,
      },
    ],
    "shipping_address": Object {
      "address_1": "84185 Lindsey Centers",
      "address_2": null,
      "city": null,
      "company": null,
      "country_code": "us",
      "created_at": Any<Date>,
      "customer_id": null,
      "deleted_at": null,
      "first_name": "Chyna",
      "id": Any<String>,
      "last_name": "Osinski",
      "metadata": null,
      "phone": null,
      "postal_code": "51510",
      "province": null,
      "updated_at": Any<Date>,
    },
    "shipping_address_id": Any<String>,
    "shipping_methods": Array [],
    "status": "pending",
    "swaps": Array [],
    "tax_rate": null,
    "total": 2400,
    "updated_at": Any<Date>,
  },
  "refund_amount": "12.00 USD",
  "return_request": Object {
    "claim_order_id": null,
    "created_at": Any<Date>,
    "id": Any<String>,
    "idempotency_key": Any<String>,
    "items": Array [
      Object {
        "is_requested": true,
        "item": Object {
          "allow_discounts": true,
          "cart_id": null,
          "claim_order_id": null,
          "created_at": Any<Date>,
          "description": "",
          "fulfilled_quantity": 2,
          "has_shipping": null,
          "id": Any<String>,
          "is_giftcard": false,
          "is_return": false,
          "metadata": null,
          "order_id": Any<String>,
          "quantity": 2,
          "returned_quantity": 1,
          "shipped_quantity": 2,
          "should_merge": true,
          "swap_id": null,
          "tax_lines": Array [
            Object {
              "code": "default",
              "created_at": Any<Date>,
              "id": Any<String>,
              "item_id": "test-item",
              "metadata": null,
              "name": "default",
              "rate": 20,
              "updated_at": Any<Date>,
            },
          ],
          "thumbnail": "",
          "title": "Intelligent Plastic Chips",
          "unit_price": 1000,
          "updated_at": Any<Date>,
          "variant": Object {
            "allow_backorder": false,
            "barcode": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "ean": null,
            "height": null,
            "hs_code": null,
            "id": "test-variant",
            "inventory_quantity": 11,
            "length": null,
            "manage_inventory": true,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "product": Object {
              "collection_id": null,
              "created_at": Any<Date>,
              "deleted_at": null,
              "description": null,
              "discountable": true,
              "external_id": null,
              "handle": null,
              "height": null,
              "hs_code": null,
              "id": "test-product",
              "is_giftcard": false,
              "length": null,
              "material": null,
              "metadata": null,
              "mid_code": null,
              "origin_country": null,
              "profile_id": Any<String>,
              "status": "draft",
              "subtitle": null,
              "thumbnail": null,
              "title": "Awesome Metal Ball",
              "type_id": null,
              "updated_at": Any<Date>,
              "weight": null,
              "width": null,
            },
            "product_id": "test-product",
            "sku": null,
            "title": "Practical Granite Pizza",
            "upc": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "variant_id": "test-variant",
        },
        "item_id": "test-item",
        "metadata": null,
        "note": null,
        "quantity": 1,
        "reason_id": null,
        "received_quantity": null,
        "requested_quantity": 1,
        "return_id": Any<String>,
      },
    ],
    "metadata": null,
    "no_notification": null,
    "order_id": Any<String>,
    "received_at": Any<Date>,
    "refund_amount": "12.00 USD",
    "shipping_data": null,
    "shipping_method": null,
    "status": "received",
    "swap_id": null,
    "updated_at": Any<Date>,
  },
  "shipping_total": "0.00 USD",
  "subtotal": "12.00 USD",
}
Claim Shipment Created
Key in plugin options: claim_shipment_created_template
Description: Template to be sent to the customer when a Claim shipment has been created.
Example Data
{
  "claim": Object {
    "canceled_at": null,
    "created_at": Any<Date>,
    "deleted_at": null,
    "fulfillment_status": "shipped",
    "id": Any<String>,
    "idempotency_key": Any<String>,
    "metadata": null,
    "no_notification": null,
    "order": Object {
      "billing_address_id": null,
      "canceled_at": null,
      "cart_id": null,
      "created_at": Any<Date>,
      "currency_code": "usd",
      "customer_id": Any<String>,
      "display_id": Any<Number>,
      "draft_order_id": null,
      "email": "test@testson.com",
      "external_id": null,
      "fulfillment_status": "fulfilled",
      "id": Any<String>,
      "idempotency_key": null,
      "items": Array [
        Object {
          "allow_discounts": true,
          "cart_id": null,
          "claim_order_id": null,
          "created_at": Any<Date>,
          "description": "",
          "fulfilled_quantity": 2,
          "has_shipping": null,
          "id": Any<String>,
          "is_giftcard": false,
          "is_return": false,
          "metadata": null,
          "order_id": Any<String>,
          "quantity": 2,
          "returned_quantity": null,
          "shipped_quantity": 2,
          "should_merge": true,
          "swap_id": null,
          "thumbnail": "",
          "title": "Intelligent Plastic Chips",
          "unit_price": 1000,
          "updated_at": Any<Date>,
          "variant": Object {
            "allow_backorder": false,
            "barcode": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "ean": null,
            "height": null,
            "hs_code": null,
            "id": "test-variant",
            "inventory_quantity": 10,
            "length": null,
            "manage_inventory": true,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "product": Object {
              "collection_id": null,
              "created_at": Any<Date>,
              "deleted_at": null,
              "description": null,
              "discountable": true,
              "external_id": null,
              "handle": null,
              "height": null,
              "hs_code": null,
              "id": "test-product",
              "is_giftcard": false,
              "length": null,
              "material": null,
              "metadata": null,
              "mid_code": null,
              "origin_country": null,
              "profile_id": Any<String>,
              "status": "draft",
              "subtitle": null,
              "thumbnail": null,
              "title": "Awesome Metal Ball",
              "type_id": null,
              "updated_at": Any<Date>,
              "weight": null,
              "width": null,
            },
            "product_id": "test-product",
            "sku": null,
            "title": "Practical Granite Pizza",
            "upc": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "variant_id": "test-variant",
        },
      ],
      "metadata": null,
      "no_notification": null,
      "object": "order",
      "payment_status": "captured",
      "region_id": "test-region",
      "shipping_address": Object {
        "address_1": "84185 Lindsey Centers",
        "address_2": null,
        "city": null,
        "company": null,
        "country_code": "us",
        "created_at": Any<Date>,
        "customer_id": null,
        "deleted_at": null,
        "first_name": "Chyna",
        "id": Any<String>,
        "last_name": "Osinski",
        "metadata": null,
        "phone": null,
        "postal_code": "51510",
        "province": null,
        "updated_at": Any<Date>,
      },
      "shipping_address_id": Any<String>,
      "status": "pending",
      "tax_rate": null,
      "updated_at": Any<Date>,
    },
    "order_id": Any<String>,
    "payment_status": "na",
    "refund_amount": null,
    "shipping_address_id": Any<String>,
    "type": "replace",
    "updated_at": Any<Date>,
  },
  "email": "test@testson.com",
  "fulfillment": Object {
    "canceled_at": null,
    "claim_order_id": Any<String>,
    "created_at": Any<Date>,
    "data": Object {},
    "id": Any<String>,
    "idempotency_key": null,
    "items": Array [
      Object {
        "fulfillment_id": Any<String>,
        "item_id": Any<String>,
        "quantity": 1,
      },
    ],
    "metadata": Object {},
    "no_notification": null,
    "order_id": null,
    "provider_id": "test-ful",
    "shipped_at": Any<Date>,
    "swap_id": null,
    "tracking_links": Array [],
    "tracking_numbers": Array [],
    "updated_at": Any<Date>,
  },
  "locale": null,
  "order": Object {
    "billing_address_id": null,
    "canceled_at": null,
    "cart_id": null,
    "created_at": Any<Date>,
    "currency_code": "usd",
    "customer_id": Any<String>,
    "display_id": Any<Number>,
    "draft_order_id": null,
    "email": "test@testson.com",
    "external_id": null,
    "fulfillment_status": "fulfilled",
    "id": Any<String>,
    "idempotency_key": null,
    "items": Array [
      Object {
        "allow_discounts": true,
        "cart_id": null,
        "claim_order_id": null,
        "created_at": Any<Date>,
        "description": "",
        "fulfilled_quantity": 2,
        "has_shipping": null,
        "id": Any<String>,
        "is_giftcard": false,
        "is_return": false,
        "metadata": null,
        "order_id": Any<String>,
        "quantity": 2,
        "returned_quantity": null,
        "shipped_quantity": 2,
        "should_merge": true,
        "swap_id": null,
        "thumbnail": "",
        "title": "Intelligent Plastic Chips",
        "unit_price": 1000,
        "updated_at": Any<Date>,
        "variant": Object {
          "allow_backorder": false,
          "barcode": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "ean": null,
          "height": null,
          "hs_code": null,
          "id": "test-variant",
          "inventory_quantity": 10,
          "length": null,
          "manage_inventory": true,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "product": Object {
            "collection_id": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "description": null,
            "discountable": true,
            "external_id": null,
            "handle": null,
            "height": null,
            "hs_code": null,
            "id": "test-product",
            "is_giftcard": false,
            "length": null,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "profile_id": Any<String>,
            "status": "draft",
            "subtitle": null,
            "thumbnail": null,
            "title": "Awesome Metal Ball",
            "type_id": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "product_id": "test-product",
          "sku": null,
          "title": "Practical Granite Pizza",
          "upc": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "variant_id": "test-variant",
      },
    ],
    "metadata": null,
    "no_notification": null,
    "object": "order",
    "payment_status": "captured",
    "region_id": "test-region",
    "shipping_address": Object {
      "address_1": "84185 Lindsey Centers",
      "address_2": null,
      "city": null,
      "company": null,
      "country_code": "us",
      "created_at": Any<Date>,
      "customer_id": null,
      "deleted_at": null,
      "first_name": "Chyna",
      "id": Any<String>,
      "last_name": "Osinski",
      "metadata": null,
      "phone": null,
      "postal_code": "51510",
      "province": null,
      "updated_at": Any<Date>,
    },
    "shipping_address_id": Any<String>,
    "status": "pending",
    "tax_rate": null,
    "updated_at": Any<Date>,
  },
  "tracking_links": Array [],
  "tracking_number": "",
}
Swap Created
Key in plugin options: swap_created_template
Description: Template to be sent to the customer when a swap for an order has been created.
Example Data
{
  "locale": null,
  "swap": Object {
    "additional_items": Array [
      Object {
        "allow_discounts": true,
        "cart_id": Any<String>,
        "claim_order_id": null,
        "created_at": Any<Date>,
        "description": "Small Wooden Computer",
        "fulfilled_quantity": 1,
        "has_shipping": true,
        "id": Any<String>,
        "is_giftcard": false,
        "is_return": false,
        "metadata": Object {},
        "order_id": null,
        "quantity": 1,
        "returned_quantity": null,
        "shipped_quantity": 1,
        "should_merge": true,
        "swap_id": Any<String>,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "item_id": Any<String>,
            "metadata": null,
            "name": "default",
            "rate": 12.5,
            "updated_at": Any<Date>,
          },
        ],
        "thumbnail": null,
        "title": "Awesome Metal Ball",
        "unit_price": 1000,
        "updated_at": Any<Date>,
        "variant": Object {
          "allow_backorder": false,
          "barcode": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "ean": null,
          "height": null,
          "hs_code": null,
          "id": "variant-2",
          "inventory_quantity": 9,
          "length": null,
          "manage_inventory": true,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "product": Object {
            "collection_id": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "description": null,
            "discountable": true,
            "external_id": null,
            "handle": null,
            "height": null,
            "hs_code": null,
            "id": "test-product",
            "is_giftcard": false,
            "length": null,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "profile_id": Any<String>,
            "status": "draft",
            "subtitle": null,
            "thumbnail": null,
            "title": "Awesome Metal Ball",
            "type_id": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "product_id": "test-product",
          "sku": null,
          "title": "Small Wooden Computer",
          "upc": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "variant_id": "variant-2",
      },
    ],
    "return_order": Object {
      "claim_order_id": null,
      "created_at": Any<Date>,
      "id": Any<String>,
      "idempotency_key": null,
      "items": Array [
        Object {
          "is_requested": true,
          "item_id": "test-item",
          "metadata": null,
          "note": null,
          "quantity": 1,
          "reason_id": null,
          "received_quantity": null,
          "requested_quantity": 1,
          "return_id": Any<String>,
        },
      ],
      "metadata": null,
      "no_notification": null,
      "order_id": null,
      "received_at": null,
      "refund_amount": 1200,
      "shipping_data": null,
      "status": "requested",
      "swap_id": Any<String>,
      "updated_at": Any<Date>,
    },
    "allow_backorder": true,
    "canceled_at": null,
    "cart_id": Any<String>,
    "confirmed_at": Any<Date>,
    "created_at": Any<Date>,
    "deleted_at": null,
    "difference_due": 488,
    "fulfillment_status": "shipped",
    "id": Any<String>,
    "idempotency_key": Any<String>,
    "metadata": null,
    "no_notification": null,
    "order_id": Any<String>,
    "payment_status": "awaiting",
    "shipping_address_id": Any<String>,
    "updated_at": Any<Date>,
  },
  "order": Object {
    "discounts": Array [],
    "billing_address_id": null,
    "canceled_at": null,
    "cart_id": null,
    "created_at": Any<Date>,
    "currency_code": "usd",
    "customer_id": Any<String>,
    "display_id": Any<Number>,
    "draft_order_id": null,
    "email": "test@testson.com",
    "external_id": null,
    "fulfillment_status": "fulfilled",
    "id": Any<String>,
    "idempotency_key": null,
    "items": Array [
      Object {
        "allow_discounts": true,
        "cart_id": null,
        "claim_order_id": null,
        "created_at": Any<Date>,
        "description": "",
        "fulfilled_quantity": 2,
        "has_shipping": null,
        "id": Any<String>,
        "is_giftcard": false,
        "is_return": false,
        "metadata": null,
        "order_id": Any<String>,
        "quantity": 2,
        "returned_quantity": null,
        "shipped_quantity": 2,
        "should_merge": true,
        "swap_id": null,
        "thumbnail": "",
        "title": "Intelligent Plastic Chips",
        "unit_price": 1000,
        "updated_at": Any<Date>,
        "variant": Object {
          "allow_backorder": false,
          "barcode": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "ean": null,
          "height": null,
          "hs_code": null,
          "id": "test-variant",
          "inventory_quantity": 10,
          "length": null,
          "manage_inventory": true,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "product": Object {
            "collection_id": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "description": null,
            "discountable": true,
            "external_id": null,
            "handle": null,
            "height": null,
            "hs_code": null,
            "id": "test-product",
            "is_giftcard": false,
            "length": null,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "profile_id": Any<String>,
            "status": "draft",
            "subtitle": null,
            "thumbnail": null,
            "title": "Awesome Metal Ball",
            "type_id": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "product_id": "test-product",
          "sku": null,
          "title": "Practical Granite Pizza",
          "upc": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "variant_id": "test-variant",
      },
    ],
    "metadata": null,
    "no_notification": null,
    "object": "order",
    "payment_status": "captured",
    "region_id": "test-region",
    "shipping_address": Object {
      "address_1": "84185 Lindsey Centers",
      "address_2": null,
      "city": null,
      "company": null,
      "country_code": "us",
      "created_at": Any<Date>,
      "customer_id": null,
      "deleted_at": null,
      "first_name": "Chyna",
      "id": Any<String>,
      "last_name": "Osinski",
      "metadata": null,
      "phone": null,
      "postal_code": "51510",
      "province": null,
      "updated_at": Any<Date>,
    },
    "shipping_address_id": Any<String>,
    "status": "pending",
    "tax_rate": null,
    "updated_at": Any<Date>,
    "swaps": Array [],
  },
  "return_request": Object {
    "claim_order_id": null,
    "created_at": Any<Date>,
    "id": Any<String>,
    "idempotency_key": Any<String>,
    "items": Array [
      Object {
        "is_requested": true,
        "item": Object {
          "allow_discounts": true,
          "cart_id": null,
          "claim_order_id": null,
          "created_at": Any<Date>,
          "description": "",
          "fulfilled_quantity": 2,
          "has_shipping": null,
          "id": Any<String>,
          "is_giftcard": false,
          "is_return": false,
          "metadata": null,
          "order_id": Any<String>,
          "quantity": 2,
          "returned_quantity": 1,
          "shipped_quantity": 2,
          "should_merge": true,
          "swap_id": null,
          "tax_lines": Array [
            Object {
              "code": "default",
              "created_at": Any<Date>,
              "id": Any<String>,
              "item_id": "test-item",
              "metadata": null,
              "name": "default",
              "rate": 20,
              "updated_at": Any<Date>,
            },
          ],
          "thumbnail": "",
          "title": "Intelligent Plastic Chips",
          "unit_price": 1000,
          "updated_at": Any<Date>,
          "variant": Object {
            "allow_backorder": false,
            "barcode": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "ean": null,
            "height": null,
            "hs_code": null,
            "id": "test-variant",
            "inventory_quantity": 11,
            "length": null,
            "manage_inventory": true,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "product": Object {
              "collection_id": null,
              "created_at": Any<Date>,
              "deleted_at": null,
              "description": null,
              "discountable": true,
              "external_id": null,
              "handle": null,
              "height": null,
              "hs_code": null,
              "id": "test-product",
              "is_giftcard": false,
              "length": null,
              "material": null,
              "metadata": null,
              "mid_code": null,
              "origin_country": null,
              "profile_id": Any<String>,
              "status": "draft",
              "subtitle": null,
              "thumbnail": null,
              "title": "Awesome Metal Ball",
              "type_id": null,
              "updated_at": Any<Date>,
              "weight": null,
              "width": null,
            },
            "product_id": "test-product",
            "sku": null,
            "title": "Practical Granite Pizza",
            "upc": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "variant_id": "test-variant",
        },
        "item_id": "test-item",
        "metadata": null,
        "note": null,
        "quantity": 1,
        "reason_id": null,
        "received_quantity": null,
        "requested_quantity": 1,
        "return_id": Any<String>,
      },
    ],
    "metadata": null,
    "no_notification": null,
    "order_id": Any<String>,
    "received_at": Any<Date>,
    "refund_amount": "12.00 USD",
    "shipping_data": null,
    "shipping_method": null,
    "status": "received",
    "swap_id": null,
    "updated_at": Any<Date>,
  },
  "date": Any<String>,
  "swapLink": Any<String>,
  "email": "test@testson.com",
  "items": Array [
    Object {
      "allow_discounts": true,
      "cart_id": null,
      "claim_order_id": null,
      "created_at": Any<Date>,
      "description": "",
      "discounted_price": "12.00 USD",
      "fulfilled_quantity": 2,
      "has_shipping": null,
      "id": "test-item",
      "is_giftcard": false,
      "is_return": false,
      "metadata": null,
      "order_id": Any<String>,
      "price": "12.00 USD",
      "quantity": 2,
      "returned_quantity": null,
      "shipped_quantity": 2,
      "should_merge": true,
      "swap_id": null,
      "tax_lines": Array [
        Object {
          "code": "default",
          "created_at": Any<Date>,
          "id": Any<String>,
          "item_id": "test-item",
          "metadata": null,
          "name": "default",
          "rate": 20,
          "updated_at": Any<Date>,
        },
      ],
      "thumbnail": null,
      "title": "Intelligent Plastic Chips",
      "totals": Object {
        "discount_total": 0,
        "gift_card_total": 0,
        "original_tax_total": 400,
        "original_total": 2400,
        "quantity": 2,
        "subtotal": 2000,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "item_id": "test-item",
            "metadata": null,
            "name": "default",
            "rate": 20,
            "updated_at": Any<Date>,
          },
        ],
        "tax_total": 400,
        "total": 2400,
        "unit_price": 1000,
      },
      "unit_price": 1000,
      "updated_at": Any<Date>,
      "variant": Object {
        "allow_backorder": false,
        "barcode": null,
        "created_at": Any<Date>,
        "deleted_at": null,
        "ean": null,
        "height": null,
        "hs_code": null,
        "id": "test-variant",
        "inventory_quantity": 10,
        "length": null,
        "manage_inventory": true,
        "material": null,
        "metadata": null,
        "mid_code": null,
        "origin_country": null,
        "product": Object {
          "collection_id": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "description": null,
          "discountable": true,
          "external_id": null,
          "handle": null,
          "height": null,
          "hs_code": null,
          "id": "test-product",
          "is_giftcard": false,
          "length": null,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "profile_id": Any<String>,
          "status": "draft",
          "subtitle": null,
          "thumbnail": null,
          "title": "Awesome Metal Ball",
          "type_id": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "product_id": "test-product",
        "sku": null,
        "title": "Practical Granite Pizza",
        "upc": null,
        "updated_at": Any<Date>,
        "weight": null,
        "width": null,
      },
      "variant_id": "test-variant",
    },
  ],
  "return_items": Array[...], //same as items
  "return_total": "12.00 USD",
  "refund_amount": "12.00 USD",
  "additional_total": "11.25 USD"
}
Swap Shipment Created
Key in plugin options: swap_shipment_created_template
Description: Template to be sent to the customer when a shipment of a swap of an order has been created.
Example Data
Object {
  "additional_total": "16.88 USD",
  "date": Any<String>,
  "email": "test@testson.com",
  "fulfillment": Object {
    "canceled_at": null,
    "claim_order_id": null,
    "created_at": Any<Date>,
    "data": Object {},
    "id": Any<String>,
    "idempotency_key": null,
    "items": Array [
      Object {
        "fulfillment_id": Any<String>,
        "item_id": Any<String>,
        "quantity": 1,
      },
    ],
    "metadata": Object {},
    "no_notification": null,
    "order_id": null,
    "provider_id": "test-ful",
    "shipped_at": Any<Date>,
    "swap_id": Any<String>,
    "tracking_links": Array [],
    "tracking_numbers": Array [],
    "updated_at": Any<Date>,
  },
  "items": Array [
    Object {
      "allow_discounts": true,
      "cart_id": Any<String>,
      "claim_order_id": null,
      "created_at": Any<Date>,
      "description": "Small Wooden Computer",
      "discounted_price": "11.25 USD",
      "fulfilled_quantity": 1,
      "has_shipping": true,
      "id": Any<String>,
      "is_giftcard": false,
      "is_return": false,
      "metadata": Object {},
      "order_id": null,
      "price": "11.25 USD",
      "quantity": 1,
      "returned_quantity": null,
      "shipped_quantity": 1,
      "should_merge": true,
      "swap_id": Any<String>,
      "tax_lines": Array [
        Object {
          "code": "default",
          "created_at": Any<Date>,
          "id": Any<String>,
          "item_id": Any<String>,
          "metadata": null,
          "name": "default",
          "rate": 12.5,
          "updated_at": Any<Date>,
        },
      ],
      "thumbnail": null,
      "title": "Awesome Metal Ball",
      "unit_price": 1000,
      "updated_at": Any<Date>,
      "variant": Object {
        "allow_backorder": false,
        "barcode": null,
        "created_at": Any<Date>,
        "deleted_at": null,
        "ean": null,
        "height": null,
        "hs_code": null,
        "id": "variant-2",
        "inventory_quantity": 9,
        "length": null,
        "manage_inventory": true,
        "material": null,
        "metadata": null,
        "mid_code": null,
        "origin_country": null,
        "product": Object {
          "collection_id": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "description": null,
          "discountable": true,
          "external_id": null,
          "handle": null,
          "height": null,
          "hs_code": null,
          "id": "test-product",
          "is_giftcard": false,
          "length": null,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "profile_id": Any<String>,
          "status": "draft",
          "subtitle": null,
          "thumbnail": null,
          "title": "Awesome Metal Ball",
          "type_id": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "product_id": "test-product",
        "sku": null,
        "title": "Small Wooden Computer",
        "upc": null,
        "updated_at": Any<Date>,
        "weight": null,
        "width": null,
      },
      "variant_id": "variant-2",
    },
  ],
  "locale": null,
  "order": Object {
    "beforeInsert": [Function],
    "billing_address_id": null,
    "canceled_at": null,
    "cart_id": null,
    "created_at": Any<Date>,
    "currency_code": "usd",
    "customer_id": Any<String>,
    "discounts": Array [],
    "display_id": Any<Number>,
    "draft_order_id": null,
    "email": "test@testson.com",
    "external_id": null,
    "fulfillment_status": "fulfilled",
    "id": Any<String>,
    "idempotency_key": null,
    "items": Array [
      Object {
        "allow_discounts": true,
        "cart_id": null,
        "claim_order_id": null,
        "created_at": Any<Date>,
        "description": "",
        "fulfilled_quantity": 2,
        "has_shipping": null,
        "id": Any<String>,
        "is_giftcard": false,
        "is_return": false,
        "metadata": null,
        "order_id": Any<String>,
        "quantity": 2,
        "returned_quantity": null,
        "shipped_quantity": 2,
        "should_merge": true,
        "swap_id": null,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "item_id": Any<String>,
            "metadata": null,
            "name": "default",
            "rate": 20,
            "updated_at": Any<Date>,
          },
        ],
        "thumbnail": "",
        "title": "Intelligent Plastic Chips",
        "unit_price": 1000,
        "updated_at": Any<Date>,
        "variant": Object {
          "allow_backorder": false,
          "barcode": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "ean": null,
          "height": null,
          "hs_code": null,
          "id": "test-variant",
          "inventory_quantity": 9,
          "length": null,
          "manage_inventory": true,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "product": Object {
            "collection_id": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "description": null,
            "discountable": true,
            "external_id": null,
            "handle": null,
            "height": null,
            "hs_code": null,
            "id": "test-product",
            "is_giftcard": false,
            "length": null,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "profile_id": Any<String>,
            "status": "draft",
            "subtitle": null,
            "thumbnail": null,
            "title": "Awesome Metal Ball",
            "type_id": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "product_id": "test-product",
          "sku": null,
          "title": "Practical Granite Pizza",
          "upc": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "variant_id": "test-variant",
      },
    ],
    "metadata": null,
    "no_notification": null,
    "object": "order",
    "payment_status": "captured",
    "region": Object {
      "automatic_taxes": true,
      "created_at": Any<Date>,
      "currency_code": "usd",
      "deleted_at": null,
      "fulfillment_providers": Array [],
      "gift_cards_taxable": true,
      "id": Any<String>,
      "metadata": null,
      "name": "Test region",
      "payment_providers": Array [
        PaymentProvider {
          "id": "test-pay",
          "is_installed": true,
        },
      ],
      "tax_code": null,
      "tax_provider_id": null,
      "tax_rate": 12.5,
      "updated_at": Any<Date>,
    },
    "region_id": "test-region",
    "shipping_address_id": Any<String>,
    "status": "pending",
    "swaps": Array [
      Object {
        "additional_items": Array [
          Object {
            "allow_discounts": true,
            "cart_id": Any<String>,
            "claim_order_id": null,
            "created_at": Any<Date>,
            "description": "Small Wooden Computer",
            "fulfilled_quantity": 1,
            "has_shipping": true,
            "id": Any<String>,
            "is_giftcard": false,
            "is_return": false,
            "metadata": Object {},
            "order_id": null,
            "quantity": 1,
            "returned_quantity": null,
            "shipped_quantity": 1,
            "should_merge": true,
            "swap_id": Any<String>,
            "tax_lines": Array [
              Object {
                "code": "default",
                "created_at": Any<Date>,
                "id": Any<String>,
                "item_id": Any<String>,
                "metadata": null,
                "name": "default",
                "rate": 12.5,
                "updated_at": Any<Date>,
              },
            ],
            "thumbnail": null,
            "title": "Awesome Metal Ball",
            "unit_price": 1000,
            "updated_at": Any<Date>,
            "variant": Object {
              "allow_backorder": false,
              "barcode": null,
              "created_at": Any<Date>,
              "deleted_at": null,
              "ean": null,
              "height": null,
              "hs_code": null,
              "id": "variant-2",
              "inventory_quantity": 9,
              "length": null,
              "manage_inventory": true,
              "material": null,
              "metadata": null,
              "mid_code": null,
              "origin_country": null,
              "product": Object {
                "collection_id": null,
                "created_at": Any<Date>,
                "deleted_at": null,
                "description": null,
                "discountable": true,
                "external_id": null,
                "handle": null,
                "height": null,
                "hs_code": null,
                "id": "test-product",
                "is_giftcard": false,
                "length": null,
                "material": null,
                "metadata": null,
                "mid_code": null,
                "origin_country": null,
                "profile_id": Any<String>,
                "status": "draft",
                "subtitle": null,
                "thumbnail": null,
                "title": "Awesome Metal Ball",
                "type_id": null,
                "updated_at": Any<Date>,
                "weight": null,
                "width": null,
              },
              "product_id": "test-product",
              "sku": null,
              "title": "Small Wooden Computer",
              "upc": null,
              "updated_at": Any<Date>,
              "weight": null,
              "width": null,
            },
            "variant_id": "variant-2",
          },
        ],
        "allow_backorder": true,
        "canceled_at": null,
        "cart_id": Any<String>,
        "confirmed_at": Any<Date>,
        "created_at": Any<Date>,
        "deleted_at": null,
        "difference_due": 488,
        "fulfillment_status": "shipped",
        "id": Any<String>,
        "idempotency_key": Any<String>,
        "metadata": null,
        "no_notification": null,
        "order_id": Any<String>,
        "payment_status": "awaiting",
        "shipping_address_id": Any<String>,
        "updated_at": Any<Date>,
      },
    ],
    "tax_rate": null,
    "updated_at": Any<Date>,
  },
  "paid_total": "4.88 USD",
  "refund_amount": "12.00 USD",
  "return_total": "12.00 USD",
  "swap": Object {
    "additional_items": Array [
      Object {
        "allow_discounts": true,
        "cart_id": Any<String>,
        "claim_order_id": null,
        "created_at": Any<Date>,
        "description": "Small Wooden Computer",
        "fulfilled_quantity": 1,
        "has_shipping": true,
        "id": Any<String>,
        "is_giftcard": false,
        "is_return": false,
        "metadata": Object {},
        "order_id": null,
        "quantity": 1,
        "returned_quantity": null,
        "shipped_quantity": 1,
        "should_merge": true,
        "swap_id": Any<String>,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "item_id": Any<String>,
            "metadata": null,
            "name": "default",
            "rate": 12.5,
            "updated_at": Any<Date>,
          },
        ],
        "thumbnail": null,
        "title": "Awesome Metal Ball",
        "unit_price": 1000,
        "updated_at": Any<Date>,
        "variant": Object {
          "allow_backorder": false,
          "barcode": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "ean": null,
          "height": null,
          "hs_code": null,
          "id": "variant-2",
          "inventory_quantity": 9,
          "length": null,
          "manage_inventory": true,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "product": Object {
            "collection_id": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "description": null,
            "discountable": true,
            "external_id": null,
            "handle": null,
            "height": null,
            "hs_code": null,
            "id": "test-product",
            "is_giftcard": false,
            "length": null,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "profile_id": Any<String>,
            "status": "draft",
            "subtitle": null,
            "thumbnail": null,
            "title": "Awesome Metal Ball",
            "type_id": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "product_id": "test-product",
          "sku": null,
          "title": "Small Wooden Computer",
          "upc": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "variant_id": "variant-2",
      },
    ],
    "allow_backorder": true,
    "beforeInsert": [Function],
    "canceled_at": null,
    "cart_id": Any<String>,
    "confirmed_at": Any<Date>,
    "created_at": Any<Date>,
    "deleted_at": null,
    "difference_due": 488,
    "fulfillment_status": "shipped",
    "id": Any<String>,
    "idempotency_key": Any<String>,
    "metadata": null,
    "no_notification": null,
    "order_id": Any<String>,
    "payment_status": "awaiting",
    "return_order": Object {
      "claim_order_id": null,
      "created_at": Any<Date>,
      "id": Any<String>,
      "idempotency_key": null,
      "items": Array [
        Object {
          "is_requested": true,
          "item_id": "test-item",
          "metadata": null,
          "note": null,
          "quantity": 1,
          "reason_id": null,
          "received_quantity": null,
          "requested_quantity": 1,
          "return_id": Any<String>,
        },
      ],
      "metadata": null,
      "no_notification": null,
      "order_id": null,
      "received_at": null,
      "refund_amount": 1200,
      "shipping_data": null,
      "status": "requested",
      "swap_id": Any<String>,
      "updated_at": Any<Date>,
    },
    "shipping_address": Object {
      "address_1": "121 W Something St",
      "address_2": null,
      "city": "ville la something",
      "company": null,
      "country_code": null,
      "created_at": Any<Date>,
      "customer_id": null,
      "deleted_at": null,
      "first_name": null,
      "id": Any<String>,
      "last_name": null,
      "metadata": null,
      "phone": "12353245",
      "postal_code": "1234",
      "province": "something",
      "updated_at": Any<Date>,
    },
    "shipping_address_id": Any<String>,
    "shipping_methods": Array [
      Object {
        "cart_id": Any<String>,
        "claim_order_id": null,
        "data": Object {},
        "id": Any<String>,
        "order_id": null,
        "price": 500,
        "return_id": null,
        "shipping_option": Object {
          "admin_only": false,
          "amount": 500,
          "created_at": Any<Date>,
          "data": Object {},
          "deleted_at": null,
          "id": Any<String>,
          "is_return": false,
          "metadata": null,
          "name": "Test Method",
          "price_type": "flat_rate",
          "profile_id": Any<String>,
          "provider_id": "test-ful",
          "region_id": "test-region",
          "updated_at": Any<Date>,
        },
        "shipping_option_id": Any<String>,
        "swap_id": Any<String>,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "metadata": null,
            "name": "default",
            "rate": 12.5,
            "shipping_method_id": Any<String>,
            "updated_at": Any<Date>,
          },
        ],
      },
    ],
    "updated_at": Any<Date>,
  },
  "tax_amount": "-0.12 USD",
  "tracking_links": Array [],
  "tracking_number": "",
}
Swap Received
Key in plugin options: swap_received_template
Description: Template to be sent to the customer when a swap of an order has been received.
Example Data
{
  "locale": null,
  "swap": Object {
    "additional_items": Array [
      Object {
        "allow_discounts": true,
        "cart_id": Any<String>,
        "claim_order_id": null,
        "created_at": Any<Date>,
        "description": "Small Wooden Computer",
        "fulfilled_quantity": 1,
        "has_shipping": true,
        "id": Any<String>,
        "is_giftcard": false,
        "is_return": false,
        "metadata": Object {},
        "order_id": null,
        "quantity": 1,
        "returned_quantity": null,
        "shipped_quantity": 1,
        "should_merge": true,
        "swap_id": Any<String>,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "item_id": Any<String>,
            "metadata": null,
            "name": "default",
            "rate": 12.5,
            "updated_at": Any<Date>,
          },
        ],
        "thumbnail": null,
        "title": "Awesome Metal Ball",
        "unit_price": 1000,
        "updated_at": Any<Date>,
        "variant": Object {
          "allow_backorder": false,
          "barcode": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "ean": null,
          "height": null,
          "hs_code": null,
          "id": "variant-2",
          "inventory_quantity": 9,
          "length": null,
          "manage_inventory": true,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "product": Object {
            "collection_id": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "description": null,
            "discountable": true,
            "external_id": null,
            "handle": null,
            "height": null,
            "hs_code": null,
            "id": "test-product",
            "is_giftcard": false,
            "length": null,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "profile_id": Any<String>,
            "status": "draft",
            "subtitle": null,
            "thumbnail": null,
            "title": "Awesome Metal Ball",
            "type_id": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "product_id": "test-product",
          "sku": null,
          "title": "Small Wooden Computer",
          "upc": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "variant_id": "variant-2",
      },
    ],
    "return_order": Object {
      "claim_order_id": null,
      "created_at": Any<Date>,
      "id": Any<String>,
      "idempotency_key": null,
      "items": Array [
        Object {
          "is_requested": true,
          "item_id": "test-item",
          "metadata": null,
          "note": null,
          "quantity": 1,
          "reason_id": null,
          "received_quantity": null,
          "requested_quantity": 1,
          "return_id": Any<String>,
        },
      ],
      "metadata": null,
      "no_notification": null,
      "order_id": null,
      "received_at": null,
      "refund_amount": 1200,
      "shipping_data": null,
      "status": "requested",
      "swap_id": Any<String>,
      "updated_at": Any<Date>,
    },
    "allow_backorder": true,
    "canceled_at": null,
    "cart_id": Any<String>,
    "confirmed_at": Any<Date>,
    "created_at": Any<Date>,
    "deleted_at": null,
    "difference_due": 488,
    "fulfillment_status": "shipped",
    "id": Any<String>,
    "idempotency_key": Any<String>,
    "metadata": null,
    "no_notification": null,
    "order_id": Any<String>,
    "payment_status": "awaiting",
    "shipping_address_id": Any<String>,
    "updated_at": Any<Date>,
  },
  "order": Object {
    "discounts": Array [],
    "billing_address_id": null,
    "canceled_at": null,
    "cart_id": null,
    "created_at": Any<Date>,
    "currency_code": "usd",
    "customer_id": Any<String>,
    "display_id": Any<Number>,
    "draft_order_id": null,
    "email": "test@testson.com",
    "external_id": null,
    "fulfillment_status": "fulfilled",
    "id": Any<String>,
    "idempotency_key": null,
    "items": Array [
      Object {
        "allow_discounts": true,
        "cart_id": null,
        "claim_order_id": null,
        "created_at": Any<Date>,
        "description": "",
        "fulfilled_quantity": 2,
        "has_shipping": null,
        "id": Any<String>,
        "is_giftcard": false,
        "is_return": false,
        "metadata": null,
        "order_id": Any<String>,
        "quantity": 2,
        "returned_quantity": null,
        "shipped_quantity": 2,
        "should_merge": true,
        "swap_id": null,
        "thumbnail": "",
        "title": "Intelligent Plastic Chips",
        "unit_price": 1000,
        "updated_at": Any<Date>,
        "variant": Object {
          "allow_backorder": false,
          "barcode": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "ean": null,
          "height": null,
          "hs_code": null,
          "id": "test-variant",
          "inventory_quantity": 10,
          "length": null,
          "manage_inventory": true,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "product": Object {
            "collection_id": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "description": null,
            "discountable": true,
            "external_id": null,
            "handle": null,
            "height": null,
            "hs_code": null,
            "id": "test-product",
            "is_giftcard": false,
            "length": null,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "profile_id": Any<String>,
            "status": "draft",
            "subtitle": null,
            "thumbnail": null,
            "title": "Awesome Metal Ball",
            "type_id": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "product_id": "test-product",
          "sku": null,
          "title": "Practical Granite Pizza",
          "upc": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "variant_id": "test-variant",
      },
    ],
    "metadata": null,
    "no_notification": null,
    "object": "order",
    "payment_status": "captured",
    "region_id": "test-region",
    "shipping_address": Object {
      "address_1": "84185 Lindsey Centers",
      "address_2": null,
      "city": null,
      "company": null,
      "country_code": "us",
      "created_at": Any<Date>,
      "customer_id": null,
      "deleted_at": null,
      "first_name": "Chyna",
      "id": Any<String>,
      "last_name": "Osinski",
      "metadata": null,
      "phone": null,
      "postal_code": "51510",
      "province": null,
      "updated_at": Any<Date>,
    },
    "shipping_address_id": Any<String>,
    "status": "pending",
    "tax_rate": null,
    "updated_at": Any<Date>,
    "swaps": Array [],
  },
  "return_request": Object {
    "claim_order_id": null,
    "created_at": Any<Date>,
    "id": Any<String>,
    "idempotency_key": Any<String>,
    "items": Array [
      Object {
        "is_requested": true,
        "item": Object {
          "allow_discounts": true,
          "cart_id": null,
          "claim_order_id": null,
          "created_at": Any<Date>,
          "description": "",
          "fulfilled_quantity": 2,
          "has_shipping": null,
          "id": Any<String>,
          "is_giftcard": false,
          "is_return": false,
          "metadata": null,
          "order_id": Any<String>,
          "quantity": 2,
          "returned_quantity": 1,
          "shipped_quantity": 2,
          "should_merge": true,
          "swap_id": null,
          "tax_lines": Array [
            Object {
              "code": "default",
              "created_at": Any<Date>,
              "id": Any<String>,
              "item_id": "test-item",
              "metadata": null,
              "name": "default",
              "rate": 20,
              "updated_at": Any<Date>,
            },
          ],
          "thumbnail": "",
          "title": "Intelligent Plastic Chips",
          "unit_price": 1000,
          "updated_at": Any<Date>,
          "variant": Object {
            "allow_backorder": false,
            "barcode": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "ean": null,
            "height": null,
            "hs_code": null,
            "id": "test-variant",
            "inventory_quantity": 11,
            "length": null,
            "manage_inventory": true,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "product": Object {
              "collection_id": null,
              "created_at": Any<Date>,
              "deleted_at": null,
              "description": null,
              "discountable": true,
              "external_id": null,
              "handle": null,
              "height": null,
              "hs_code": null,
              "id": "test-product",
              "is_giftcard": false,
              "length": null,
              "material": null,
              "metadata": null,
              "mid_code": null,
              "origin_country": null,
              "profile_id": Any<String>,
              "status": "draft",
              "subtitle": null,
              "thumbnail": null,
              "title": "Awesome Metal Ball",
              "type_id": null,
              "updated_at": Any<Date>,
              "weight": null,
              "width": null,
            },
            "product_id": "test-product",
            "sku": null,
            "title": "Practical Granite Pizza",
            "upc": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "variant_id": "test-variant",
        },
        "item_id": "test-item",
        "metadata": null,
        "note": null,
        "quantity": 1,
        "reason_id": null,
        "received_quantity": null,
        "requested_quantity": 1,
        "return_id": Any<String>,
      },
    ],
    "metadata": null,
    "no_notification": null,
    "order_id": Any<String>,
    "received_at": Any<Date>,
    "refund_amount": "12.00 USD",
    "shipping_data": null,
    "shipping_method": null,
    "status": "received",
    "swap_id": null,
    "updated_at": Any<Date>,
  },
  "date": Any<String>,
  "swapLink": Any<String>,
  "email": "test@testson.com",
  "items": Array [
    Object {
      "allow_discounts": true,
      "cart_id": null,
      "claim_order_id": null,
      "created_at": Any<Date>,
      "description": "",
      "discounted_price": "12.00 USD",
      "fulfilled_quantity": 2,
      "has_shipping": null,
      "id": "test-item",
      "is_giftcard": false,
      "is_return": false,
      "metadata": null,
      "order_id": Any<String>,
      "price": "12.00 USD",
      "quantity": 2,
      "returned_quantity": null,
      "shipped_quantity": 2,
      "should_merge": true,
      "swap_id": null,
      "tax_lines": Array [
        Object {
          "code": "default",
          "created_at": Any<Date>,
          "id": Any<String>,
          "item_id": "test-item",
          "metadata": null,
          "name": "default",
          "rate": 20,
          "updated_at": Any<Date>,
        },
      ],
      "thumbnail": null,
      "title": "Intelligent Plastic Chips",
      "totals": Object {
        "discount_total": 0,
        "gift_card_total": 0,
        "original_tax_total": 400,
        "original_total": 2400,
        "quantity": 2,
        "subtotal": 2000,
        "tax_lines": Array [
          Object {
            "code": "default",
            "created_at": Any<Date>,
            "id": Any<String>,
            "item_id": "test-item",
            "metadata": null,
            "name": "default",
            "rate": 20,
            "updated_at": Any<Date>,
          },
        ],
        "tax_total": 400,
        "total": 2400,
        "unit_price": 1000,
      },
      "unit_price": 1000,
      "updated_at": Any<Date>,
      "variant": Object {
        "allow_backorder": false,
        "barcode": null,
        "created_at": Any<Date>,
        "deleted_at": null,
        "ean": null,
        "height": null,
        "hs_code": null,
        "id": "test-variant",
        "inventory_quantity": 10,
        "length": null,
        "manage_inventory": true,
        "material": null,
        "metadata": null,
        "mid_code": null,
        "origin_country": null,
        "product": Object {
          "collection_id": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "description": null,
          "discountable": true,
          "external_id": null,
          "handle": null,
          "height": null,
          "hs_code": null,
          "id": "test-product",
          "is_giftcard": false,
          "length": null,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "profile_id": Any<String>,
          "status": "draft",
          "subtitle": null,
          "thumbnail": null,
          "title": "Awesome Metal Ball",
          "type_id": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "product_id": "test-product",
        "sku": null,
        "title": "Practical Granite Pizza",
        "upc": null,
        "updated_at": Any<Date>,
        "weight": null,
        "width": null,
      },
      "variant_id": "test-variant",
    },
  ],
  "return_items": Array[...], //same as items
  "return_total": "12.00 USD",
  "tax_total": "4.00 USD",
  "refund_amount": "12.00 USD",
  "additional_total": "11.25 USD"
}
Gift Card Created
Key in plugin options: gift_card_created_template
Description: Template to be to the customer sent when a gift card in their order has been created.
Example Data
Object {
  "code": Any<String>,
  "value": 100,
  "balance": 100,
  "display_value": "100.00",
  "region": Object {
    "automatic_taxes": true,
    "created_at": Any<Date>,
    "currency_code": "usd",
    "deleted_at": null,
    "fulfillment_providers": Array [],
    "gift_cards_taxable": true,
    "id": Any<String>,
    "metadata": null,
    "name": "Test region",
    "payment_providers": Array [
      PaymentProvider {
        "id": "test-pay",
        "is_installed": true,
      },
    ],
    "tax_code": null,
    "tax_provider_id": null,
    "tax_rate": 12.5,
    "updated_at": Any<Date>,
  },
  "region_id": "test-region",
  "order": Object {
    "billing_address_id": null,
    "canceled_at": null,
    "cart_id": null,
    "created_at": Any<Date>,
    "currency_code": "usd",
    "customer_id": Any<String>,
    "display_id": Any<Number>,
    "draft_order_id": null,
    "email": "test@testson.com",
    "external_id": null,
    "fulfillment_status": "fulfilled",
    "id": Any<String>,
    "idempotency_key": null,
    "items": Array [
      Object {
        "allow_discounts": true,
        "cart_id": null,
        "claim_order_id": null,
        "created_at": Any<Date>,
        "description": "",
        "fulfilled_quantity": 2,
        "has_shipping": null,
        "id": Any<String>,
        "is_giftcard": false,
        "is_return": false,
        "metadata": null,
        "order_id": Any<String>,
        "quantity": 2,
        "returned_quantity": null,
        "shipped_quantity": 2,
        "should_merge": true,
        "swap_id": null,
        "thumbnail": "",
        "title": "Intelligent Plastic Chips",
        "unit_price": 1000,
        "updated_at": Any<Date>,
        "variant": Object {
          "allow_backorder": false,
          "barcode": null,
          "created_at": Any<Date>,
          "deleted_at": null,
          "ean": null,
          "height": null,
          "hs_code": null,
          "id": "test-variant",
          "inventory_quantity": 10,
          "length": null,
          "manage_inventory": true,
          "material": null,
          "metadata": null,
          "mid_code": null,
          "origin_country": null,
          "product": Object {
            "collection_id": null,
            "created_at": Any<Date>,
            "deleted_at": null,
            "description": null,
            "discountable": true,
            "external_id": null,
            "handle": null,
            "height": null,
            "hs_code": null,
            "id": "test-product",
            "is_giftcard": false,
            "length": null,
            "material": null,
            "metadata": null,
            "mid_code": null,
            "origin_country": null,
            "profile_id": Any<String>,
            "status": "draft",
            "subtitle": null,
            "thumbnail": null,
            "title": "Awesome Metal Ball",
            "type_id": null,
            "updated_at": Any<Date>,
            "weight": null,
            "width": null,
          },
          "product_id": "test-product",
          "sku": null,
          "title": "Practical Granite Pizza",
          "upc": null,
          "updated_at": Any<Date>,
          "weight": null,
          "width": null,
        },
        "variant_id": "test-variant",
      },
    ],
    "metadata": null,
    "no_notification": null,
    "object": "order",
    "payment_status": "captured",
    "region_id": "test-region",
    "shipping_address": Object {
      "address_1": "84185 Lindsey Centers",
      "address_2": null,
      "city": null,
      "company": null,
      "country_code": "us",
      "created_at": Any<Date>,
      "customer_id": null,
      "deleted_at": null,
      "first_name": "Chyna",
      "id": Any<String>,
      "last_name": "Osinski",
      "metadata": null,
      "phone": null,
      "postal_code": "51510",
      "province": null,
      "updated_at": Any<Date>,
    },
    "shipping_address_id": Any<String>,
    "status": "pending",
    "tax_rate": null,
    "updated_at": Any<Date>,
  },
  "order_id": Any<String>,
  "is_disabled": false,
  "created_at": Any<Date>,
  "updated_at": Any<Date>,
  "deleted_at": null,
  "locale": null,
  "email": "test@testson.com",
  "display_value": 4
}
Customer Password Reset
Key in plugin options: customer_password_reset_template
Description: Template to be sent to the customer when they request a password reset.
Example Data
Object {
  "id": Any<String>,
  "email": "test@testson.com",
  "first_name": "Chyna",
  "last_name": "Osinski",
  "token": Any<String>,
}
User Password Reset
Key in plugin options: user_password_reset_template
Description: Template to be sent to the admin user when they request a password reset.
Example Data
Object {
  "email": "test@testson.com",
  "token": Any<String>,
}
Restock Notification
Key in plugin options: medusa_restock_template
Description: Template to be sent to admin users when a product has hit the restock quantity threshold.
Example Data
Object {
  "product": Object {
    "collection_id": null,
    "created_at": Any<Date>,
    "deleted_at": null,
    "description": null,
    "discountable": true,
    "external_id": null,
    "handle": null,
    "height": null,
    "hs_code": null,
    "id": "test-product",
    "is_giftcard": false,
    "length": null,
    "material": null,
    "metadata": null,
    "mid_code": null,
    "origin_country": null,
    "profile_id": Any<String>,
    "status": "draft",
    "subtitle": null,
    "thumbnail": "",
    "title": "Awesome Metal Ball",
    "type_id": null,
    "updated_at": Any<Date>,
    "weight": null,
    "width": null,
  },
  "variant": Object {
    "allow_backorder": false,
    "barcode": null,
    "created_at": Any<Date>,
    "deleted_at": null,
    "ean": null,
    "height": null,
    "hs_code": null,
    "id": "test-variant",
    "inventory_quantity": 10,
    "length": null,
    "manage_inventory": true,
    "material": null,
    "metadata": null,
    "mid_code": null,
    "origin_country": null,
    "product": Object {
      "collection_id": null,
      "created_at": Any<Date>,
      "deleted_at": null,
      "description": null,
      "discountable": true,
      "external_id": null,
      "handle": null,
      "height": null,
      "hs_code": null,
      "id": "test-product",
      "is_giftcard": false,
      "length": null,
      "material": null,
      "metadata": null,
      "mid_code": null,
      "origin_country": null,
      "profile_id": Any<String>,
      "status": "draft",
      "subtitle": null,
      "thumbnail": null,
      "title": "Awesome Metal Ball",
      "type_id": null,
      "updated_at": Any<Date>,
      "weight": null,
      "width": null,
    },
    "product_id": "test-product",
    "sku": null,
    "title": "Practical Granite Pizza",
    "upc": null,
    "updated_at": Any<Date>,
    "weight": null,
    "width": null,
  },
  "variant_id": "test-variant",
  "emails": Array [
    "test@testson.com"
  ]
}
Install the SendGrid Plugin
In the directory of your Medusa server run the following command to install the SendGrid plugin:
- npm
- Yarn
npm install medusa-plugin-sendgrid
yarn add medusa-plugin-sendgrid
Then, in your .env file add the API key you created earlier as well as the send from email:
SENDGRID_API_KEY=<API_KEY>
SENDGRID_FROM=<SEND_FROM_EMAIL>
Make sure to replace the <API_KEY> with the SendGrid API key and the   <SEND_FROM_EMAIL> with the email you’re using in SendGrid as the single sender.
Also, you should add the ID of each template you create in .env as well. For example:
SENDGRID_ORDER_PLACED_ID=<ORDER_PLACED_TEMPLATE_ID>
Where <ORDER_PLACED_TEMPLATE_ID is the ID of your template for order placed emails.
Finally, in your medusa-config.js file, add the SendGrid plugin into the array of plugins:
const plugins = [
  // ...,
  {
    resolve: `medusa-plugin-sendgrid`,
    options: {
      api_key: process.env.SENDGRID_API_KEY,
      from: process.env.SENDGRID_FROM,
      order_placed_template: process.env.SENDGRID_ORDER_PLACED_ID,
      localization: {
        "de-DE": { // locale key
          order_placed_template:
            process.env.SENDGRID_ORDER_PLACED_ID_LOCALIZED,
        },
      },
    },
  },
]
The api_key and from options are required. Then, use the key of each template you create (from the reference) as the option name with the template ID as the value.
You can also optionally pass the option localization if you want to support different languages. localization accepts an object that has the country and language codes as keys. The value for each code should be an object of template keys and their IDs as values. Make sure to include the localized template IDs in .env as well.
Test it Out
Run your server now:
- npm
- Yarn
npm run start
yarn run start
To test it out, perform an action that would trigger one of the emails being sent. For example, you can use your Medusa storefront to create an order. An email from your SendGrid account will be sent to the customer email.
You can also track analytics related to emails sent from the SendGrid dashboard.

See Also
- Notifications Overview
- Install the Medusa admin for functionalities like Gift Cards creation, swaps, claims, order return requests, and more.



