forcedotcom/sf-skills

commerce-b2b-store-create

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

Voir la source

Mode d’emploi

  1. Copiez la commande et examinez le paquet avant de l’installer dans votre environnement agent.
  2. Consultez le document original pour les outils, identifiants et environnements requis.
  3. Décrivez les entrées et le livrable souhaité ; comparez la sortie aux sources.
npx skills add https://github.com/forcedotcom/sf-skills --skill commerce-b2b-store-create

Avant de commencer

  • L’installation n’inclut ni abonnement au modèle, ni quota API, ni accès aux fichiers.
  • Étoiles et installations reflètent l’activité, pas un test indépendant de qualité ou de sécurité.
Document Skill original

Rendu depuis le dépôt source en conservant titres, exemples, code, tableaux, liens et images.

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

Tâches connexes

du même dépôt

Autres Skills

Tous les Skills
forcedotcom
Communauté

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.

installations
1
GitHub Stars
1,1 k
Mis à jour
23 oct.
forcedotcom
Communauté

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

installations
1
GitHub Stars
1,1 k
Mis à jour
23 oct.
forcedotcom
Communauté

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

installations
1
GitHub Stars
1,1 k
Mis à jour
23 oct.
forcedotcom
Communauté

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.

installations
1
GitHub Stars
1,1 k
Mis à jour
23 oct.