Skip to content

Commit 30313fc

Browse files
authored
Merge pull request #7200 from umbraco/features/commercer-abandoned-cart-notifier
Add commerce abandoned cart notification job
2 parents 98e6648 + ee5e5cd commit 30313fc

File tree

4 files changed

+68
-0
lines changed

4 files changed

+68
-0
lines changed

16/umbraco-commerce/SUMMARY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@
4747
* [Use an Alternative Database for Umbraco Commerce Tables](how-to-guides/use-an-alternative-database-for-umbraco-commerce-tables.md)
4848
* [Customizing Templates](how-to-guides/customizing-templates.md)
4949
* [Configuring Cart Cleanup](how-to-guides/configuring-cart-cleanup.md)
50+
* [Configuring Abandoned Carts Notification](how-to-guides/configuring-abandoned-cart-notification.md)
5051
* [Limit Order Line Quantity](how-to-guides/limit-orderline-quantity.md)
5152
* [Implementing Product Bundles](how-to-guides/product-bundles.md)
5253
* [Implementing Member Based Pricing](how-to-guides/member-based-pricing.md)
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
---
2+
description: Learn how to configure the abandoned cart notification.
3+
---
4+
5+
# Configuring Abandoned Cart Notification
6+
7+
{% hint style="info" %}
8+
Available from Umbraco Commerce 16.1.0
9+
{% endhint %}
10+
11+
## Abandoned Cart Recurring Background Job
12+
13+
The abandoned cart recurring background job automatically sends reminder emails to customers about items left in their shopping carts. To configure it, follow these steps:
14+
1. Go to **Store Settings** in your admin dashboard.
15+
2. Select the store you want to configure.
16+
3. Navigate to the **Cart Settings** section.
17+
4. Choose your **Abandoned Cart Email Template**. If the email template is not set, no notification will be sent; however, webhooks can still be triggered.
18+
5. Set the number of minutes that a cart must be inactive before it is considered abandoned. If the value is 0, the abandoned cart detection is disabled.
19+
6. Enter the landing page URL where customers will be redirected when they click the links in the abandoned cart email.
20+
7. Click the **Save** button to apply your changes.
21+
22+
![store notification settings](images/configuring-abandoned-cart-notification/store-notification-settings.png)
23+
24+
25+
The advanced settings can be configured in the `appsettings.json` file:
26+
27+
```json
28+
{
29+
"Umbraco" : {
30+
"Commerce": {
31+
"AbandonedCartNotifier": {
32+
"Enable": true, // Optional. Set to false if you want to disable the recurring background job
33+
"FirstRunTime": "", // Optional
34+
"Period": "1.00:00:00", // Optional
35+
"NotificationBatchSize": 20, // Optional
36+
}
37+
}
38+
}
39+
}
40+
```
41+
42+
The `appsettings.json` section supports the following keys:
43+
44+
| Key | Description |
45+
| -- | -- |
46+
| `Enable` | Enable this feature.
47+
| `FirstRunTime` | The time to first run the scheduled cleanup task, in crontab format. If empty, runs immediately on app startup. |
48+
| `Period` | How often to run the task, in timespan format. Defaults to every 24 hours. |
49+
| `NotificationBatchSize` | The number of abandoned carts processed each time the job is run. |
50+
51+
## Abandoned Cart Webhook
52+
A new webhook called Cart Abandoned has been added. It is triggered when the Abandoned Cart Recurring Background Job detects any abandoned carts. The POST payload will look like this:
53+
```json
54+
{
55+
"orderIds": [
56+
"8b2cfad6-a0eb-4b87-ad86-019768ad1308",
57+
"95aa34bd-8a01-45a4-9492-019768ac6c61",
58+
"db9a2cc5-621a-40a3-9fab-019768a79d0a"
59+
]
60+
}
61+
```
62+
63+
## Abandoned Cart Conversion Rates Widget
64+
65+
The widget shows how many notified abandoned carts are recovered through completed purchases, reflecting your store’s abandoned cart conversion rate.
66+
67+
![Abandoned cart conversion rates widget](images/configuring-abandoned-cart-notification/abandoned-cart-conversion-rates-widget.png)

0 commit comments

Comments
 (0)