@salesforce/b2c-tooling-sdk 1.21.3 → 1.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/data/guides/enrichment.json +294 -0
  2. package/data/guides/index.json +434 -27
  3. package/data/help/index.json +6 -1
  4. package/data/job-steps/index.json +1 -1
  5. package/data/job-steps/job-steps.json +1 -1
  6. package/data/script-api/index.json +49 -5
  7. package/data/tooling/index.json +432 -9
  8. package/data/xsd/commercefeaturestate.xsd +1 -0
  9. package/data/xsd/index.json +2 -1
  10. package/data/xsd/redirecturl.xsd +2 -0
  11. package/dist/esm/auth/index.d.ts +6 -3
  12. package/dist/esm/auth/index.js +4 -2
  13. package/dist/esm/auth/index.js.map +1 -1
  14. package/dist/esm/auth/oauth-implicit.d.ts +19 -0
  15. package/dist/esm/auth/oauth-implicit.js +103 -10
  16. package/dist/esm/auth/oauth-implicit.js.map +1 -1
  17. package/dist/esm/auth/oauth-pkce-fallback.d.ts +68 -0
  18. package/dist/esm/auth/oauth-pkce-fallback.js +128 -0
  19. package/dist/esm/auth/oauth-pkce-fallback.js.map +1 -0
  20. package/dist/esm/auth/oauth-pkce.d.ts +94 -0
  21. package/dist/esm/auth/oauth-pkce.js +579 -0
  22. package/dist/esm/auth/oauth-pkce.js.map +1 -0
  23. package/dist/esm/auth/resolve.d.ts +4 -3
  24. package/dist/esm/auth/resolve.js +17 -2
  25. package/dist/esm/auth/resolve.js.map +1 -1
  26. package/dist/esm/auth/session-store.d.ts +99 -0
  27. package/dist/esm/auth/session-store.js +242 -0
  28. package/dist/esm/auth/session-store.js.map +1 -0
  29. package/dist/esm/auth/stateful-oauth-strategy.d.ts +20 -24
  30. package/dist/esm/auth/stateful-oauth-strategy.js +16 -114
  31. package/dist/esm/auth/stateful-oauth-strategy.js.map +1 -1
  32. package/dist/esm/auth/types.d.ts +20 -4
  33. package/dist/esm/auth/types.js +1 -1
  34. package/dist/esm/auth/types.js.map +1 -1
  35. package/dist/esm/cli/am-command.d.ts +2 -2
  36. package/dist/esm/cli/am-command.js +13 -4
  37. package/dist/esm/cli/am-command.js.map +1 -1
  38. package/dist/esm/cli/base-command.js +3 -3
  39. package/dist/esm/cli/base-command.js.map +1 -1
  40. package/dist/esm/cli/config.js +3 -1
  41. package/dist/esm/cli/config.js.map +1 -1
  42. package/dist/esm/cli/lifecycle.d.ts +1 -1
  43. package/dist/esm/cli/lifecycle.js.map +1 -1
  44. package/dist/esm/cli/oauth-command.d.ts +12 -11
  45. package/dist/esm/cli/oauth-command.js +73 -41
  46. package/dist/esm/cli/oauth-command.js.map +1 -1
  47. package/dist/esm/cli/ods-command.d.ts +1 -1
  48. package/dist/esm/cli/ods-command.js +5 -3
  49. package/dist/esm/cli/ods-command.js.map +1 -1
  50. package/dist/esm/clients/ods.generated.d.ts +16 -0
  51. package/dist/esm/config/dw-json.d.ts +10 -0
  52. package/dist/esm/config/dw-json.js.map +1 -1
  53. package/dist/esm/config/index.d.ts +1 -0
  54. package/dist/esm/config/index.js +2 -0
  55. package/dist/esm/config/index.js.map +1 -1
  56. package/dist/esm/config/mapping.d.ts +13 -0
  57. package/dist/esm/config/mapping.js +66 -3
  58. package/dist/esm/config/mapping.js.map +1 -1
  59. package/dist/esm/config/redaction.d.ts +39 -0
  60. package/dist/esm/config/redaction.js +51 -0
  61. package/dist/esm/config/redaction.js.map +1 -0
  62. package/dist/esm/config/resolver.js +1 -0
  63. package/dist/esm/config/resolver.js.map +1 -1
  64. package/dist/esm/config/sources/env-source.d.ts +1 -1
  65. package/dist/esm/config/sources/env-source.js +14 -7
  66. package/dist/esm/config/sources/env-source.js.map +1 -1
  67. package/dist/esm/config/sources/package-json-source.js +3 -1
  68. package/dist/esm/config/sources/package-json-source.js.map +1 -1
  69. package/dist/esm/config/types.d.ts +14 -4
  70. package/dist/esm/defaults.d.ts +23 -4
  71. package/dist/esm/defaults.js +36 -4
  72. package/dist/esm/defaults.js.map +1 -1
  73. package/dist/esm/docs/content-cache.d.ts +1 -1
  74. package/dist/esm/docs/content-cache.js +1 -1
  75. package/dist/esm/docs/index.d.ts +1 -1
  76. package/dist/esm/docs/index.js.map +1 -1
  77. package/dist/esm/docs/types.d.ts +29 -0
  78. package/dist/esm/index.d.ts +6 -4
  79. package/dist/esm/index.js +3 -3
  80. package/dist/esm/index.js.map +1 -1
  81. package/dist/esm/instance/index.js +3 -3
  82. package/dist/esm/instance/index.js.map +1 -1
  83. package/dist/esm/operations/cap/index.d.ts +2 -2
  84. package/dist/esm/operations/cap/index.js +1 -1
  85. package/dist/esm/operations/cap/index.js.map +1 -1
  86. package/dist/esm/operations/cap/install.d.ts +17 -0
  87. package/dist/esm/operations/cap/install.js +29 -0
  88. package/dist/esm/operations/cap/install.js.map +1 -1
  89. package/dist/esm/operations/cap/package.js +36 -0
  90. package/dist/esm/operations/cap/package.js.map +1 -1
  91. package/dist/esm/operations/cap/validate.d.ts +9 -0
  92. package/dist/esm/operations/cap/validate.js +29 -0
  93. package/dist/esm/operations/cap/validate.js.map +1 -1
  94. package/dist/esm/operations/content/export.js +7 -3
  95. package/dist/esm/operations/content/export.js.map +1 -1
  96. package/dist/esm/operations/content/library.d.ts +26 -0
  97. package/dist/esm/operations/content/library.js +83 -2
  98. package/dist/esm/operations/content/library.js.map +1 -1
  99. package/dist/esm/operations/content/types.d.ts +10 -1
  100. package/dist/esm/operations/jobs/import-set.d.ts +170 -0
  101. package/dist/esm/operations/jobs/import-set.js +538 -0
  102. package/dist/esm/operations/jobs/import-set.js.map +1 -0
  103. package/dist/esm/operations/jobs/index.d.ts +3 -0
  104. package/dist/esm/operations/jobs/index.js +3 -0
  105. package/dist/esm/operations/jobs/index.js.map +1 -1
  106. package/dist/esm/operations/jobs/run.js +0 -11
  107. package/dist/esm/operations/jobs/run.js.map +1 -1
  108. package/dist/esm/operations/jobs/site-archive.js +13 -75
  109. package/dist/esm/operations/jobs/site-archive.js.map +1 -1
  110. package/dist/esm/operations/ods/index.d.ts +4 -0
  111. package/dist/esm/operations/ods/index.js +2 -0
  112. package/dist/esm/operations/ods/index.js.map +1 -1
  113. package/dist/esm/operations/ods/sandbox-settings.d.ts +51 -0
  114. package/dist/esm/operations/ods/sandbox-settings.js +63 -0
  115. package/dist/esm/operations/ods/sandbox-settings.js.map +1 -0
  116. package/dist/esm/operations/ods/wait-for-clones.d.ts +97 -0
  117. package/dist/esm/operations/ods/wait-for-clones.js +145 -0
  118. package/dist/esm/operations/ods/wait-for-clones.js.map +1 -0
  119. package/package.json +2 -1
  120. package/specs/ods-api-v1.json +43 -0
  121. package/dist/esm/auth/stateful-store.d.ts +0 -49
  122. package/dist/esm/auth/stateful-store.js +0 -166
  123. package/dist/esm/auth/stateful-store.js.map +0 -1
@@ -1,6 +1,11 @@
1
1
  {
2
2
  "version": "2.0.0",
3
- "generatedAt": "2026-07-17T15:02:44.783Z",
3
+ "generatedAt": "2026-08-18T18:41:48.278Z",
4
+ "source": {
5
+ "sha": "e003a95229356e47a4bda63d838b1a912f58fb31",
6
+ "committedAt": "2026-08-18T12:07:50-04:00",
7
+ "ref": "main"
8
+ },
4
9
  "entries": [
5
10
  {
6
11
  "id": "b2c-commerce/agentic-mcp-shopper-tools-quick-start",
@@ -714,7 +719,7 @@
714
719
  "category": "b2c-commerce",
715
720
  "url": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/b2c-business-objects.html",
716
721
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/b2c-business-objects.md",
717
- "headings": "System Objects • Creating System Object Attribute Definitions • Editing Custom Object Attribute Properties • Grouping Business Object Attributes • System Objects Custom Attribute Tutorial • Custom Objects • Creating Custom Object Types • Creating Custom Objects • Deleting Custom Objects • Making a Custom Attribute Editable or Uneditable • Editing Custom Object Attribute Properties • Creating Custom Attributes for Business Objects",
722
+ "headings": "System Objects • Creating System Object Attribute Definitions • Editing Custom Object Attribute Properties • Grouping Business Object Attributes • System Objects Custom Attribute Tutorial • Custom Objects • Creating Custom Object Types • Creating Custom Objects • Deleting Custom Objects • Making a Custom Attribute Editable or Uneditable • Editing Custom Object Attribute Properties • Creating Custom Attributes for Business Objects • Custom Attribute Definition Limits",
718
723
  "summary": "Create and customize business object definitions and attributes in B2C Commerce to extend system objects and add custom data structures for your ecommerce implementation.",
719
724
  "keywords": [
720
725
  "custom object definitions",
@@ -1576,7 +1581,7 @@
1576
1581
  "category": "b2c-commerce",
1577
1582
  "url": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/b2c-dev-best-practices.html",
1578
1583
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/b2c-dev-best-practices.md",
1579
- "headings": "Instance Naming • .zip Files in Code Repository • Development Guidelines and Limitations • Video Support • Email Support • Template Support • Quotas • B2C Commerce Script Timeout • Tax Classes and Jurisdictions Limit",
1584
+ "headings": "Instance Naming • .zip Files in Code Repository • Development Guidelines and Limitations • Video Support • Email Support • Template Support • Page Designer Page Size • Quotas • B2C Commerce Script Timeout • Tax Classes and Jurisdictions Limit",
1580
1585
  "summary": "Guidelines for B2C Commerce development covering instance naming, code repository management, and technical limitations for video, email, and other resources.",
1581
1586
  "keywords": [
1582
1587
  "development best practices",
@@ -4309,7 +4314,7 @@
4309
4314
  "category": "b2c-commerce",
4310
4315
  "url": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/building-your-app.html",
4311
4316
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/building-your-app.md",
4312
- "headings": "Getting Started with Claude Code • Backend-Only Apps • Extension Points • Example: non-blocking error (returning `Status.ERROR`) • Example: blocking error (throwing an exception) • Implementation best practices • Optional: delivering Storefront Next components • UI-Only and Fullstack Apps • Building your Storefront Next extension • target-config.json • How UITarget replacement works at build time • Extension routes • Extension localization • Extension installation • Injecting External SDK Scripts • How script injection works in Storefront Next • Choosing the right mechanism • Example: Global SDK via contextProvider • Example: Checkout-scoped SDK via components • Handling SPA re-initialization • Script placement decision guide • Storefront Action Hooks • Available action hooks • Declaring and writing action hooks • Listing available extension points • Building the back-end • Extension Points • Custom SCAPI • Backend Development Notes • Example Apps in the Registry • Anti-patterns to avoid",
4317
+ "headings": "Getting Started with Claude Code • Backend-Only Apps • Extension Points • Example: non-blocking error (returning `Status.ERROR`) • Example: blocking error (throwing an exception) • Implementation best practices • Optional: delivering Storefront Next components • Connection Health Check • Registering the hook • Implementing the hook • Status codes • Status details • Localizing health check messages • Best practices • Apps without a health check • UI-Only and Fullstack Apps • Building your Storefront Next extension • target-config.json • How UITarget replacement works at build time • Extension routes • Extension localization • Extension installation • Injecting External SDK Scripts • How script injection works in Storefront Next • Choosing the right mechanism • Example: Global SDK via contextProvider • Example: Checkout-scoped SDK via components • Handling SPA re-initialization • Script placement decision guide • Storefront Action Hooks • Available action hooks • Declaring and writing action hooks • Listing available extension points • Building the back-end • Extension Points • Custom SCAPI • Backend Development Notes • Example Apps in the Registry • Anti-patterns to avoid",
4313
4318
  "summary": "Build a Commerce App by choosing an architecture (UI-only, Backend-only, or Fullstack) and using Claude Code skills to scaffold and generate app structure with extension points.",
4314
4319
  "keywords": [
4315
4320
  "build commerce app",
@@ -4585,6 +4590,21 @@
4585
4590
  "url": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/hybrid-auth-environment-matrix.html",
4586
4591
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/hybrid-auth-environment-matrix.md",
4587
4592
  "headings": "Setup Guide by Architecture and Environment • Configuration by Environment • Route Ownership • Canonical Routing Rules • Notes",
4593
+ "summary": "Set up Hybrid Auth routing across B2C Commerce environments (PIG, ODS, localhost) for Storefront Next and PWA Kit architectures.",
4594
+ "keywords": [
4595
+ "Hybrid Auth",
4596
+ "routing",
4597
+ "PIG",
4598
+ "ODS",
4599
+ "Storefront Next",
4600
+ "PWA Kit",
4601
+ "Composable Storefront",
4602
+ "environment setup",
4603
+ "eCDN",
4604
+ "localhost",
4605
+ "hybrid implementation",
4606
+ "traffic routing"
4607
+ ],
4588
4608
  "relatedEntries": [
4589
4609
  "commerce-api/hybrid-authentication"
4590
4610
  ]
@@ -4596,6 +4616,21 @@
4596
4616
  "url": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/hybrid-auth-manual-setup.html",
4597
4617
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/hybrid-auth-manual-setup.md",
4598
4618
  "headings": "Are You Starting Fresh or Coming from an Existing Setup? • Fresh Setup • Existing Setup • Set Up by Instance Type • PIG (Primary Instance Group) • ODS (On-Demand Sandbox) • Localhost (Local Development) • SFRA/SiteGenesis Proper + Hybrid Auth (Session Extension and SLAS Setup) • Scope • High-Level Steps • Validate the Setup • Migration Recommendation • Headless Storefronts + SFRA/SiteGenesis • When to Use This Path • Supported Scenario • Before You Begin • Step-by-Step Setup • Step 1: Authenticate Shoppers with SLAS • Step 2: Respect SLAS Set-Cookie Responses • Step 3: Send the `sfdc_dwsid` Header on SCAPI Calls • Step 4: Configure Route Ownership Between Headless and SFRA • Step 5: (Optional) Basket Merge and Shopper Context • Step 6: Validate Cross-Runtime Navigation • Next Steps",
4619
+ "summary": "Set up hybrid authentication manually for PWA Kit, SFRA, SiteGenesis, or headless storefronts by configuring MRT, SLAS, and eCDN.",
4620
+ "keywords": [
4621
+ "hybrid auth setup",
4622
+ "manual hybrid authentication",
4623
+ "PWA Kit",
4624
+ "SFRA",
4625
+ "SiteGenesis",
4626
+ "Managed Runtime MRT",
4627
+ "SLAS",
4628
+ "headless storefront",
4629
+ "session bridging",
4630
+ "eCDN",
4631
+ "Composable Storefront",
4632
+ "hybrid storefront configuration"
4633
+ ],
4599
4634
  "relatedEntries": [
4600
4635
  "commerce-api/hybrid-authentication"
4601
4636
  ]
@@ -4607,6 +4642,20 @@
4607
4642
  "url": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/hybrid-auth-quick-start.html",
4608
4643
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/hybrid-auth-quick-start.md",
4609
4644
  "headings": "Before You Begin • Set Up by Instance Type • PIG (Primary Instance Group) • ODS (On-Demand Sandbox) • Localhost (Local Development) • Next Steps",
4645
+ "summary": "Quickly set up a Storefront Next hybrid storefront with automated provisioning of MRT environment and eCDN through Business Manager.",
4646
+ "keywords": [
4647
+ "Storefront Next setup",
4648
+ "automated setup",
4649
+ "hybrid storefront",
4650
+ "Managed Runtime",
4651
+ "MRT environment",
4652
+ "eCDN",
4653
+ "hybrid auth",
4654
+ "Business Manager provisioning",
4655
+ "Storefront Next configuration",
4656
+ "quick setup",
4657
+ "hybrid authentication"
4658
+ ],
4610
4659
  "relatedEntries": [
4611
4660
  "commerce-api/hybrid-authentication"
4612
4661
  ]
@@ -4617,6 +4666,20 @@
4617
4666
  "category": "b2c-commerce",
4618
4667
  "url": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/hybrid-auth-select-storefront.html",
4619
4668
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/hybrid-auth-select-storefront.md",
4669
+ "summary": "Choose and set up your storefront architecture (Storefront Next, PWA Kit, or SFRA/SiteGenesis) with appropriate hybrid authentication configuration.",
4670
+ "keywords": [
4671
+ "storefront selection",
4672
+ "storefront architecture",
4673
+ "PWA Kit setup",
4674
+ "Storefront Next",
4675
+ "SFRA SiteGenesis",
4676
+ "hybrid implementation",
4677
+ "hybrid auth",
4678
+ "composable storefront",
4679
+ "storefront configuration",
4680
+ "headless commerce",
4681
+ "implementation guide"
4682
+ ],
4620
4683
  "relatedEntries": [
4621
4684
  "commerce-api/hybrid-authentication"
4622
4685
  ]
@@ -4628,6 +4691,21 @@
4628
4691
  "url": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/hybrid-auth-troubleshooting.html",
4629
4692
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/hybrid-auth-troubleshooting.md",
4630
4693
  "headings": "Hybrid Auth Not Applying • Token or Session Drift Across Runtimes • eCDN Routing Mismatch • Localhost and Sandbox Differences • Missing SCAPI Short Code on On-Demand Sandboxes (ODS)",
4694
+ "summary": "Diagnose and resolve common Hybrid Auth implementation issues including token drift, routing mismatches, and SLAS configuration problems.",
4695
+ "keywords": [
4696
+ "Hybrid Auth troubleshooting",
4697
+ "SLAS client ID",
4698
+ "session bridge",
4699
+ "eCDN routing",
4700
+ "token drift",
4701
+ "SCAPI short code",
4702
+ "Hybrid Auth not applying",
4703
+ "session-bridge authentication",
4704
+ "hybrid routing matrix",
4705
+ "localhost hybrid proxy",
4706
+ "ODS sandbox",
4707
+ "auth loops"
4708
+ ],
4631
4709
  "relatedEntries": [
4632
4710
  "commerce-api/hybrid-authentication"
4633
4711
  ]
@@ -6433,7 +6511,7 @@
6433
6511
  "category": "b2c-commerce",
6434
6512
  "url": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/reference.html",
6435
6513
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/b2c-commerce/guide/reference.md",
6436
- "headings": "commerce-app.json Schema • adminComponents.json Schema • Component Object Fields • `storefrontComponentVisibility` Attributes • Example • CI Validation • App-shipped string localization • Stable keys: `taskKey` and `componentKey` • `app-configuration/translations/<locale>.json` • Fallback chain • Locale rollout • Supported locales • CI validation • APIs • Install/Uninstall Jobs (OCAPI Data API) • Required OCAPI Permissions • Install Job Parameters • Uninstall Job Parameters • Job Execution Response • CommerceFeatureState Data Model • FeatureType Values • Multi-Site Behavior • Feature Toggles • Tax Domain Toggles • Install and Uninstall Flow Details • Install Flow • Uninstall Flow • App Registry Manifest • Manifest Entry Fields • Entry Types • Hub Display • Manifest and Catalog Cache TTL • Known Limitations • Storefront compatibility • Extension points • Installation and upgrades • Multi-site • Storefront Next extensions • External Documentation Links • Glossary",
6514
+ "headings": "commerce-app.json Schema • adminComponents.json Schema • Component Object Fields • `storefrontComponentVisibility` Attributes • Example • CI Validation • App-shipped string localization • Stable keys: `taskKey` and `componentKey` • `app-configuration/translations/<locale>.json` • Fallback chain • Locale rollout • Supported locales • CI validation • adminComponents.json Schema • Component Object Fields • `storefrontComponentVisibility` Attributes • Example • CI Validation • App-shipped string localization • Stable keys: `taskKey` and `componentKey` • `app-configuration/translations/<locale>.json` • Fallback chain • Locale rollout • Supported locales • CI validation • APIs • Install/Uninstall Jobs (OCAPI Data API) • Required OCAPI Permissions • Install Job Parameters • Uninstall Job Parameters • Job Execution Response • CommerceFeatureState Data Model • FeatureType Values • Multi-Site Behavior • Feature Toggles • Tax Domain Toggles • Install and Uninstall Flow Details • Install Flow • Uninstall Flow • App Registry Manifest • Manifest Entry Fields • Entry Types • Hub Display • Manifest and Catalog Cache TTL • Manifest and Catalog Cache TTL • Known Limitations • Storefront compatibility • Extension points • Installation and upgrades • Multi-site • Storefront Next extensions • Connection Health Check • Extension Point • Status Interpretation • Status Detail Keys • Localization • Timeout Behavior • Availability • External Documentation Links • Glossary",
6437
6515
  "summary": "Define Commerce App package identity, metadata, and publisher details using the required commerce-app.json schema file.",
6438
6516
  "keywords": [
6439
6517
  "commerce-app.json",
@@ -6923,6 +7001,32 @@
6923
7001
  "commerce-api/cdn-zones"
6924
7002
  ]
6925
7003
  },
7004
+ {
7005
+ "id": "commerce-api/cdn-caching",
7006
+ "title": "SCAPI CDN Caching",
7007
+ "category": "commerce-api",
7008
+ "url": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/cdn-caching.html",
7009
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/cdn-caching.md",
7010
+ "headings": "How It Works • Enablement • Time-to-Live • Invalidation • Cache Tags • The personalized=none Query Parameter • Applicable APIs • The cf-cache-status Response Header • Example: How a Request Travels Through Both Cache Tiers • Troubleshooting • Custom APIs",
7011
+ "summary": "Implement CDN caching for non-personalized SCAPI GET responses to reduce latency and improve headless storefront performance using the personalized=none parameter.",
7012
+ "keywords": [
7013
+ "SCAPI CDN caching",
7014
+ "personalized=none",
7015
+ "CDN edge cache",
7016
+ "content delivery network",
7017
+ "web-tier caching",
7018
+ "non-personalized responses",
7019
+ "latency reduction",
7020
+ "headless storefront",
7021
+ "cache hit",
7022
+ "TTL",
7023
+ "SCAPI performance",
7024
+ "commerce API caching"
7025
+ ],
7026
+ "relatedEntries": [
7027
+ "commerce-api/performance"
7028
+ ]
7029
+ },
6926
7030
  {
6927
7031
  "id": "commerce-api/cdn-pci-4-compliance",
6928
7032
  "title": "eCDN PCI 4.0 Compliance Tools",
@@ -6957,7 +7061,7 @@
6957
7061
  "category": "commerce-api",
6958
7062
  "url": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/cdn-rate-limiting-rules.html",
6959
7063
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/cdn-rate-limiting-rules.md",
6960
- "headings": "Build a Rate Limiting Rule • Rate Limiting Parameters • Description • Rule Expression • Characteristics • Action • Period • Requests Per Period • Mitigation Timeout • Counting Expression (optional) • Enabled (optional) • Position (optional) • Best Practices • Enforce Granular Access Control • Protect Against Credential Stuffing • Limiting The Number of Operations • API Usage • Create a Rate Limiting Rule • Get All Rate Limiting Rules • Get a Rate Limiting Rule • Update a Rate Limiting Rule • Delete a Rate Limiting Rule • Rate Limiting Rules FAQ",
7064
+ "headings": "Build a Rate Limiting Rule • Rate Limiting Parameters • Description • Rule Expression • Characteristics • Action • Period • Requests Per Period • Mitigation Timeout • Counting Expression (optional) • Enabled (optional) • Position (optional) • Best Practices • Enforce Granular Access Control • Protect Against Credential Stuffing • Limiting The Number of Operations • Allow Verified Search Crawlers and Detect Leaked Credentials • API Usage • Create a Rate Limiting Rule • Get All Rate Limiting Rules • Get a Rate Limiting Rule • Update a Rate Limiting Rule • Delete a Rate Limiting Rule • Rate Limiting Rules FAQ",
6961
7065
  "summary": "Configure rate limiting rules to control request traffic, prevent bot attacks, and improve storefront availability using CDN-API parameters and expressions.",
6962
7066
  "keywords": [
6963
7067
  "rate limiting",
@@ -7096,7 +7200,7 @@
7096
7200
  "category": "commerce-api",
7097
7201
  "url": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/cdn-zones-custom-rules.html",
7098
7202
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/cdn-zones-custom-rules.md",
7099
- "headings": "Validation Overview • Rule Expression • Rule Actions • Rule Order • Position • Create a Custom Rule • Sample Success Response - 201 HttpStatus Code • Get All Custom Rules • Sample Success Response - 200 HttpStatus Code • Get a Custom Rule • Sample Success Response - 200 HttpStatus Code • Update a Custom Rule • Sample Success Response - 200 HttpStatus Code • Update the Order of All Custom Rules • Sample Success Response - 200 HttpStatus Code • Delete a Custom Rule • Sample Success Response - 204 HttpStatus Code (No Content) • Transition From Firewall Rules to Custom Rules • Manage Block All Rule Information • Create an Allowlist Using Custom Rules • Create a Blocklist Using Custom Rules • Custom Rules FAQ",
7203
+ "headings": "Validation Overview • Rule Expression • Rule Actions • Rule Order • Position • Examples • Create a Custom Rule • Sample Success Response - 201 HttpStatus Code • Get All Custom Rules • Sample Success Response - 200 HttpStatus Code • Get a Custom Rule • Sample Success Response - 200 HttpStatus Code • Update a Custom Rule • Sample Success Response - 200 HttpStatus Code • Update the Order of All Custom Rules • Sample Success Response - 200 HttpStatus Code • Delete a Custom Rule • Sample Success Response - 204 HttpStatus Code (No Content) • Custom Rules FAQ",
7100
7204
  "summary": "Create and manage eCDN custom firewall rules to control incoming traffic using expressions, request parameters, and rule actions like block or js_challenge.",
7101
7205
  "keywords": [
7102
7206
  "eCDN custom rules",
@@ -7370,6 +7474,7 @@
7370
7474
  "category": "commerce-api",
7371
7475
  "url": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/custom-api-caching.html",
7372
7476
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/custom-api-caching.md",
7477
+ "headings": "CDN Caching",
7373
7478
  "summary": "Enable and configure response caching for Custom API endpoints using setExpires() and setVaryBy() methods to improve performance.",
7374
7479
  "keywords": [
7375
7480
  "caching custom API",
@@ -7578,7 +7683,7 @@
7578
7683
  "category": "commerce-api",
7579
7684
  "url": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/develop.html",
7580
7685
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/develop.md",
7581
- "headings": "Prerequisites • Next Steps",
7686
+ "headings": "API Categories Overview • Start Here: Common Task Paths • Building a Storefront • Automating Backend Operations • Building with Storefront Next • Building with PWA Kit • Prerequisites • Next Steps",
7582
7687
  "summary": "Build applications using B2C Commerce APIs with resources for Shopper and Admin APIs, including prerequisites and best practices.",
7583
7688
  "keywords": [
7584
7689
  "B2C Commerce API",
@@ -7759,6 +7864,32 @@
7759
7864
  "commerce-api/url-encode"
7760
7865
  ]
7761
7866
  },
7867
+ {
7868
+ "id": "commerce-api/guest-order-access-code",
7869
+ "title": "Guest Order Access with an Access Code (OTP)",
7870
+ "category": "commerce-api",
7871
+ "url": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/guest-order-access-code.html",
7872
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/guest-order-access-code.md",
7873
+ "headings": "What the Platform Does vs. What You Do • Capabilities With and Without OMS • Reach Orders No Longer in B2C Commerce • Flow Overview • Lookup Only (No OMS) • Full Self-Service (with Integrated OMS) • Implement the Delivery Hook • Register the Extension Point • Implement the Script • Hook Parameters • Return Values • Deliver Through a Non-Email Channel • Call the Shopper Orders Endpoints • Request an Access Code • Look Up the Order • Without Integrated OMS • With Integrated OMS (`expand=oms`) • Cancel an Order (Requires Integrated OMS) • Return Items (Requires Integrated OMS) • Access Code Rules • Limitations • Best Practices • See Also",
7874
+ "summary": "Enable guest shoppers to securely access and manage their orders after losing session via email-based one-time password (OTP) access codes.",
7875
+ "keywords": [
7876
+ "guest order access",
7877
+ "OTP",
7878
+ "one-time password",
7879
+ "access code",
7880
+ "order lookup",
7881
+ "Shopper Orders API",
7882
+ "guest checkout",
7883
+ "order self-service",
7884
+ "email hook",
7885
+ "order management",
7886
+ "guest authentication",
7887
+ "session recovery"
7888
+ ],
7889
+ "relatedEntries": [
7890
+ "commerce-api/use-shopper-api"
7891
+ ]
7892
+ },
7762
7893
  {
7763
7894
  "id": "commerce-api/hook-method-details",
7764
7895
  "title": "Hook Method Details",
@@ -7817,6 +7948,21 @@
7817
7948
  "url": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/hybrid-auth-shared-setup.html",
7818
7949
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/hybrid-auth-shared-setup.md",
7819
7950
  "headings": "Step 1: Set Up a SLAS Client • Step 2: Enable Session Bridging • Step 3: (Optional) Configure Third-Party IDP and Social Login • Step 4: Configure Business Manager • Step 5: Remove Plugin SLAS (If Migrating) • Step 6: Remove OCAPI Permissions (If Migrating from Plugin SLAS) • Step 7: (Optional) Set Shopper Context • Step 8: (Optional) Enable or Disable Do-Not-Track Synchronization • DNT Cookie Expiration • Next Steps",
7951
+ "summary": "Configure shared Hybrid Auth setup across all storefront architectures including SLAS client, session bridging, and platform dependencies.",
7952
+ "keywords": [
7953
+ "hybrid auth setup",
7954
+ "SLAS client configuration",
7955
+ "session bridging",
7956
+ "commerce API authentication",
7957
+ "third-party IDP",
7958
+ "social login",
7959
+ "business manager",
7960
+ "Storefront Next",
7961
+ "PWA Kit",
7962
+ "SFRA",
7963
+ "shopper APIs",
7964
+ "hybrid authentication"
7965
+ ],
7820
7966
  "relatedEntries": [
7821
7967
  "commerce-api/hybrid-authentication"
7822
7968
  ]
@@ -8006,7 +8152,8 @@
8006
8152
  ],
8007
8153
  "relatedEntries": [
8008
8154
  "commerce-api/scapi-get-started",
8009
- "commerce-api/server-side-web-tier-caching"
8155
+ "commerce-api/server-side-web-tier-caching",
8156
+ "commerce-api/cdn-caching"
8010
8157
  ]
8011
8158
  },
8012
8159
  {
@@ -8479,7 +8626,7 @@
8479
8626
  "category": "commerce-api",
8480
8627
  "url": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/slas-best-practices.html",
8481
8628
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/slas-best-practices.md",
8482
- "headings": "Strict Client Auth • Mitigate Guest Token Reuse • Recommended Guest Token Flow • Session Rotation Step 1: Get a Fresh Guest Token • Session Rotation Step 2: Swap Tokens in the Storefront • Result: Empty Order List Following Account Registration • Edge Cases to Consider",
8629
+ "headings": "Strict Client Auth • Handle the Audience (`aud`) Claim • Mitigate Guest Token Reuse • Recommended Guest Token Flow • Session Rotation Step 1: Get a Fresh Guest Token • Session Rotation Step 2: Swap Tokens in the Storefront • Result: Empty Order List Following Account Registration • Edge Cases to Consider",
8483
8630
  "summary": "Implement SLAS security best practices including Strict Client Auth for private clients and guest session rotation to enhance authentication and prevent token reuse.",
8484
8631
  "keywords": [
8485
8632
  "SLAS best practices",
@@ -8710,7 +8857,7 @@
8710
8857
  "category": "commerce-api",
8711
8858
  "url": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/slas-passwordless-login-overview.html",
8712
8859
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/slas-passwordless-login-overview.md",
8713
- "headings": "Passwordless Login Feature Support",
8860
+ "headings": "Choosing a Passwordless Method • Decision Guidance • Passwordless Login Feature Support",
8714
8861
  "summary": "Implement secure passwordless authentication for shoppers using OTPs, SMS, or passkeys via SLAS.",
8715
8862
  "keywords": [
8716
8863
  "passwordless login",
@@ -9210,6 +9357,7 @@
9210
9357
  "category": "commerce-api",
9211
9358
  "url": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/troubleshoot.html",
9212
9359
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/troubleshoot.md",
9360
+ "headings": "Quick Triage: Find Your Solution • Troubleshooting Resources • Step-by-Step Troubleshooting Process • 1. Identify the Request • 2. Check the Response • 3. Review Logs • 4. Monitor Performance • 5. Verify Configuration • 6. Test and Validate",
9213
9361
  "summary": "Debug and resolve B2C Commerce API issues using error codes, response analysis, rate limits, timeouts, and performance monitoring tools.",
9214
9362
  "keywords": [
9215
9363
  "API troubleshooting",
@@ -9292,7 +9440,7 @@
9292
9440
  "category": "commerce-api",
9293
9441
  "url": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/use-admin-api.html",
9294
9442
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/use-admin-api.md",
9295
- "headings": "Next Steps",
9443
+ "headings": "Admin API Overview • Authentication Prerequisites • Common Automation Scenarios • Scenario 1: Automated Inventory Synchronization • Scenario 2: CDN Configuration Management • Scenario 3: Product Catalog Updates • Scenario 4: Customer Data Integration • Scenario 5: Multi-Site Configuration Deployment • Additional Resources • Next Steps",
9296
9444
  "summary": "Configure and manage SCAPI Admin APIs for CDN zones, inventory, WAF rules, certificates, and authentication settings.",
9297
9445
  "keywords": [
9298
9446
  "SCAPI Admin API",
@@ -9343,7 +9491,7 @@
9343
9491
  "category": "commerce-api",
9344
9492
  "url": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/use-shopper-api.html",
9345
9493
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/commerce-api/guide/use-shopper-api.md",
9346
- "headings": "Next Steps",
9494
+ "headings": "Common Use Case Mappings • Building a Product Listing Page (PLP) • Building a Product Detail Page (PDP) • Building a Checkout Flow • Implementing Personalization • Additional Resources • Next Steps",
9347
9495
  "summary": "Access Shopper APIs for authentication, context management, and SEO to build B2C Commerce storefronts.",
9348
9496
  "keywords": [
9349
9497
  "Shopper APIs",
@@ -9364,6 +9512,7 @@
9364
9512
  "commerce-api/slas",
9365
9513
  "commerce-api/shopper-context-api",
9366
9514
  "commerce-api/work-with-baskets-orders",
9515
+ "commerce-api/guest-order-access-code",
9367
9516
  "commerce-api/promotion-details",
9368
9517
  "commerce-api/mcp-shopper-tools",
9369
9518
  "commerce-api/url-resolution"
@@ -9540,6 +9689,7 @@
9540
9689
  "pwa-kit-managed-runtime/address-autocomplete",
9541
9690
  "pwa-kit-managed-runtime/one-click-checkout",
9542
9691
  "pwa-kit-managed-runtime/tracking-consent",
9692
+ "pwa-kit-managed-runtime/protect-storefront",
9543
9693
  "pwa-kit-managed-runtime/maximizing-your-cache-hit-ratio",
9544
9694
  "pwa-kit-managed-runtime/create-a-sitemap"
9545
9695
  ]
@@ -10021,6 +10171,20 @@
10021
10171
  "url": "https://developer.salesforce.com/docs/commerce/pwa-kit-managed-runtime/guide/hybrid-routing-matrix.html",
10022
10172
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/pwa-kit-managed-runtime/guide/hybrid-routing-matrix.md",
10023
10173
  "headings": "Use the Right Rule Syntax by Setup Type • Architectural Foundations • Matrix Configurations • Matrix-01: Modern Core (Home, PDP, PLP on PWA Kit) • Matrix-02: Modern Checkout (Cart and Checkout on PWA Kit) • Matrix-03: Modern Entry Only (Home on PWA Kit) • Matrix-04: Legacy Entry Only (Home on SFRA) • Matrix-05: Catalog-Only Migration (PLP/PDP on PWA Kit) • Matrix-06: Account and Auth Only (Identity Flows on PWA Kit) • Global Framework Requirements",
10174
+ "summary": "Configure routing between PWA Kit and SFRA/SiteGenesis using eCDN rules and app/routes.jsx filtering for hybrid storefronts.",
10175
+ "keywords": [
10176
+ "hybrid storefront routing",
10177
+ "PWA Kit routing matrix",
10178
+ "eCDN routing rules",
10179
+ "app/routes.jsx",
10180
+ "Composable Storefront",
10181
+ "SFRA SiteGenesis",
10182
+ "Managed Runtime MRT",
10183
+ "Cloudflare rule expression",
10184
+ "hybrid proxy local development",
10185
+ "phased headless rollout",
10186
+ "React Router navigation"
10187
+ ],
10024
10188
  "relatedEntries": [
10025
10189
  "pwa-kit-managed-runtime/hybrid-implementation"
10026
10190
  ]
@@ -10917,6 +11081,32 @@
10917
11081
  "pwa-kit-managed-runtime/hybrid-upgrade-v2.x"
10918
11082
  ]
10919
11083
  },
11084
+ {
11085
+ "id": "pwa-kit-managed-runtime/protect-storefront",
11086
+ "title": "Limit Access to a Storefront Under Development",
11087
+ "category": "pwa-kit-managed-runtime",
11088
+ "url": "https://developer.salesforce.com/docs/commerce/pwa-kit-managed-runtime/guide/protect-storefront.html",
11089
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/pwa-kit-managed-runtime/guide/protect-storefront.md",
11090
+ "headings": "Enable a Protected Storefront • Limitations",
11091
+ "summary": "Enable Protected Storefronts in Business Manager to restrict storefront access during development to only authorized organization users via basic authentication.",
11092
+ "keywords": [
11093
+ "protected storefront",
11094
+ "limit access",
11095
+ "development environment",
11096
+ "basic auth",
11097
+ "site status",
11098
+ "shared password",
11099
+ "restrict access",
11100
+ "storefront under development",
11101
+ "Business Manager",
11102
+ "access control",
11103
+ "authentication",
11104
+ "online protected"
11105
+ ],
11106
+ "relatedEntries": [
11107
+ "pwa-kit-managed-runtime/build-customize"
11108
+ ]
11109
+ },
10920
11110
  {
10921
11111
  "id": "pwa-kit-managed-runtime/proxying-requests",
10922
11112
  "title": "Proxy Requests",
@@ -12007,7 +12197,7 @@
12007
12197
  "category": "sfnext",
12008
12198
  "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-analytics.html",
12009
12199
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-analytics.md",
12010
- "headings": "How It Works • Tracking Consent • Configure Consent Categories • Require a Consent Category per Adapter • Set Up Einstein Activities • Set Up Active Data • Prerequisites • Step 1: Enable Data Collection • Step 2: Confirm That Sites Are Online • Step 3: Confirm that Tracking (Default for New Storefront Session) Is Enabled • Step 4: Configure Active Data • Analytics Events • Adding More Event Types • Engagement Adapters • Adding More Adapters • See Also",
12200
+ "headings": "How It Works • Tracking Consent • Configure Consent Categories • Require a Consent Category per Adapter • Set Up Einstein Activities • Set Up Active Data • Prerequisites • Step 1: Enable Data Collection • Step 2: Confirm That Sites Are Online • Step 3: Confirm that Tracking (Default for New Storefront Session) Is Enabled • Step 4: Configure Active Data • Set Up Data 360 • Analytics Events • Adding More Event Types • Engagement Adapters • Adding More Adapters • See Also",
12011
12201
  "summary": "Collect and track storefront activity using Storefront Next analytics hooks, events, and consent management integrated with Einstein and third-party systems.",
12012
12202
  "keywords": [
12013
12203
  "analytics tracking",
@@ -12024,7 +12214,7 @@
12024
12214
  "event tracking"
12025
12215
  ],
12026
12216
  "relatedEntries": [
12027
- "sfnext/sfnext-get-started"
12217
+ "sfnext/sfnext-data-analytics-section"
12028
12218
  ]
12029
12219
  },
12030
12220
  {
@@ -12254,11 +12444,11 @@
12254
12444
  },
12255
12445
  {
12256
12446
  "id": "sfnext/sfnext-component-extend-upgrade",
12257
- "title": "Upgrade Customized Components",
12447
+ "title": "Customization Best Practices and Upgrades",
12258
12448
  "category": "sfnext",
12259
12449
  "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-component-extend-upgrade.html",
12260
12450
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-component-extend-upgrade.md",
12261
- "headings": "Method 1: Merge Updates Directly • When to Use This Method • Trade-offs • Method 2: Maintain Separate Component Copies • When to Use This Method • Implementation Steps • Vite Configuration Example • Trade-offs • Note About UI Extensions",
12451
+ "headings": "Customizing Existing Components and Code • Minor Updates: Merge Updates in Storefront Code • When to Use This Method • Trade-offs • Major Updates: Maintain Separate Code Copies • When to Use This Method • Implementation Steps • Vite Configuration Example • Trade-offs • Adding Net New Custom Components • Single-Use Component: Import the Component • When to Use This Method • Trade-offs • Multi-Use Component: Use the Extension Model • When to Use This Method • Trade-offs",
12262
12452
  "summary": "Manage customized React components by merging updates directly or maintaining separate copies with Vite aliasing to balance improvements with preserving customizations.",
12263
12453
  "keywords": [
12264
12454
  "customize components",
@@ -12351,23 +12541,27 @@
12351
12541
  ],
12352
12542
  "relatedEntries": [
12353
12543
  "sfnext/sfnext-get-started",
12544
+ "sfnext/sfnext-component-extend-upgrade",
12354
12545
  "sfnext/sfnext-mcp-server",
12355
12546
  "sfnext/sfnext-mrt-data-store",
12356
12547
  "sfnext/sfnext-customize",
12548
+ "sfnext/sfnext-manage-sites",
12549
+ "sfnext/sfnext-pd-deploy-cartridge",
12357
12550
  "sfnext/sfnext-push-mrt-auto",
12358
12551
  "sfnext/sfnext-modern-exp",
12359
12552
  "sfnext/sfnext-instore-pickup",
12553
+ "sfnext/sfnext-order-mgmt",
12360
12554
  "sfnext/sfnext-shopping-agent",
12361
12555
  "sfnext/sfnext-page-designer",
12362
- "sfnext/sfnext-address-autocomplete",
12363
12556
  "sfnext/sfnext-one-click-checkout",
12557
+ "sfnext/sfnext-address-autocomplete",
12558
+ "sfnext/sfnext-salesforce-payments",
12364
12559
  "sfnext/sfnext-passwordless-login",
12365
12560
  "sfnext/sfnext-email-verification",
12366
12561
  "sfnext/sfnext-social-login",
12367
12562
  "sfnext/sfnext-password-reset",
12368
12563
  "sfnext/sfnext-protect-storefront",
12369
12564
  "sfnext/sfnext-extend",
12370
- "sfnext/sfnext-component-extend-upgrade",
12371
12565
  "sfnext/sfnext-base-path",
12372
12566
  "sfnext/sfnext-domain-cookie",
12373
12567
  "sfnext/sfnext-hybrid",
@@ -12375,6 +12569,18 @@
12375
12569
  "sfnext/sfnext-login-support-hybrid"
12376
12570
  ]
12377
12571
  },
12572
+ {
12573
+ "id": "sfnext/sfnext-data-analytics-section",
12574
+ "title": "Integrate Storefront Next with Analytics and Data Platforms",
12575
+ "category": "sfnext",
12576
+ "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-data-analytics-section.html",
12577
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-data-analytics-section.md",
12578
+ "relatedEntries": [
12579
+ "sfnext/sfnext-get-started",
12580
+ "sfnext/sfnext-analytics",
12581
+ "sfnext/sfnext-data360"
12582
+ ]
12583
+ },
12378
12584
  {
12379
12585
  "id": "sfnext/sfnext-data-loading",
12380
12586
  "title": "Data Fetching",
@@ -12401,6 +12607,17 @@
12401
12607
  "sfnext/sfnext-architecture"
12402
12608
  ]
12403
12609
  },
12610
+ {
12611
+ "id": "sfnext/sfnext-data360",
12612
+ "title": "Send Storefront Next Analytics Events to Data 360",
12613
+ "category": "sfnext",
12614
+ "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-data360.html",
12615
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-data360.md",
12616
+ "headings": "Prerequisites • Set Up Storefront Next Events for Data 360 • Verify Event Retrieval",
12617
+ "relatedEntries": [
12618
+ "sfnext/sfnext-data-analytics-section"
12619
+ ]
12620
+ },
12404
12621
  {
12405
12622
  "id": "sfnext/sfnext-debug",
12406
12623
  "title": "Debug Storefront Next",
@@ -12610,7 +12827,7 @@
12610
12827
  "sfnext/sfnext-mrt-section",
12611
12828
  "sfnext/sfnext-test-debug-section",
12612
12829
  "sfnext/sfnext-perf-section",
12613
- "sfnext/sfnext-analytics",
12830
+ "sfnext/sfnext-data-analytics-section",
12614
12831
  "sfnext/sfnext-pwa-overview",
12615
12832
  "sfnext/sfnext-cli"
12616
12833
  ]
@@ -12639,6 +12856,7 @@
12639
12856
  "relatedEntries": [
12640
12857
  "sfnext/sfnext-get-started",
12641
12858
  "sfnext/sfnext-release-notes",
12859
+ "sfnext/sfnext-mrt-release-notes",
12642
12860
  "sfnext/sfnext-architecture",
12643
12861
  "sfnext/sfnext-browser-comp",
12644
12862
  "sfnext/sfnext-quick-start-choice",
@@ -12827,6 +13045,32 @@
12827
13045
  "sfnext/sfnext-architecture"
12828
13046
  ]
12829
13047
  },
13048
+ {
13049
+ "id": "sfnext/sfnext-load-more",
13050
+ "title": "Keep Shoppers Browsing with Load More Pagination",
13051
+ "category": "sfnext",
13052
+ "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-load-more.html",
13053
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-load-more.md",
13054
+ "headings": "Configure Pagination",
13055
+ "summary": "Configure load-more pagination on product listing pages to keep shoppers browsing without page reloads or scroll loss.",
13056
+ "keywords": [
13057
+ "load more pagination",
13058
+ "product listing pages",
13059
+ "pagination configuration",
13060
+ "uiConfig.pages.category.pagination",
13061
+ "load more button",
13062
+ "numbered pagination",
13063
+ "traditional pagination",
13064
+ "infinite scroll",
13065
+ "category page pagination",
13066
+ "sfnext pagination",
13067
+ "progress indicator",
13068
+ "ui config"
13069
+ ],
13070
+ "relatedEntries": [
13071
+ "sfnext/sfnext-modern-exp"
13072
+ ]
13073
+ },
12830
13074
  {
12831
13075
  "id": "sfnext/sfnext-logging",
12832
13076
  "title": "Logging in Storefront Next",
@@ -12905,6 +13149,17 @@
12905
13149
  "sfnext/sfnext-customize-sf"
12906
13150
  ]
12907
13151
  },
13152
+ {
13153
+ "id": "sfnext/sfnext-manage-sites",
13154
+ "title": "Manage Sites for Storefront Next in Business Manager",
13155
+ "category": "sfnext",
13156
+ "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-manage-sites.html",
13157
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-manage-sites.md",
13158
+ "headings": "Prerequisites • Assign or Remove Sites from a Storefront",
13159
+ "relatedEntries": [
13160
+ "sfnext/sfnext-customize-sf"
13161
+ ]
13162
+ },
12908
13163
  {
12909
13164
  "id": "sfnext/sfnext-mcp-server",
12910
13165
  "title": "Build Storefront Next Faster with Agent Skills and the B2C DX MCP Server",
@@ -12954,7 +13209,8 @@
12954
13209
  ],
12955
13210
  "relatedEntries": [
12956
13211
  "sfnext/sfnext-customize-sf",
12957
- "sfnext/sfnext-prototyped-cmp"
13212
+ "sfnext/sfnext-prototyped-cmp",
13213
+ "sfnext/sfnext-load-more"
12958
13214
  ]
12959
13215
  },
12960
13216
  {
@@ -13145,7 +13401,7 @@
13145
13401
  "category": "sfnext",
13146
13402
  "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-mrt-launch-storefront.html",
13147
13403
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-mrt-launch-storefront.md",
13148
- "headings": "Before You Begin • Launching an Environment • 1. Import the Storefront to the Staging or Production Instance • 2. Perform the Cutover • Default Domain • Vanity Domain or New Zone • Set the MRT Access Control Header • Send the Access Control Header from eCDN to the MRT Origin • 3. Monitor the Site",
13404
+ "headings": "Before You Begin • Launching an Environment • 1. Import the Storefront to the Staging or Production Instance • 2. Update the SLAS Client Redirect URI • 3. Perform the Cutover • Default Domain • Vanity Domain or New Zone • Send the Access Control Header from eCDN to the MRT Origin • 4. Finalize the Environment • 5. Monitor the Site",
13149
13405
  "summary": "Deploy and publish your Storefront Next to a public web address with proper DNS and Managed Runtime configuration.",
13150
13406
  "keywords": [
13151
13407
  "launch storefront",
@@ -13165,6 +13421,30 @@
13165
13421
  "sfnext/sfnext-mrt-section"
13166
13422
  ]
13167
13423
  },
13424
+ {
13425
+ "id": "sfnext/sfnext-mrt-node-version",
13426
+ "title": "Node Version Support",
13427
+ "category": "sfnext",
13428
+ "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-mrt-node-version.html",
13429
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-mrt-node-version.md",
13430
+ "headings": "Supported Node Versions • Opt Out of Email Notifications",
13431
+ "summary": "Manage Node.js versions for Storefront Next Managed Runtime environments, understanding support lifecycles and upgrade requirements.",
13432
+ "keywords": [
13433
+ "Node.js version support",
13434
+ "Node version upgrade",
13435
+ "Managed Runtime Node",
13436
+ "Storefront Next Node",
13437
+ "Node.js deprecation",
13438
+ "Node.js end of life",
13439
+ "Runtime environment Node",
13440
+ "Node version lifecycle",
13441
+ "Node.js deployment",
13442
+ "Runtime Admin notifications"
13443
+ ],
13444
+ "relatedEntries": [
13445
+ "sfnext/sfnext-mrt-section"
13446
+ ]
13447
+ },
13168
13448
  {
13169
13449
  "id": "sfnext/sfnext-mrt-overview",
13170
13450
  "title": "Managed Runtime Overview",
@@ -13191,6 +13471,30 @@
13191
13471
  "sfnext/sfnext-mrt-section"
13192
13472
  ]
13193
13473
  },
13474
+ {
13475
+ "id": "sfnext/sfnext-mrt-release-notes",
13476
+ "title": "Managed Runtime Release Notes",
13477
+ "category": "sfnext",
13478
+ "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-mrt-release-notes.html",
13479
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-mrt-release-notes.md",
13480
+ "headings": "<Date> - vx.y.z • <Release note title> • 7/28/2026 • SSR Bundle Size Limit Lowered to 247 MB",
13481
+ "summary": "Track Managed Runtime feature updates, changes, and new capabilities across releases.",
13482
+ "keywords": [
13483
+ "Managed Runtime release notes",
13484
+ "MRT releases",
13485
+ "sfnext updates",
13486
+ "SSR bundle size limit",
13487
+ "release changelog",
13488
+ "feature updates",
13489
+ "MRT changelog",
13490
+ "version history",
13491
+ "Managed Runtime changes",
13492
+ "deployment updates"
13493
+ ],
13494
+ "relatedEntries": [
13495
+ "sfnext/sfnext-get-started-section"
13496
+ ]
13497
+ },
13194
13498
  {
13195
13499
  "id": "sfnext/sfnext-mrt-routing-bm",
13196
13500
  "title": "Configure Routing Rules in Business Manager",
@@ -13241,6 +13545,7 @@
13241
13545
  "sfnext/sfnext-get-started",
13242
13546
  "sfnext/sfnext-mrt-overview",
13243
13547
  "sfnext/sfnext-mrt-administration",
13548
+ "sfnext/sfnext-mrt-node-version",
13244
13549
  "sfnext/sfnext-mrt-api",
13245
13550
  "sfnext/sfnext-mrt-environment-vars",
13246
13551
  "sfnext/sfnext-mrt-env-vars-api",
@@ -13255,7 +13560,7 @@
13255
13560
  "category": "sfnext",
13256
13561
  "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-multi-site.html",
13257
13562
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-multi-site.md",
13258
- "headings": "How Multisite URLs Work • Default Template Behavior • Define Your Sites • Configure URL Patterns • Use Alias Maps for Clean URLs • Configure Site and Locale Detection • Configure Site-Context Cookies • URL Pattern Use Cases • Site and Locale in the Path (Default) • Locale Only in the Path • Site in the Path, Locale in Query Params • Everything in Query Params • Locale Only in Query Params • No Prefix (Single Site) • Access Site Context in Components • Important Considerations • See Also",
13563
+ "headings": "How Multisite URLs Work • Default Template Behavior • Define Your Sites • MRT Data Store Sites • Configure URL Patterns • Use Alias Maps for Clean URLs • Configure Site and Locale Detection • Configure Site-Context Cookies • URL Pattern Use Cases • Site and Locale in the Path (Default) • Locale Only in the Path • Site in the Path, Locale in Query Params • Everything in Query Params • Locale Only in Query Params • No Prefix (Single Site) • Access Site Context in Components • Important Considerations • See Also",
13259
13564
  "summary": "Configure how site and locale identifiers appear in Storefront Next URLs using path prefixes, query parameters, or cookies for single/multiple site deployments.",
13260
13565
  "keywords": [
13261
13566
  "multisite URLs",
@@ -13300,13 +13605,38 @@
13300
13605
  "sfnext/sfnext-customize-sf"
13301
13606
  ]
13302
13607
  },
13608
+ {
13609
+ "id": "sfnext/sfnext-order-mgmt",
13610
+ "title": "Integrate Storefront Next with Salesforce Order Management",
13611
+ "category": "sfnext",
13612
+ "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-order-mgmt.html",
13613
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-order-mgmt.md",
13614
+ "headings": "Prerequisite: Connect Your B2C Commerce Instance and the Order Management Organization • Step 1: Connect a B2C Commerce Instance to the SOM organization • Step 2: Verify the Connection by Placing an Order • Storefront Next-SOM Integration Considerations • Getting Orders from SOM • Placing Orders in SOM • Managing Orders in SOM • Prerequisites • Accessing the Order Detail Page • Tracking Order Shipments • Canceling an Order • Returning Eligible Items • Order Refunds • Status Badge",
13615
+ "summary": "Connect Storefront Next with Salesforce Order Management to display and sync orders, enabling shoppers to track shipments and manage returns from the storefront.",
13616
+ "keywords": [
13617
+ "Storefront Next Order Management integration",
13618
+ "SOM integration",
13619
+ "order history page",
13620
+ "order tracking",
13621
+ "order synchronization",
13622
+ "B2C Commerce Order Management",
13623
+ "order status",
13624
+ "return management",
13625
+ "self-service order management",
13626
+ "order detail page",
13627
+ "connect B2C Commerce SOM"
13628
+ ],
13629
+ "relatedEntries": [
13630
+ "sfnext/sfnext-customize-sf"
13631
+ ]
13632
+ },
13303
13633
  {
13304
13634
  "id": "sfnext/sfnext-page-designer",
13305
13635
  "title": "Page Designer Integration with Storefront Next",
13306
13636
  "category": "sfnext",
13307
13637
  "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-page-designer.html",
13308
13638
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-page-designer.md",
13309
- "headings": "How It Works for Developers • Core Architecture • Prerequisites • Implement Page Designer Components • Component Structure • Metadata Decorators • Basic Component Example • Attribute Types • Component Patterns: Fallbacks and Loaders • Fallback Components • Data Loaders • Components with Regions • Region Definition Options • Implement Page Designer Pages • Page Structure • Page Metadata Options • Supported Aspect Types • Region Usage in Pages • Generate Cartridges • Automatic Generation on Build • Manual Generation • Generated Output Structure • Generated Metadata Format • Key Notes • Deploy Cartridges • Prerequisites • Deploy the Cartridge with the `push` Command • Manual Cartridge Deployment • Deployment Process • Business Manager Setup • Prerequisites • Using Page Designer • Page Assignment • Live Preview • Shopper Context Preview • Known Limitations • Local Development • Setup Steps • Troubleshooting • Merchant Storefront Next Customization • Content Slot Migration from SFRA",
13639
+ "headings": "How It Works for Developers • Core Architecture • Implement Page Designer Components • Component Structure • Metadata Decorators • Basic Component Example • Attribute Types • Component Patterns: Fallbacks and Loaders • Fallback Components • Data Loaders • Components with Regions • Region Definition Options • Implement Page Designer Pages • Page Structure • Page Metadata Options • Supported Aspect Types • Region Usage in Pages • Generate Cartridges • Automatic Generation on Build • Manual Generation • Generated Output Structure • Generated Metadata Format • Key Notes • Deploy Cartridges • Prerequisites • Deploy the Cartridge with the `push` Command • Manual Cartridge Deployment • Deployment Process • Business Manager Setup • Prerequisites • Using Page Designer • Page Assignment • Live Preview • Shopper Context Preview • Known Limitations • Local Development • Setup Steps • Troubleshooting • Merchant Storefront Next Customization • Content Slot Migration from SFRA",
13310
13640
  "summary": "Build reusable React components for Page Designer in Storefront Next to enable merchants to create personalized pages without developer intervention.",
13311
13641
  "keywords": [
13312
13642
  "Page Designer",
@@ -13403,6 +13733,17 @@
13403
13733
  "sfnext/sfnext-page-designer"
13404
13734
  ]
13405
13735
  },
13736
+ {
13737
+ "id": "sfnext/sfnext-passkey-login",
13738
+ "title": "Passwordless Login with Passkeys for Storefront Next",
13739
+ "category": "sfnext",
13740
+ "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-passkey-login.html",
13741
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-passkey-login.md",
13742
+ "headings": "Prerequisites • Configure Settings • How Passkeys Work in Storefront Next • Register a Passkey • Sign In with a Passkey • Manage Passkeys • Best Practices • Troubleshoot Passkeys • See Also",
13743
+ "relatedEntries": [
13744
+ "sfnext/sfnext-passwordless-login"
13745
+ ]
13746
+ },
13406
13747
  {
13407
13748
  "id": "sfnext/sfnext-password-reset",
13408
13749
  "title": "Implement Password Reset for Storefront Next",
@@ -13450,6 +13791,33 @@
13450
13791
  "config.server.ts",
13451
13792
  "shopper authentication"
13452
13793
  ],
13794
+ "relatedEntries": [
13795
+ "sfnext/sfnext-customize-sf",
13796
+ "sfnext/sfnext-passkey-login"
13797
+ ]
13798
+ },
13799
+ {
13800
+ "id": "sfnext/sfnext-pd-deploy-cartridge",
13801
+ "title": "Deploy the Storefront Next Cartridge for Page Designer",
13802
+ "category": "sfnext",
13803
+ "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-pd-deploy-cartridge.html",
13804
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-pd-deploy-cartridge.md",
13805
+ "headings": "Prerequisites: • Automatic Cartridge Sync with the VS Code Extension",
13806
+ "summary": "Deploy the Storefront Next cartridge to upload Page Designer metadata and components to your B2C Commerce instance after setup or modifications.",
13807
+ "keywords": [
13808
+ "deploy Storefront Next cartridge",
13809
+ "Page Designer metadata",
13810
+ "Page Designer components",
13811
+ "dw.json configuration",
13812
+ "B2C DX CLI deploy",
13813
+ "cartridge deployment",
13814
+ "Page Designer pages",
13815
+ "Storefront Next setup",
13816
+ "Business Manager deployment",
13817
+ "upload Page Designer",
13818
+ "code version deployment",
13819
+ "sfnext cartridge"
13820
+ ],
13453
13821
  "relatedEntries": [
13454
13822
  "sfnext/sfnext-customize-sf"
13455
13823
  ]
@@ -14202,7 +14570,7 @@
14202
14570
  "category": "sfnext",
14203
14571
  "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-quick-start-create-bm.html",
14204
14572
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-quick-start-create-bm.md",
14205
- "headings": "Prerequisites • Constraints • Steps",
14573
+ "headings": "Prerequisites • Constraints • Steps • Next Steps",
14206
14574
  "summary": "Create a Storefront Next in Business Manager and generate its code locally using Salesforce CLI.",
14207
14575
  "keywords": [
14208
14576
  "Storefront Next",
@@ -14228,7 +14596,7 @@
14228
14596
  "category": "sfnext",
14229
14597
  "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-quick-start-create-bm-github.html",
14230
14598
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-quick-start-create-bm-github.md",
14231
- "headings": "Prerequisites • Constraints • Steps",
14599
+ "headings": "Prerequisites • Constraints • Steps • Next Steps",
14232
14600
  "summary": "Set up a Storefront Next instance in Business Manager by connecting a GitHub repository to create storefront code and dependent API and Managed Runtime resources.",
14233
14601
  "keywords": [
14234
14602
  "Storefront Next",
@@ -14280,11 +14648,50 @@
14280
14648
  "category": "sfnext",
14281
14649
  "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-release-notes.html",
14282
14650
  "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-release-notes.md",
14283
- "headings": "<Date> - vx.y.z • <Date> - B2C Commerce 26.x • <Release note title> • July 9, 2026 - v1.1.0 • Maintain Shopper Sessions Across Subdomains in Storefront Next • Secure Your Storefront and Stabilize APIs by Upgrading to React Router 7.18",
14651
+ "headings": "<Date> - vx.y.z • <Date> - B2C Commerce 26.x • <Release note title> • August 4, 2026 - Storefront Next 1.2.0 • Streamline Sign-In with Passkeys • Manage Sites for Storefront Next in Business Manager • Send Storefront Next Analytics Events to Data 360 • Integrate Storefront Next with Salesforce Order Management • Keep Shoppers Browsing with Load More Pagination • July 21, 2026 - B2C Commerce 26.8 • Speed Up Storefront Next Development with the Beauty Street Template • July 9, 2026 - Storefront Next 1.1.0 • Process Payments Natively in Storefront Next with Salesforce Payments • Maintain Shopper Sessions Across Subdomains in Storefront Next • Secure Your Storefront and Stabilize APIs by Upgrading to React Router 7.18",
14652
+ "summary": "Track new features and changes in Storefront Next monthly releases with links to detailed GitHub release information.",
14653
+ "keywords": [
14654
+ "Storefront Next release notes",
14655
+ "sfnext releases",
14656
+ "Storefront Next features",
14657
+ "monthly releases",
14658
+ "version updates",
14659
+ "changelog",
14660
+ "GitHub releases",
14661
+ "Storefront Next v1.0.0",
14662
+ "template updates",
14663
+ "B2C Commerce releases"
14664
+ ],
14284
14665
  "relatedEntries": [
14285
14666
  "sfnext/sfnext-get-started-section"
14286
14667
  ]
14287
14668
  },
14669
+ {
14670
+ "id": "sfnext/sfnext-salesforce-payments",
14671
+ "title": "Configure Salesforce Payments for Storefront Next",
14672
+ "category": "sfnext",
14673
+ "url": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-salesforce-payments.html",
14674
+ "sourceUrl": "https://developer.salesforce.com/docs/commerce/sfnext/guide/sfnext-salesforce-payments.md",
14675
+ "headings": "Set Up Salesforce Payments for Storefront Next • Prerequisites • Steps",
14676
+ "summary": "Set up Salesforce Payments for Storefront Next by configuring payment gateways, defining types, and updating configuration URLs.",
14677
+ "keywords": [
14678
+ "Salesforce Payments",
14679
+ "Storefront Next",
14680
+ "payment gateway configuration",
14681
+ "Adyen",
14682
+ "Stripe",
14683
+ "PayPal",
14684
+ "checkout",
14685
+ "B2C Commerce payments",
14686
+ "config.server.ts",
14687
+ "payment methods",
14688
+ "sdkUrl",
14689
+ "metadataUrl"
14690
+ ],
14691
+ "relatedEntries": [
14692
+ "sfnext/sfnext-customize-sf"
14693
+ ]
14694
+ },
14288
14695
  {
14289
14696
  "id": "sfnext/sfnext-security-headers",
14290
14697
  "title": "Security Response Headers",