forcedotcom/sf-skills

commerce-b2b-store-create

Interactive workflow to create Commerce B2B Stores and retrieve storefront metadata.

查看源码

使用方法

  1. 复制安装命令,在自己的智能体环境安装前先检查源码包。
  2. 从原始文档核对所需工具、凭据和支持的宿主。
  3. 说明输入材料与期望交付物,并对照来源检查输出。
npx skills add https://github.com/forcedotcom/sf-skills --skill commerce-b2b-store-create

开始前需了解

  • 安装不包含模型订阅、API 额度或访问文件的权限。
  • 仓库星数和安装量反映活跃情况,不等于独立质量或安全测试。
仓库原始内容

按源仓库内容呈现,保留标题、案例、代码、表格、链接以及原文引用的演示图片。

Commerce B2B Storefront Creation

Interactive workflow to create a Commerce B2B Store in Salesforce and retrieve the auto-generated storefront metadata to your repository.

Critical Concepts

Commerce B2B = Store (backend data) + Storefront (frontend metadata). Store must be created first in the org to auto-generate the Storefront. Never create storefront metadata manually.

See Store vs Storefront Reference

When to Use This Skill

Trigger when users request:

  • "Create a B2B Commerce store"
  • "Build a Commerce storefront"
  • "Set up Commerce B2B"
  • "Create B2B Commerce"
  • "Retrieve Commerce storefront metadata"
  • "Deploy B2B storefront"

Rules That Always Apply

  1. Always follow the interactive flow. Do NOT skip steps. Each step requires user confirmation before proceeding.
  1. Never create storefront metadata manually. The Commerce setup wizard generates hundreds of configuration values. Manual creation will fail.
  1. Always list sites before retrieval. Store names get underscores and number suffixes (e.g., "My B2B Store" → "MyB2BStore1"). Let the user select from the actual list.
  1. Always use `--json` flag. Include --json on all Salesforce CLI commands for parseable output.

Interactive Workflow: 7 Steps

Step 1: Explain Commerce B2B Concept

Agent explains: Commerce has Store (data) + Storefront (metadata). Store must be created first.

See: Store vs Storefront Reference

Step 2: Guide User to Create B2B Store

Agent provides these steps:

  1. Navigate to Setup → Commerce → Stores
  • Or: App Launcher → Commerce → Create Store
  1. Click "Create Store" or "Setup New Store"
  1. Select "Commerce Store" as the store type
  1. Follow the wizard:
  • Store Name: Choose descriptive name (e.g., "My B2B Store")
  • Important: Spaces become underscores in folder names
  • Site URL: Unique URL name for the site
  1. Complete wizard - it creates:
  • WebStore record
  • Default buyer group and entitlement policies
  • Associated Digital Experience (LWR site)
  1. Optional: Configure payment gateway, tax provider, shipping

Agent then asks: "Have you completed creating the B2B Store in your org? Reply 'yes' when ready and provide the store name you used."


Step 3: Get User Confirmation

Agent waits for: User confirmation and store name

Agent validates: Store name format (no special characters, spaces will appear as underscores)

Agent acknowledges: "Great! Let me list the available storefronts in your org..."


Step 4: List Available LWR Sites

Agent executes:

bash
sf org list metadata --metadata-type DigitalExperienceConfig --json

Agent should:

  • Parse JSON output to extract site names
  • Display as numbered list
  • Explain naming (underscores, number suffixes)

Example output:

text
Available Digital Experience sites:
1. My_B2B_Store1
2. Partner_Portal
3. Customer_Community

Step 5: Let User Select Storefront

Agent asks: "Which site corresponds to your B2B Store? Select the site name:"

Agent validates: Selection matches available sites

Agent confirms: "Got it! I'll retrieve metadata for [site-name]..."


Step 6: Retrieve Storefront Metadata

Agent executes:

bash
sf project retrieve start -m DigitalExperienceBundle:site/<selected-store-name> --json

Agent should:

  • Show retrieval progress
  • Confirm successful retrieval
  • List retrieved directory structure

Expected output:

text
Retrieved: force-app/main/default/digitalExperiences/site/My_B2B_Store1/
├── My_B2B_Store1.digitalExperience-meta.xml
├── sfdc_cms__view/ (home, current_cart, detail_*, list_*, etc.)
├── sfdc_cms__site/
├── sfdc_cms__route/
└── [other sfdc_cms__* directories]

Step 7: Provide Next Steps

Agent provides:

Metadata retrieved successfully!

Next steps:

  • Customize with custom LWCs or branding changes
  • Deploy: sf project deploy start --source-dir force-app/main/default/digitalExperiences/site/My_B2B_Store1/ --json

Resources: DigitalExperienceBundle Docs, B2B Commerce Guide


Reference

  • [store-vs-storefront.md](references/store-vs-storefront.md) - Technical details on Store vs Storefront, source control, and why manual creation fails

Remember

Store first (creates storefront) → Retrieve → Customize

按任务相关推荐

来自同一仓库

更多 Skills

全部 Skills
forcedotcom
社区

platform-custom-application-generate

Use this skill when users need to create or configure tab-based Salesforce Custom Applications with navigation, branding, and action overrides. Trigger when users mention custom apps, application metadata, app navigation, or organizing tabs into applications. Use when users want to create app containers for tabs and pages. Do NOT use when the goal is hosting a React UI bundle in the App Launcher — use experience-ui-bundle-custom-app-generate for that case.

安装量
1
GitHub Stars
1112
最近更新
10月23日
forcedotcom
社区

platform-custom-field-generate

Use when users create, generate, or validate Salesforce Custom Field metadata. Trigger on custom fields, field types, Roll-Up Summary, Master-Detail/Lookup relationships, formula fields, picklists, dependent (controlling) picklists, referencing a value set from a field, or scoping picklist values per record type; also field deployment errors, including a record type that won't deploy without a business process. DO NOT TRIGGER for creating/customizing the value set itself — a new GlobalValueSet o

安装量
1
GitHub Stars
1112
最近更新
10月23日
forcedotcom
社区

platform-custom-metadata-type-generate

Use to create, generate, or validate Salesforce Custom Metadata Type metadata — the mdt object, fields, and deployable records. Trigger on custom metadata types, CMDT, mdt objects, .md-meta.xml files, or cross-org reference/config data; also admin-maintained mapping/lookup/crosswalk tables (config that changes without a deploy belongs in a CMDT, never hardcoded in Apex/Flow), and CMDT deploy errors. DO NOT TRIGGER for Custom Settings (use platform-custom-setting-generate), business-record object

安装量
1
GitHub Stars
1112
最近更新
10月23日
forcedotcom
社区

platform-custom-report-type-generate

Use to create, generate, or validate Salesforce Custom Report Type metadata. Trigger on custom report types, CRTs, cross-object reports, report builder data sources, exposing fields for reporting across related objects, inner vs outer joins in reports, report type categories, or deployment errors for .reportType-meta.xml files. Do NOT trigger for running, editing, or filtering existing reports; creating report folders, dashboards, or list views; or non-authoring reporting questions.

安装量
1
GitHub Stars
1112
最近更新
10月23日