Skip to content

Commit e3a7af4

Browse files
authored
docs: added first-purchase promotion guide (#12828)
1 parent 2a92b70 commit e3a7af4

23 files changed

Lines changed: 877 additions & 18 deletions

File tree

www/apps/resources/app/how-to-tutorials/tutorials/first-purchase-discounts/page.mdx

Lines changed: 728 additions & 0 deletions
Large diffs are not rendered by default.

www/apps/resources/app/infrastructure-modules/notification/page.mdx

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,41 @@ Medusa provides other Notification Modules that actually send notifications, suc
8686
variant: "green",
8787
children: "For Production"
8888
}
89+
},
90+
{
91+
title: "Mailchimp",
92+
href: "/integrations/guides/mailchimp",
93+
badge: {
94+
variant: "blue",
95+
children: "Tutorial",
96+
}
97+
},
98+
{
99+
title: "Resend",
100+
href: "/integrations/guides/resend",
101+
badge: {
102+
variant: "blue",
103+
children: "Tutorial",
104+
}
105+
},
106+
{
107+
title: "Slack",
108+
href: "/integrations/guides/slack",
109+
badge: {
110+
variant: "blue",
111+
children: "Tutorial",
112+
}
113+
},
114+
{
115+
title: "Twilio SMS",
116+
href: "/how-to-tutorials/tutorials/phone-auth#step-3-integrate-twilio-sms",
117+
badge: {
118+
variant: "blue",
119+
children: "Tutorial",
120+
}
89121
}
90122
]}
123+
itemsPerRow={2}
91124
/>
92125

93126
---

www/apps/resources/app/integrations/page.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -242,6 +242,7 @@ A Notification Module Provider sends messages to users and customers in your Med
242242
}
243243
]}
244244
className="mb-1"
245+
itemsPerRow={2}
245246
/>
246247

247248
Learn how to integrate a third-party notification provider in the [Create Notification Module Provider](/references/notification-provider-module) documentation.

www/apps/resources/generated/edit-dates.mjs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ export const generatedEditDates = {
104104
"app/deployment/medusa-application/railway/page.mdx": "2025-04-17T08:28:58.981Z",
105105
"app/deployment/storefront/vercel/page.mdx": "2025-05-20T07:51:40.712Z",
106106
"app/deployment/page.mdx": "2025-06-24T08:50:10.114Z",
107-
"app/integrations/page.mdx": "2025-05-26T14:47:43.842Z",
107+
"app/integrations/page.mdx": "2025-06-25T10:48:35.928Z",
108108
"app/medusa-cli/page.mdx": "2024-08-28T11:25:32.382Z",
109109
"app/medusa-container-resources/page.mdx": "2025-04-17T08:48:10.255Z",
110110
"app/medusa-workflows-reference/page.mdx": "2025-01-20T08:21:29.962Z",
@@ -215,7 +215,7 @@ export const generatedEditDates = {
215215
"app/infrastructure-modules/event/page.mdx": "2025-04-17T08:29:00.488Z",
216216
"app/infrastructure-modules/cache/create/page.mdx": "2025-03-27T14:53:13.309Z",
217217
"app/admin-widget-injection-zones/page.mdx": "2024-12-24T08:48:36.154Z",
218-
"app/infrastructure-modules/notification/page.mdx": "2025-04-17T08:29:00.814Z",
218+
"app/infrastructure-modules/notification/page.mdx": "2025-06-25T10:48:23.838Z",
219219
"app/infrastructure-modules/event/create/page.mdx": "2025-03-27T14:53:13.309Z",
220220
"references/core_flows/Order/functions/core_flows.Order.orderEditUpdateItemQuantityValidationStep/page.mdx": "2024-08-20T00:10:58.913Z",
221221
"references/core_flows/Order/functions/core_flows.Order.orderEditUpdateItemQuantityWorkflow/page.mdx": "2024-08-20T00:10:58.949Z",
@@ -6547,6 +6547,7 @@ export const generatedEditDates = {
65476547
"app/integrations/guides/slack/page.mdx": "2025-06-03T09:37:42.528Z",
65486548
"app/integrations/guides/sentry/page.mdx": "2025-06-16T10:11:29.955Z",
65496549
"app/integrations/guides/mailchimp/page.mdx": "2025-06-24T08:08:35.034Z",
6550+
"app/how-to-tutorials/tutorials/first-purchase-discounts/page.mdx": "2025-06-25T10:44:38.113Z",
65506551
"references/types/CommonTypes/interfaces/types.CommonTypes.CookieOptions/page.mdx": "2025-06-25T10:11:37.088Z",
65516552
"references/types/types/types.RemoteQueryFilterOperators/page.mdx": "2025-06-25T10:11:39.849Z",
65526553
"references/types/ModulesSdkTypes/types/types.ModulesSdkTypes.InternalRemoteQueryFilters/page.mdx": "2025-06-25T10:11:39.832Z",

www/apps/resources/generated/files-map.mjs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -739,6 +739,10 @@ export const filesMap = [
739739
"filePath": "/www/apps/resources/app/how-to-tutorials/tutorials/abandoned-cart/page.mdx",
740740
"pathname": "/how-to-tutorials/tutorials/abandoned-cart"
741741
},
742+
{
743+
"filePath": "/www/apps/resources/app/how-to-tutorials/tutorials/first-purchase-discounts/page.mdx",
744+
"pathname": "/how-to-tutorials/tutorials/first-purchase-discounts"
745+
},
742746
{
743747
"filePath": "/www/apps/resources/app/how-to-tutorials/tutorials/loyalty-points/page.mdx",
744748
"pathname": "/how-to-tutorials/tutorials/loyalty-points"

www/apps/resources/generated/generated-commerce-modules-sidebar.mjs

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1103,6 +1103,14 @@ const generatedgeneratedCommerceModulesSidebarSidebar = {
11031103
"path": "https://docs.medusajs.com/resources/examples/guides/custom-item-price",
11041104
"children": []
11051105
},
1106+
{
1107+
"loaded": true,
1108+
"isPathHref": true,
1109+
"type": "ref",
1110+
"title": "Implement First-Purchase Discount",
1111+
"path": "https://docs.medusajs.com/resources/how-to-tutorials/tutorials/first-purchase-discounts",
1112+
"children": []
1113+
},
11061114
{
11071115
"loaded": true,
11081116
"isPathHref": true,
@@ -2429,6 +2437,14 @@ const generatedgeneratedCommerceModulesSidebarSidebar = {
24292437
"title": "Extend Module",
24302438
"children": []
24312439
},
2440+
{
2441+
"loaded": true,
2442+
"isPathHref": true,
2443+
"type": "ref",
2444+
"title": "Implement First-Purchase Discount",
2445+
"path": "https://docs.medusajs.com/resources/how-to-tutorials/tutorials/first-purchase-discounts",
2446+
"children": []
2447+
},
24322448
{
24332449
"loaded": true,
24342450
"isPathHref": true,
@@ -13116,6 +13132,14 @@ const generatedgeneratedCommerceModulesSidebarSidebar = {
1311613132
"title": "Extend Module",
1311713133
"children": []
1311813134
},
13135+
{
13136+
"loaded": true,
13137+
"isPathHref": true,
13138+
"type": "ref",
13139+
"title": "Implement First-Purchase Discount",
13140+
"path": "https://docs.medusajs.com/resources/how-to-tutorials/tutorials/first-purchase-discounts",
13141+
"children": []
13142+
},
1311913143
{
1312013144
"loaded": true,
1312113145
"isPathHref": true,

www/apps/resources/generated/generated-how-to-tutorials-sidebar.mjs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -436,6 +436,15 @@ const generatedgeneratedHowToTutorialsSidebarSidebar = {
436436
}
437437
]
438438
},
439+
{
440+
"loaded": true,
441+
"isPathHref": true,
442+
"type": "link",
443+
"title": "First-Purchase Discounts",
444+
"path": "/how-to-tutorials/tutorials/first-purchase-discounts",
445+
"description": "Learn how to implement first-purchase discounts in your Medusa store.",
446+
"children": []
447+
},
439448
{
440449
"loaded": true,
441450
"isPathHref": true,

www/apps/resources/generated/generated-tools-sidebar.mjs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -803,6 +803,14 @@ const generatedgeneratedToolsSidebarSidebar = {
803803
"autogenerate_as_ref": true,
804804
"sort_sidebar": "alphabetize",
805805
"children": [
806+
{
807+
"loaded": true,
808+
"isPathHref": true,
809+
"type": "ref",
810+
"title": "First-Purchase Discount",
811+
"path": "https://docs.medusajs.com/resources/how-to-tutorials/tutorials/first-purchase-discounts",
812+
"children": []
813+
},
806814
{
807815
"loaded": true,
808816
"isPathHref": true,

www/apps/resources/sidebars/how-to-tutorials.mjs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,13 @@ While tutorials show you a specific use case, they also help you understand how
100100
description:
101101
"Learn how to use prices from external systems for products.",
102102
},
103+
{
104+
type: "link",
105+
title: "First-Purchase Discounts",
106+
path: "/how-to-tutorials/tutorials/first-purchase-discounts",
107+
description:
108+
"Learn how to implement first-purchase discounts in your Medusa store.",
109+
},
103110
{
104111
type: "link",
105112
title: "Loyalty Points System",

www/packages/tags/src/tags/cart.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ export const cart = [
1515
"title": "Send Abandoned Cart Notification",
1616
"path": "https://docs.medusajs.com/resources/how-to-tutorials/tutorials/abandoned-cart"
1717
},
18+
{
19+
"title": "Implement First-Purchase Discount",
20+
"path": "https://docs.medusajs.com/resources/how-to-tutorials/tutorials/first-purchase-discounts"
21+
},
1822
{
1923
"title": "Implement Loyalty Points",
2024
"path": "https://docs.medusajs.com/resources/how-to-tutorials/tutorials/loyalty-points"
@@ -183,10 +187,6 @@ export const cart = [
183187
"title": "deleteLineItemsWorkflow",
184188
"path": "https://docs.medusajs.com/resources/references/medusa-workflows/deleteLineItemsWorkflow"
185189
},
186-
{
187-
"title": "processPaymentWorkflow",
188-
"path": "https://docs.medusajs.com/resources/references/medusa-workflows/processPaymentWorkflow"
189-
},
190190
{
191191
"title": "cart",
192192
"path": "https://docs.medusajs.com/resources/references/js-sdk/store/cart"

0 commit comments

Comments
 (0)