Salesforce B2C Commerce Developer Practice Exam
Prepare for the Salesforce Certified B2C Commerce Developer exam across everything it tests — SFRA structure and cartridge layering, JavaScript controllers and ISML templates, OCAPI and hooks, Business Manager configuration and data import, and debugging, caching, and performance — with objective-mapped questions, Learn-mode feedback, and a full timed Exam mode.
Start 24-hour free trial →B2C Commerce Developer exam at a glance
- Vendor
- Salesforce
- Certification
- Salesforce Certified B2C Commerce Developer (formerly Demandware Developer)
- Level
- Developer (specialist e-commerce credential)
- Blueprint
- Four official exam sections; verify the current exam guide edition before scheduling
- Format
- 60 scored multiple-choice questions, plus up to 5 unscored questions
- Duration
- 105 minutes
- Passing score
- 65%
- Cost (USD)
- $200 registration; $100 retake
- Delivery
- Proctored, onsite at a test center or online
- Prerequisites
- None required. Salesforce recommends ~1 year of developer experience plus 3–6 months in a B2C Commerce role, and hands-on sandbox access (not a free Developer Edition org).
- Maintenance
- Complete the annual B2C Commerce Developer maintenance badge on Trailhead to keep the credential from expiring
Sources: Salesforce — B2C Commerce Developer Exam Guide · Salesforce Developers — B2C Commerce. Verify current details with Salesforce before scheduling.
About the Salesforce B2C Commerce Developer certification
The Salesforce Certified B2C Commerce Developer credential validates that you can build and customize storefronts on the Salesforce B2C Commerce Digital platform (formerly Demandware) — implementing and using Storefront Reference Architecture (SFRA), creating cartridges to add reusable functionality, writing and modifying JavaScript controllers and ISML templates, integrating third-party systems, and troubleshooting and optimizing live sites. It is a specialist developer exam: unlike core Salesforce certifications built on Apex and Lightning, B2C Commerce uses JavaScript, ISML, and its own architecture, so traditional Salesforce developers should expect a real learning curve.
This is a hands-on exam. Salesforce recommends about a year of developer experience plus three to six months in a B2C Commerce role, and the questions are scenario-based — you choose the right approach given a storefront situation, not just recall terms. The single most important habit to build is cartridge overlay mechanics: creating a custom cartridge that overrides SFRA behavior through the cartridge path, without modifying the base app_storefront_base cartridge. Note that B2C Commerce needs special sandbox access — you cannot practice in a free Developer Edition org. For the broader Salesforce platform context, see the Salesforce ecosystem guide.
B2C Commerce Developer exam sections
Salesforce’s exam guide organizes this exam into four official sections, with Application Development the most heavily weighted. Published sources disagree on the exact percentage split, so the sections below are described by scope rather than an invented breakdown — weight your study toward Application Development first, then round out the other three.
The core coding work: JavaScript controllers, ISML templates, forms, content slots, custom objects, SFRA structure and cartridge layering, OCAPI/Shop API, and hooks. The most heavily weighted section by far.
Configuring the development environment: setting up the IDE and WebDAV to deploy cartridges to the correct version directories, and preparing sandbox instances for development.
Site architecture and how elements interact: storefront and master catalogs, categories, inventory, promotions, products, price books, cart, checkout, and the cartridge path.
Site configuration and data operations in Business Manager: catalog management and importing/exporting data with the Import/Export modules, including large batch feeds.
Sections reflect Salesforce’s official B2C Commerce Developer exam outline. Because published per-section percentages conflict across sources, none are stated here rather than risk false precision — Application Development is confirmed as the most heavily weighted. Source: Salesforce — B2C Commerce Developer Exam Guide. Confirm the current outline before scheduling.
Who this exam is for
Salesforce positions this credential for developers who build and maintain B2C Commerce storefronts. It is a specialist, hands-on exam:
- B2C Commerce and e-commerce developers implementing features, fixing defects, and optimizing performance on live storefronts.
- Full-stack and web developers with a JavaScript background moving into commerce, comfortable with ISML, controllers, and SFRA.
- Agency and retail platform developers customizing catalogs, checkout, content slots, and third-party integrations for merchants.
- Salesforce ecosystem developers broadening from core clouds into commerce — expecting a distinct architecture built on JavaScript rather than Apex.
If you architect commerce solutions rather than implement them, the B2C Commerce Architect credential is the better target. Because the storefront work is JavaScript-heavy, the Salesforce JavaScript Developer credential pairs well; core Salesforce developers may also hold Platform Developer, though it covers a different (Apex/Lightning) stack. For the developer and technical-lead roles this certification supports, see our Career Hub.
What this B2C Commerce Developer practice exam delivers
Learn mode
Get the correct answer, the explanation, and why each other choice is wrong — immediately after each question. Best for cartridge-overlay and caching scenarios, where the plausible-looking wrong answers are the trap.
Exam mode
60 questions, 105-minute timer — the real exam format. Build the pacing you need for the lengthy, scenario-style question stems.
Scenario-based questions
Case-driven items that mirror real storefront decisions — how to add checkout steps, cache personalized content, or bulk-import prices — matching how the exam actually asks.
Score by objective section
Results break down across Application Development, Setup, Working With a Site, and Business Manager data management — so practice tells you exactly what to revisit.
Sample B2C Commerce Developer practice questions
Ten free questions across the B2C Commerce Developer sections, with full explanations and source links to Salesforce documentation. The complete bank is available with the 24-hour trial.
A developer needs to add custom business logic that runs when a product is added to the cart, on a storefront built with SFRA. What is the recommended approach?
- Add the logic as inline JavaScript in the ISML template
- Create a custom cartridge that overrides the relevant SFRA controller using cartridge-path precedence
- Use a database trigger that fires when the basket object is modified
- Modify the core SFRA cartridge files directly to add the logic
Show answer & explanation
Correct: B — A custom cartridge that overrides the controller via the cartridge path. Cartridge layering lets you override SFRA controllers by placing a custom cartridge higher in the cartridge path, so you can upgrade SFRA later without losing customizations.
Why not the others: modifying core SFRA files (D) makes upgrades extremely painful; inline JavaScript in templates (A) breaks separation of concerns; B2C Commerce doesn’t support database triggers (C).
Source: Salesforce Developers — SFRA features & components → Further reading: PowerKram — B2C Commerce Architect →A developer must display custom product badges (‘Best Seller’, ‘Limited Edition’) on product tiles, with the badges managed by merchandisers in Business Manager. What is the best approach?
- Store badge assignments in a static JSON file deployed with the cartridge
- Hard-code badge logic in the ISML templates based on product IDs
- Use custom attributes on products managed in Business Manager, and render them conditionally in ISML via product-model decorators
- Create a separate API endpoint the frontend calls for each product badge
Show answer & explanation
Correct: C — Custom attributes plus product-model decorators. Custom attributes let merchandisers manage badges in Business Manager without developer involvement, and product-model decorators expose those attributes to ISML for conditional rendering.
Why not the others: hard-coding by product ID (B) breaks as the catalog changes; a static JSON file (A) needs a code deployment for every change; a per-product API call (D) creates a performance problem.
Source: Salesforce Developers — B2C Commerce → Further reading: PowerKram — Salesforce ecosystem guide →A product detail page takes 8 seconds to load. Profiling shows a custom hook making three sequential external API calls. What should the developer do to improve performance?
- Increase the server timeout to 15 seconds to prevent timeout errors
- Remove the hook entirely to fix the performance issue
- Move the API calls to the client side using AJAX after page load
- Refactor the hook to run API calls in parallel where possible, cache responses that change infrequently, and add circuit-breaker logic for failing services
Show answer & explanation
Correct: D — Parallelize, cache, and add circuit breakers. Parallel execution cuts total wait from the sum of the calls to the longest single call; caching removes redundant calls for stable data; circuit breakers stop a slow or down service from cascading.
Why not the others: raising the timeout (A) hides the symptom without fixing the cause; removing the hook (B) loses business logic; client-side calls (C) still hurt perceived performance and can expose credentials.
Source: Salesforce Developers — B2C Commerce →A developer must add a gift-messaging checkout step between the shipping and billing steps in the SFRA checkout flow. How should they implement it?
- Create a custom cartridge that extends the checkout controller, adds a new stage to the checkout-steps configuration, and includes the matching ISML template and client-side JavaScript
- Implement the gift message as a post-checkout popup after order confirmation
- Modify the core checkout controller to insert the new step directly
- Add the gift-message fields to the existing shipping form
Show answer & explanation
Correct: A — Extend the checkout controller in a custom cartridge. Extending the controller in an overlay cartridge inserts a new step into the flow while staying upgrade-safe, and the step brings its own controller action, ISML template, and client-side validation.
Why not the others: modifying the core controller (C) blocks SFRA upgrades; adding fields to the shipping form (D) conflates unrelated steps; a post-confirmation popup (B) misses the purchasing moment.
Source: Salesforce Developers — SFRA features & components → Further reading: PowerKram — JavaScript Developer →A mobile app needs to retrieve product data and manage the shopping basket for a B2C Commerce storefront via the Open Commerce API (OCAPI). Which OCAPI resources fit?
- Custom API endpoints built with Commerce Cloud Script
- Shop API for product search, product details, and basket management, since these are storefront-facing operations
- Data API for both product data and basket management
- Direct database queries against the Commerce Cloud data store
Show answer & explanation
Correct: B — The Shop API. The Shop API exposes storefront-facing resources — product search, product details, and basket/order management — designed for customer-facing apps like a mobile client.
Why not the others: the Data API (C) is for administrative operations, not shopper flows; custom endpoints (A) add work when standard resources exist; direct database access (D) isn’t available in Commerce Cloud.
Source: Salesforce Developers — B2C Commerce →A developer must update 100,000 product prices within a 2-hour maintenance window. Which import approach fits?
- Deploy a new cartridge with hardcoded price overrides
- Manually update prices through the Business Manager product editor
- Make individual OCAPI calls to update each product one at a time
- Use Business Manager Import/Export with a properly formatted XML or CSV feed, leveraging the batch import framework
Show answer & explanation
Correct: D — Business Manager batch Import/Export. The batch import framework processes large XML or CSV feeds for products, prices, and inventory efficiently — built for high-volume updates inside a maintenance window.
Why not the others: individual API calls for 100,000 products (C) blow past time limits and quotas; manual editing (B) is impractical at scale; hardcoded overrides in a cartridge (A) violate data-management principles.
Source: Salesforce Developers — Configure SFRA (site import) → Further reading: PowerKram — DevOps certification guide →A home page must display different promotional banners depending on whether the visitor is a guest, registered user, or VIP loyalty member. What should the developer configure?
- Content slot configurations with customer-group targeting rules in Business Manager, mapped to slot rendering templates
- JavaScript A/B testing that randomly assigns banners to visitors
- Three separate home page templates — one per customer type
- Hard-coded conditional logic in the home page template based on session attributes
Show answer & explanation
Correct: A — Content slots with customer-group targeting. Content slots support customer-group targeting in Business Manager, so merchandisers assign configurations matching guest, registered, and VIP groups, and the slot rendering template handles display.
Why not the others: A/B testing (B) is random, not targeted; hard-coded logic (D) needs a developer for every content change; three templates (C) triple maintenance.
Source: Salesforce Developers — B2C Commerce →A caching issue causes one customer’s personalized pricing to be served to other customers on a product detail page. What is the most likely cause and fix?
- The CDN is serving stale pages from an incorrect cache key
- The customer’s browser is caching the page locally
- Page-level caching is caching personalized content; use remote includes for the personalized price components to separate cached and dynamic content
- The server is overloaded and mixing up sessions between customers
Show answer & explanation
Correct: C — Page-level caching of personalized content; fix with remote includes. Full-page caching stores the whole rendered page, including personalized elements like customer-specific pricing. Remote includes let the page stay cached while personalized sections are excluded and rendered fresh per request.
Why not the others: server overload (D) doesn’t cause session mixing; browser caching (B) is per-user and wouldn’t affect others; a CDN cache key (A) may contribute, but the root cause is page-level caching of personalized content.
Source: Salesforce Developers — B2C Commerce →A developer needs a custom hook that validates promotional codes during checkout against an external promotions service. How should the hook be implemented?
- Add the validation logic to the ISML template’s form-submission handler
- Register the hook in the hooks.json configuration file of a custom cartridge and implement the validation logic in the hook script module
- Modify the OCAPI framework source code to add the validation
- Create client-side JavaScript validation that calls the external service directly from the browser
Show answer & explanation
Correct: B — Register the hook in hooks.json and implement it as a script module. Hooks are declared in hooks.json and implemented as cartridge script modules, providing extension points at defined moments in the commerce flow.
Why not the others: modifying OCAPI framework source (C) isn’t possible; client-side validation (D) exposes the service and can be bypassed; ISML handlers (A) are for rendering, not API-level business logic.
Source: Salesforce Developers — SFRA features & components (hooks) →A developer needs a logging strategy to track behavior and errors for troubleshooting production issues on a storefront. Which approach fits?
- Use console.log() statements throughout the codebase
- Send all log data to an external service with synchronous API calls on every page load
- Use the Script API Logger class with appropriate log levels, and configure log retention in Business Manager
- Write log data directly to a custom object in the Commerce Cloud database
Show answer & explanation
Correct: C — The Script API Logger class with Business Manager retention. The Logger class supports structured logging at configurable levels (DEBUG, INFO, WARN, ERROR), and Business Manager controls retention and access — the platform-standard approach.
Why not the others: console.log() (A) doesn’t persist on the server; custom objects (D) aren’t built for high-volume logging; synchronous external calls on every page load (B) severely hurt performance.
Source: Salesforce Developers — B2C Commerce →Keep going: Learning & Career resources
B2C Commerce development is a specialist track inside the Salesforce ecosystem — and it opens onto developer, senior-developer, and technical-lead roles. Two PowerKram hubs back this exam.
Deep dive: exam format, sections, study path, and maintenance
Exam format and facts
The Salesforce Certified B2C Commerce Developer exam is 60 scored multiple-choice questions (plus up to five unscored research questions) in 105 minutes, with a 65% passing score. Registration is $200 USD and a retake is $100. It is delivered proctored, either onsite at a test center or online. The credential was formerly known as the Demandware Developer certification. See the official exam guide →
The four exam sections
Salesforce’s outline covers four sections: B2C Commerce Setup (IDE, WebDAV, sandbox prep), Work With a B2C Site (catalogs, categories, inventory, promotions, price books, cart, checkout, and the cartridge path), Data Management Using Business Manager (site configuration and Import/Export), and Application Development — the most heavily weighted, covering controllers, ISML, forms, content slots, custom objects, OCAPI, and hooks. Published percentage splits disagree across third-party sources, so weight your study toward Application Development first and confirm the current outline in the exam guide rather than relying on any single quoted breakdown. SFRA documentation →
Cartridge overlays and caching: the make-or-break topics
Two areas decide a lot of borderline scores. Cartridge overlays: never modify app_storefront_base — create a custom cartridge and place it higher in the cartridge path so SFRA upgrades stay clean, and practice building one that overrides a controller end to end. Caching: understand that full-page caching stores personalized content too, and that remote includes are how you keep a page cached while rendering personalized sections (like customer-specific pricing) fresh. Getting these two right covers a meaningful share of the scenario questions. SFRA features & components →
Realistic study path
This exam rewards hands-on practice, and B2C Commerce needs special sandbox access — a free Developer Edition org won’t do, so secure sandbox access before you start. Build a custom cartridge that adds a feature end to end (controller, ISML template, form), import data through Business Manager, and work through the B2C Commerce Developer trail on Trailhead. Then use objective-mapped practice to find weak sections and go back into the sandbox for those specific tasks. Salesforce suggests roughly a year of developer experience plus three to six months in a B2C Commerce role. B2C Commerce documentation →
Maintaining the certification
Unlike some credentials, this one requires upkeep: you complete the B2C Commerce Developer certification maintenance badge on Trailhead once a year to stay current with new releases. If you miss the maintenance deadline, the certification can expire, so set a reminder when your maintenance window opens. Compare with the B2C Commerce Architect track →
Frequently asked questions
How many questions is the exam, and what is the passing score?
The exam has 60 scored multiple-choice questions plus up to five unscored research questions, delivered in 105 minutes, with a passing score of 65%. Registration is $200 USD and a retake is $100. Question stems are scenario-based, so practicing under a timer helps with pacing.
What are the exam sections?
Salesforce’s outline has four sections: B2C Commerce Setup, Work With a B2C Site, Data Management Using Business Manager, and Application Development. Application Development is the most heavily weighted. Published per-section percentages vary across sources, so confirm the current outline in the official exam guide.
Do I need a traditional Salesforce (Apex) background?
No. B2C Commerce is a distinct platform (formerly Demandware) built on JavaScript, ISML, and its own architecture rather than Apex, Visualforce, or Lightning. A web-development and JavaScript background is more relevant, and traditional Salesforce developers should expect a learning curve.
Can I practice in a free Developer Edition org?
No. Unlike core Salesforce certifications, B2C Commerce requires special sandbox access rather than a free Developer Edition org. Secure sandbox access before you begin studying, because hands-on practice is essential to passing this exam.
Does the certification expire?
It can. You must complete the B2C Commerce Developer certification maintenance badge on Trailhead once a year to keep the credential current with new product releases. If you miss the maintenance requirements by the due date, the certification expires.
Start your free 24-hour B2C Commerce Developer practice trial
Full access to the question bank, both study modes, and score-by-section feedback. No credit card required.
Start free trial →