A Resend extension for EverShop. This extension is used to send email to customers.
Note: This extension requires EverShop version 1.0.0 or higher.
npm install @evershop/resend
// config/default.json
{
...,
"system": [
...,
"extensions": [
...,
{
"name": "resend",
"resolve": "node_modules/@evershop/resend",
"enabled": true,
"priority": 10
}
]
]
}
RESEND_API_KEY=your_api_key
// config/config.json
{
...,
"resend": {
"from": "Customer Service <Your email>",
"events": {
"order_placed": {
"subject": "Order Confirmation",
"enabled": true,
"templatePath": "config/emails/order_confirmation.html" // The path to your email template. Starting from the root of your project
},
"reset_password": {
"subject": "Reset Password",
"enabled": true,
"templatePath": "config/emails/reset_password.html" // The path to your email template. Starting from the root of your project
},
"customer_registered": {
"subject": "Welcome to EverShop",
"enabled": true,
"templatePath": "config/emails/welcome.html" // The path to your email template. Starting from the root of your project
}
}
}
}
This extension now supports 3 events:
- order_placed: This event is fired when a customer places an order. Send an email to confirm the order.
- reset_password: This event is fired when a customer requests to reset password. Send an email with a link to reset password.
- customer_registered: This event is fired when a customer registers an account. Send a customer welcome email.
You can customize the email templates by creating your own HTML files. You can keep the HTML files anywhere in your project. Just make sure to provide the correct path in the config/config.json
file.
For example if you store your email templates in the config/emails
directory, you can provide the path as config/emails/order_confirmation.html
.
// The folder structure
config
└── emails
├── order_confirmation.html
├── reset_password.html
└── welcome.html
// The config file
{
...,
"resend": {
"from": "Customer Service <Your email>",
"events": {
"order_placed": {
"subject": "Order Confirmation",
"enabled": true,
"templatePath": "config/emails/order_confirmation.html"
},
"reset_password": {
"subject": "Reset Password",
"enabled": true,
"templatePath": "config/emails/reset_password.html"
},
"customer_registered": {
"subject": "Welcome to EverShop",
"enabled": true,
"templatePath": "config/emails/welcome.html"
}
}
}
}
Note: You can check the example email templates here.