creating-b2b-commerce-store

Original🇺🇸 English
Translated

Interactive workflow to create Commerce B2B Stores and retrieve storefront metadata. Use when users want to: create B2B Commerce stores, build Commerce storefronts, set up B2B stores from Vibes, retrieve Commerce metadata, deploy Commerce experiences, work with DigitalExperienceBundle for Commerce.

6installs
Added on

NPX Install

npx skill4agent add forcedotcom/sf-skills creating-b2b-commerce-store

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.
  2. Never create storefront metadata manually. The Commerce setup wizard generates hundreds of configuration values. Manual creation will fail.
  3. Always list sites before retrieval. Store names get underscores and number suffixes (e.g., "My B2B Store" → "My_B2B_Store1"). Let the user select from the actual list.
  4. 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
  2. Click "Create Store" or "Setup New Store"
  3. Select "Commerce Store" as the store type
  4. 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
  5. Complete wizard - it creates:
    • WebStore record
    • Default buyer group and entitlement policies
    • Associated Digital Experience (LWR site)
  6. 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:
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:
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

Reference

  • store-vs-storefront.md - Technical details on Store vs Storefront, source control, and why manual creation fails

Remember

Store first (creates storefront) → Retrieve → Customize