Adobe Commerce Business Practitioner Expert study materials
Adobe Commerce Business Practitioner Expert study resources

Adobe Commerce Business Practitioner Expert: Commerce Architecture and Platform Fundamentals

Adobe Commerce Business Practitioner Expert · Work through your exam, one topic at a time.

All guide sections

Commerce Architecture and Platform Fundamentals

What to know

Adobe Commerce is a PHP application built on the Magento framework and the MVC pattern. Understand the layered architecture: presentation (themes, layout XML, blocks, templates, PHTML), application (controllers, service contracts, repositories, models), and persistence (resource models, collections, declarative schema). Know that service contracts (interfaces in Api/) are the stable integration boundary and that repositories replace direct model access for CRUD.

Key structural concepts: areas (frontend, adminhtml, webapi, cron, graphql) determine which configuration and layout load; dependency injection via di.xml and virtual types; plugins (interceptors) for before/around/after behavior; observers for events; declarative schema and data patches for upgrades. Understand the difference between Commerce (paid, B2B and advanced features) and Magento Open Source, and know multi-store/multi-website scope hierarchy: global → website → store view, with configuration inheritance and scope overrides.

Traps

Questions often confuse plugins vs. observers (plugins intercept method calls and can modify arguments/return values; observers react to dispatched events and cannot alter the caller). Another trap is scope resolution - a value set at website scope overrides global but is overridden by store view. Also watch for indexers (on-save vs. on-schedule vs. update-by-schedule) and cron dependency: many catalog and price features only reflect after reindex.

Rule of thumb

If a customization must change a core method's input or output, use a plugin; if it must react to something that happened, use an observer; if it must add data structures, use declarative schema.

Worked example

A merchant sets a base price at global scope and a different price attribute value at store view scope. The storefront shows the store-view value because store view is the most specific scope in the inheritance chain.