Magento Open Source catalog and product types setup: where the work starts
The product type and attribute model decide the catalog data, checkout behavior and fulfillment of a store, so they must be designed before anyone enters a product. A team planning a store whose range mixes physical goods, color or size variants, bundled kits, downloadable files and services will make most of its later decisions at this stage: which items need a shipping address, which need stock tracking, and which can be sold without a delivery step. Magento Open Source ships six product types: simple, configurable, grouped, bundle, virtual and downloadable. Teams usually implement this module at the start of a build, before the theme, pricing and integrations depend on the catalog structure. The source files are licensed under OSL-3.0, with AFL 3.0 also included in the distribution, according to the magento/magento2 GitHub repository.
Each product type drives a different checkout path, so map every product family to one type before building anything. A virtual product skips shipping, while a downloadable product delivers linked files after purchase. A configurable product is a parent built from simple child SKUs, each carrying the attribute values a shopper selects, such as color and size. A grouped product presents related simple products together on one page, and a bundle lets the shopper choose components within rules you define. Gift cards are not a native product type in the open source edition. They are an Adobe Commerce feature, so any gift card workaround must be scoped as custom work. Ask your developers and any extension vendor to confirm compatibility with the exact version you run before you commit to that approach.
Attribute sets and categories are the second layer of the model, and they are harder to change later. An attribute set groups the attributes that a product family needs, so a clothing set and a spare parts set can hold different fields without clutter. Attributes used as configurable options must be global and select-type, and that constraint should shape how you name and scope them from the start. Categories control navigation and the filters shoppers use, so decide which attributes are filterable and which values are shared across families. Renaming attribute codes after launch touches stored data, URLs and integrations, so lock the codes during design. A useful early check is to load a small, representative sample of each product type and run it through the full cart and checkout flow.
Before you ask for a quote, prepare a written inventory of product families, their type, their attributes and the integrations that will read or write catalog data, including any ERP or PIM feed. Confirm with your developers how your chosen version handles converting a product from one type to another. If the answer is unclear, plan to recreate the affected products rather than assume a conversion is safe. Also list every custom product behavior you expect, including any gift card requirement, because that work is the most likely source of schedule and cost variation. The scope agreed in writing should name the product types in use, the attribute sets, the category tree, the import method for initial data, and the test cases that prove each type checks out correctly.
What the Magento Open Source catalog does out of the box
Magento Open Source provides a catalog built from six product types, attribute sets, categories and product attributes. The magento/magento2 README describes the edition as delivering basic ecommerce capabilities for building an online store, and Adobe's developer documentation covers Open Source together with Adobe Commerce, so confirm each feature against the Open Source documentation before you rely on it.
Simple and configurable products
A simple product is a single sellable item with its own SKU and price. A configurable product is a parent whose child simple products vary by attributes such as size or color, so shoppers choose a combination on the storefront. Check which attributes can drive variations, because those attributes become the options shoppers see and the SKUs your warehouse and ERP must match. Model variations early, since changing the attributes used for configuration later affects existing child products.
Grouped and bundle products
A grouped product presents several simple products together on one page, and each one is bought separately with its own quantity. A bundle product combines selectable components, such as a camera body with lenses, into one purchasable item. Decide early whether a bundle has a fixed price or the sum of its components, and whether shoppers may choose components freely. Test how each bundle option appears in the cart and on the order, because inventory and fulfillment follow the components.
Virtual and downloadable products
A virtual product has no shipping weight and skips the shipping step, which suits services or access delivered outside the warehouse. A downloadable product delivers a file or link after purchase. Confirm where the files are hosted, who may download them, how many downloads are allowed, and whether storage stays within your infrastructure. Confirm also whether license keys or access codes are covered by the built-in behavior or need a custom module.
Attribute sets
An attribute set is a template that groups product attributes for a family of products, such as apparel or spare parts. Assign one set per product family so each product shows only the fields that apply to it. Changing the attribute set on products that already hold data can leave values stranded, so settle the set structure before importing the catalog. Decide who owns attribute naming, since similar attributes created by different teams can produce duplicate filters.
Categories and product attributes
Categories organize products into a navigation tree and drive category pages and layered filters. Product attributes hold the values shoppers filter and compare on, such as material or brand. Decide which attributes are filterable and which stay internal, and keep the category tree shallow enough for your navigation design. After launch, check how category and attribute changes affect search indexing and URLs, and test the storefront filters with a realistic sample of catalog data.
Module-based catalog extension
Catalog behavior beyond the built-in product types is added through modules, themes and language packages. Adobe's PHP development overview states that modules follow a PSR-4 compliant structure, so namespaces and autoloading must match the directory layout. Decide which custom product behavior needs a module, record who maintains it, and retest it at each upgrade, since Adobe's upgrade guide names customizations as a driver of upgrade effort.
How Magento Open Source product types map to your catalog
The first decision in a Magento Open Source catalog is which product type each sellable item should use, because the type controls what data the item needs, how it is stocked, and whether it ships. Start with a list of your merchandise and sort it into four groups. Physical items that are picked, packed and shipped usually become simple products. Items that differ only by size, color or another option, sold under one listing, usually become configurable products with child simple products. Items sold together as a set, where the customer buys components as one purchase, are candidates for bundle products. Items with no shipment, such as service fees or access passes, are virtual products, and digital files delivered by download are downloadable products. Grouped products, which bundle separate items under one storefront page without a combined price, are a fifth option that many merchants overlook.
Each type requires different data, and missing data is the most common cause of a broken import. A configurable product needs child simple products, each with its own SKU, stock and price, plus the configurable attributes that the storefront uses to let shoppers choose between them. A bundle product needs its option groups and linked products defined before it can sell correctly. A downloadable product needs the file or link to deliver after payment. Virtual products skip the shipping step, so shipping rules that depend on weight or carrier will not apply to them. Ask your team to write down, for each type, which fields are mandatory and who supplies them, before any CSV file is prepared.
Attribute sets decide which fields each product sees in the admin. A clothing set might show size and color, while a set for accessories hides them. Keeping sets narrow reduces data entry errors and keeps the import file readable, but creating too many sets makes maintenance harder. Confirm with your merchandising team which attributes are required for each set, which are optional, and which should appear in the storefront filters. Also decide early whether the category structure and the attribute sets will be governed by a single owner, because changes to either after the import can require rework across many products.
Gift cards need a separate decision. Adobe Commerce provides a dedicated gift card product type, but Magento Open Source does not include it, so you will need a workaround such as a virtual product with custom options, or a third-party extension. Each option has trade-offs for balance tracking, redemption at checkout and reporting, so confirm the approach against your sales and accounting requirements before building it. Do not assume an extension behaves the same way on every version without checking its compatibility notes.
The right model should be confirmed by testing sample products before the full import. Create a small set covering each product type you plan to use, including one configurable item with several children, one bundle, one virtual product and one item with a tax class that differs from the others. Run each through the storefront, add to cart, apply a sample promotion, calculate tax for two destination addresses, quote shipping for both physical and non-physical items, and complete a test order. Record the results and fix any gaps in the model first. Testing at this stage costs far less than correcting thousands of imported records later.
Which catalog decisions Magento Open Source teams make first
This table compares the catalog decisions that shape checkout, search, fulfillment and pricing in Magento Open Source, with the options for each and the downstream effect of choosing one. Read each row as a decision to settle before product data is loaded, because changing a product type or attribute set later usually means re-keying or re-importing products. The main takeaway is that product type and pricing model choices affect the rest of the store, so they belong in the scope document rather than in the data load.
| Decision | Options | When each option fits | What it changes downstream |
|---|---|---|---|
| Variants | Configurable or simple products | Configurable fits one parent with size or color children. Simple fits single items or variants with unrelated data. | Configurable drives the option picker, child stock and price checks at add to cart. Simple products need separate pages and links. |
| Kits and sets | Bundle or grouped products | Bundle fits a kit sold at one price with selectable parts. Grouped fits related items bought separately under one page. | Bundle changes price calculation, stock logic and order line structure. Grouped keeps each child as its own order line. |
| Non-shipped items | Virtual or downloadable products | Virtual fits services or memberships with no file. Downloadable fits files delivered after payment. | Virtual skips the shipping step at checkout. Downloadable adds link delivery and download limits to the order flow. |
| Attribute sets | One shared set or one set per category family | A shared set suits a small, uniform range. Family sets suit ranges where apparel, electronics or parts need different fields. | Attribute sets control which fields appear on products and which filters the layered navigation can use. |
| Category tree | Shallow or deep tree, anchor on or off | A shallow tree suits small catalogs. Deeper trees suit large ranges that need navigation levels. Anchor affects whether parent categories show child products. | Depth affects menu design, URL paths and filter scope. Anchor changes which products appear in parent listings and search facets. |
| SKU and URL keys | Written convention or ad hoc values | A written convention suits any store that will be imported, integrated or migrated. Ad hoc values suit only very small stores. | SKUs link ERP, warehouse and order records. URL keys set product and category addresses, which affect SEO redirects when changed. |
| Pricing model | Catalog price rules or customer-specific prices in the catalog | Catalog price rules fit broad promotions. Customer-specific or B2B prices need confirmation of the edition features and the extensions your team plans to use. | Price rules alter the final price shown in listings and checkout. Catalog-stored prices affect import files, price indexing and quote handling. |
Gift cards in Open Source: the workaround and its trade-offs
Gift cards are a product type that Adobe Commerce provides and Magento Open Source does not. If your catalog plan assumes a native gift card product, you need a workaround before the build starts. The two realistic options are a virtual product with custom options that capture the gift card amount, or a third-party extension that adds gift card behavior. Neither is a built-in feature, so the choice depends on how much of the gift card lifecycle your business needs to run inside the store and how much custom code you are prepared to own.
The first option uses a virtual product, which has no shipping weight, combined with custom options so the shopper enters a value at the product page. Your team then has to make the amount flow through the cart, the order and the invoice, and to handle the code or balance that the customer later spends. Custom options do not track balances, enforce redemption at checkout or reverse a balance on refund. Each of those behaviors must be built or confirmed separately, and the reporting you rely on for liability and breakage will also need a design. Treat this option as a custom module decision, with the cost of building and testing that code carried by your project.
The second option is a third-party extension. Before you shortlist one, confirm in writing with the vendor that it supports your target Magento Open Source 2.4.x release and the PHP version listed in Adobe's system requirements for that release. Ask whether the extension has been tested against the patch level you plan to run, and how it handles balance tracking, redemption at checkout, partial redemption, refunds to the original tender and reporting exports. Extensions also add upgrade effort: each Adobe patch or minor release may require a compatibility check, and a vendor that lags behind a release can block your upgrade plan.
Whichever route you take, verify the full flow end to end on a staging instance that matches production: purchase of the gift card, delivery of the code or balance to the buyer, redemption across multiple orders, a partially used balance, cancellation and refund of both the gift card purchase and a redeemed order, and the resulting reports for finance. Run the tests after each platform patch as well as at launch. Record who owns the extension or custom code, who fixes defects, and what the vendor's support window is, because those answers determine the ongoing cost of the workaround more than the initial build does.
How a Magento Open Source catalog build runs, step by step
This sequence turns an unmodeled product list into a tested Magento Open Source catalog, with each step producing a document or configuration that the next step depends on. The order matters because attribute and product type decisions drive everything downstream, including imports, checkout tests and search indexing.
Audit the catalog and map product types
The team inventories every SKU family, including variants, bundles, kits, digital goods and services, and maps each one to a Magento Open Source product type: simple, configurable, grouped, bundle, virtual or downloadable. Gift cards need a separate decision because they are an Adobe Commerce only product type, so the workaround must be agreed here. The output is a product type matrix listing each family, its chosen type, the reason for it and the open questions. Sign-off is done when the merchandising and operations leads agree the matrix.
Design attributes and attribute sets
Using the matrix, the team defines each product attribute with its code, input type, scope, whether it is used for configurable options or filters, and its owner. Attributes are then grouped into attribute sets per product family so that a shirt and a cable do not share irrelevant fields. The output is an attribute dictionary and an attribute set map. Review confirms that every attribute has one owner and that no two attributes store the same fact under different names.
Build the category tree
The team designs the navigation hierarchy, anchor and non-anchor categories, and the category attributes used for landing pages and layered navigation. Category rules are written so that products are assigned consistently, either manually or by rule where the team has confirmed the behavior. The output is a category tree diagram and a category assignment rule sheet. The step is complete when the tree has been reviewed against the attribute dictionary so that every filter used in navigation maps to an attribute that exists.
Stand up a development environment on a supported release
The team provisions a development environment on a Magento Open Source release line that is still receiving support. Adobe's 2.4.9 system requirements list PHP 8.5, MySQL 8.4 or MariaDB 12.3 (recommended) or 11.8, OpenSearch 3, Redis or Valkey 9, RabbitMQ 4.3, Composer 2.10 and nginx 1.30 on Linux x86-64, and Adobe supports only the listed combinations, so any deviation must be confirmed before build work starts. The output is a versioned environment record with component versions and a working storefront and admin login. Verification is a clean install that completes without errors on the documented stack.
Import a representative sample
Before loading the full catalog, the team imports a sample that covers every product type, attribute set and category in the matrix, including edge cases such as configurable products with a missing option, bundles with optional items and downloadable products with links. The import uses a CSV template built from the attribute dictionary. The output is an import template and an import log showing rows accepted, rows rejected and the reason for each rejection. The step is complete when the sample imports without unexplained rejections and the admin catalog matches the matrix.
Test checkout and tax for each product type
The team writes a test script covering a purchase path for every product type, including configurable selection, bundle option choice, downloadable delivery and virtual order handling, with tax calculated against the rates and classes set for the target regions. Testers record expected and actual totals for each case. The output is a completed test script with pass or fail results and linked defects. Review confirms that every product type has at least one passing end-to-end order, and that tax results match the tax configuration signed off separately.
Load the full catalog and clean up data
Once the sample passes, the full catalog is loaded in batches using the same template, with a run log kept for each batch. The team then removes duplicates, fixes attribute values that fail the dictionary rules, reassigns products to categories and checks image paths and URL keys. The output is a load report and a cleanup register that records each correction and who approved it. Completion is marked when reconciliation between the source file and the store shows no unexplained differences in SKU count or key attributes.
Verify search, indexing and cache, then sign off
The team confirms that the search engine returns products for each category, filter and configurable option, and that indexers have completed without errors. Cache behavior is tested on pages that change after an update, and the team confirms the full-page cache setup, which Adobe documents as Varnish for self-managed installations. The final output is a verification checklist and a signed catalog sign-off record that lists the release line, open defects and owners for each. Sign-off is complete only when every item on the checklist has a recorded result.
What drives catalog setup cost and how to keep it down
This table lists the factors that change the effort of a Magento Open Source catalog build, why each one moves the work, and how to reduce it. Read the rows as a checklist to settle scope before asking for a quote. The main takeaway is that data quality and model decisions made early cost far less than changes made after the initial load.
| Driver | Why it changes effort | How to reduce it |
|---|---|---|
| SKU count and variant depth | Each configurable child is a separate product to create, price, stock and test. Deep variant matrices multiply indexing, import and QA work. | Limit variants to options shoppers actually choose. Confirm the expected SKU count and matrix size in writing before the data model is designed. |
| Quality of the source product data | Missing images, inconsistent units, duplicate SKUs and unstructured descriptions turn into manual cleanup before any import runs. This is usually the largest one-time cost. | Ask for a cleaned export and a data owner for each attribute. Run a sample import of a few hundred rows early to surface errors. |
| Number of attributes and attribute sets | Every attribute needs a type, scope, storefront behavior and sometimes a layered-navigation setting. Each attribute set must be mapped to product types and tested. | Keep attribute sets to the product families that differ. Reuse attributes across sets and retire unused ones before go-live. |
| Number of categories and filters | Category trees drive menus, URL rewrites, landing pages and layered navigation. Filters tied to attributes need indexing and front-end checks on every page type. | Design the category tree and filter list from search and navigation data. Start with a short list of filters and add more after launch. |
| Custom product types or extensions, including any gift card extension | Gift cards are an Adobe Commerce product type, so Open Source needs a custom module, a third-party extension or a workaround. Each adds code to design, test and maintain through every patch cycle. | Confirm which product types the business needs before design. Compare a custom module, an extension and a simpler product model, and ask for the upgrade cost of each option in the quote. |
| Integration with an ERP or PIM | Product master data, prices and stock flow from the external system. Field mapping, sync rules, conflict handling and error reporting add build and test effort that recurs as the source system changes. | Decide which system owns each field before the build. Keep the first release to one-way feeds and document the sync contract. |
| Multiple languages or store views | Each locale or store view multiplies translated attributes, URL keys, price scopes, tax settings and QA passes. Scope changes here affect almost every product. | Launch with the languages and views that carry the most revenue. Confirm translation ownership and whether content is supplied translated. |
| Number of test scenarios per product type | Simple, configurable, grouped, bundle, virtual, downloadable and custom types each need checkout, pricing, stock and admin tests. Scenario count grows with each product type and store view. | Limit launch product types to those in use. Build a shared test matrix once, then reuse it for onboarding and patch testing. |
| New product onboarding (recurring) | Each new product family repeats mapping, import validation, attribute checks and QA. Volume and frequency of launches set the ongoing load. | Create an onboarding template with required fields and an import checklist. Ask for a per-family estimate in the quote. |
| Attribute and category changes (recurring) | Adding or renaming attributes affects attribute sets, filters, indexes and integrations. Changes made without a process often break exports or search. | Require a change request for every attribute or category change and test it in a staging copy before release. |
| Patch cycles (recurring) | Adobe's upgrade guide recommends upgrading every patch cycle to stay secure, and extension count and custom code set how much retesting each cycle needs. Custom product types are often the most expensive part to retest. | Keep custom code small and documented, and avoid unneeded extensions. Ask for the retest scope for catalog features in the maintenance quote. |
Migrating product data into the Magento Open Source catalog
Most catalog migrations onto Magento Open Source use the built-in CSV import, which covers products from most source platforms once the data has been reshaped into Magento's column model. The Data Migration Tool is the other path Adobe documents, but it applies only when the source is Magento 1. Confirm the source platform and its version with Adobe's current migration documentation before you commit to a tool, because the choice determines how much of the mapping work falls to your team and how much is handled by the tool. Whichever route you take, the catalog design from the rest of this page (attribute sets, product types and category tree) has to exist first, since the import files reference those attributes, sets and category paths by name.
Build a separate import file for each product type rather than one mixed file. Simple and virtual products share a common column structure, while configurable parents, their child products, grouped products and bundles each depend on different columns such as configurable_variations, associated product SKUs and bundle option fields. Configurable children should be imported as simple products with their attribute values populated, and the parent row then links them through the configurable variations column. Bundle selections need their option titles, types and SKU lists to match exactly, so a typo in one SKU can leave a bundle with a missing option. Import the child and component products before the parents that reference them, and test the link structure on a small set first.
Media and URL handling deserve their own checks. Image columns expect paths relative to the media import directory, so confirm the directory layout on the target server and that filenames contain no unexpected characters. Missing images usually surface only on the storefront, so sample a range of product types after import. For URL keys, decide whether the source URLs will be preserved; if they change, generate URL rewrites so existing search traffic and bookmarks still resolve, and plan redirects for anything the rewrite logic cannot match. Category assignments use the category path format, so an unmatched path creates a product with no category rather than failing loudly, which makes it easy to miss.
Test the import with a representative subset before a full load. A useful sample includes at least one product of every type you sell, a configurable with its full set of children, a bundle with several options, products with multiple images, and products in deep category paths. Run the import on a non-production copy of the database, then compare counts, SKUs, attribute values and category memberships against the source export. Record the import log and any rejected rows, and rerun the subset until those rows are clean. Keep the full-load file set versioned so the same process can be repeated in the cutover window.
Plan stock, pricing and tax alongside the catalog rather than after it. Stock sources and stock CSV files are covered on the multi-source inventory page, so the SKU list you export here should match the sources you will load later. Catalog price rules, cart rules and tax classes are covered on the price rules and tax pages, but their identifiers, such as tax class names and customer group IDs, must exist before product rows referencing them can import correctly. Ask your team to confirm these dependencies in writing before the first test run, because a missing tax class or group discovered at cutover is one of the more common reasons a catalog load has to be repeated.
How the catalog connects to the rest of the platform and other systems
The catalog model feeds inventory, pricing, tax, search, caching and the storefront security policy, and each connection needs its own configuration and testing. ERP and PIM feeds that populate products, stock and prices are the largest recurring cost driver across these links, and the basic Page Builder draws category content from the same structure. Confirm each integration against your chosen release before design starts.
Multi-source inventory per product
Stock is held per source for each product, so the product types you choose determine which items you track by warehouse, store or drop shipper. Virtual and downloadable products rarely need physical source quantities, which should shape the attribute set from the start. If an ERP owns stock levels, the feed that writes source quantities becomes a recurring integration to scope, test and monitor. Confirm how MSI handles each product type in your chosen release before you finalize the catalog design.
Catalog price rules and promotions
Catalog price rules act on product attributes and categories, so the way you group products decides which campaigns can reach them. Cart price rules apply after items enter the basket and depend on the tax and shipping settings that the catalog supplies. Rule priority and coupon codes interact, and the open source edition does not include audience targeting or scheduled staging, so confirm which campaign features you need before you commit. Test rules against bundle and configurable prices before launch.
Tax classes assigned per product
Every product carries a tax class, and that class determines which rates and rules apply to its price and totals. Bundle and configurable child products may need classes of their own, and fixed product taxes such as WEEE eco fees attach as product attributes, so attribute sets and tax design must be settled together. Catalog import files and ERP product feeds must carry the same class codes. Confirm the tax behavior for each jurisdiction you sell into and verify it on the release you choose.
Product search on OpenSearch 3
Product search and layered navigation read from an index that the catalog populates, so attribute settings for searchable, filterable and sortable fields decide what shoppers can find. Adobe's 2.4.9 system requirements list OpenSearch 3, and the 2.4.8-p5 requirements list it too. Index size grows with the number of products and indexed attributes, so large catalogs need capacity planning and a reindex plan. Confirm the search engine version your release supports before you size the cluster.
Full-page cache with Varnish
Category and product pages can be served from Varnish when they are cacheable, and any attribute that varies by customer or visit reduces what can be cached. Adobe documents Varnish as the full-page cache for self-managed installations, while cloud-hosted Adobe Commerce uses Fastly instead. The 2.4.8-p5 requirements list Varnish 8. Stock, price and attribute changes must purge the correct pages, so confirm the invalidation behavior and the Varnish version for your release before go-live.
Content Security Policy on product pages
Adobe supports Content Security Policy headers from 2.3.5, and from 2.4.7 the policy runs in restrict mode by default on storefront and admin payment pages. Scripts added to product pages through custom widgets, third-party tags or Page Builder HTML must be allowed by the policy or they will be blocked in the browser. Catalog extensions that inject scripts need review against the policy during the build. Confirm the default directives in your release and test product pages after each change.
Questions buyers ask before building a Magento Open Source catalog
How much does a Magento Open Source catalog setup cost?
Cost depends on the size and complexity of the catalog model, and the figure comes from a written scope and quote. The main components are discovery of product types and attribute sets, configuring categories and attributes, building configurable and bundle structures, importing and validating product data, and testing storefront and checkout scenarios. The initial build is one-time work. Product data maintenance and later catalog changes recur, either in your own team or under a retainer. Costs rise with the number of product families, variant combinations, custom attributes, data quality problems, and feeds from an ERP or PIM system. DeployOpen does not publish prices. Ask for a quote that lists each component, the assumptions behind it, and what your team must supply.
How long does Magento catalog setup take to complete?
The timeline depends on the shape of the catalog and the quality of the source data, so there is no standard duration. The main factors are how many product types and attribute sets the catalog needs, how many configurable option combinations exist, whether product data arrives clean or needs cleansing, and how many integrations feed product records. Review cycles also add time, since each round of sign-off on attributes, category trees and checkout scenarios takes a turn. Ask for a timeline in the written scope that shows the phases, the points where your data delivery is required, and the review dates. Ask what happens to the schedule if sample data arrives late.
What does the merchant need to provide for catalog setup?
The merchant needs named product data owners who can answer questions about attributes, units, variants, pricing and category rules. Provide sample SKUs that represent every product type the store will sell, including the difficult cases: configurable products with several options, bundles with optional items, and downloadable files. Sign-off is needed on checkout scenarios such as guest checkout, multiple shipping methods, out-of-stock behavior and digital delivery. You also need staging access, a decision on which product fields are mandatory, and an approver for the final import. Missing inputs often delay catalog work, so confirm owners and dates before the scope is signed.
Can an internal team set up a Magento Open Source catalog?
Yes, an internal team can set up a Magento Open Source catalog if it has Magento development skills. The team needs PHP and the Magento 2 module structure, Composer, XML layouts and dependency injection for custom behavior, MySQL for data checks, and command-line work with the import tools and caches. Catalog modeling also requires someone who understands attribute sets, product types, category design, and how pricing and inventory interact. Merchandising knowledge helps with data cleanup. Confirm that the team can test checkout end to end and reproduce issues on staging. Adobe's developer documentation describes modules and themes as the components used to extend the platform, which is a useful starting point for onboarding.
Can gift cards be built in Magento Open Source without an extension?
Not as a native product type. Gift cards are an Adobe Commerce only product type, so Magento Open Source does not include one. Teams usually choose between a third-party extension, a custom module that defines a gift card product and its balance logic, or a workaround that uses virtual products with custom options and separate balance tracking. Each option needs checking. Confirm the extension's compatibility with your target release, how it stores balances, how it handles refunds and expiry, and how it passes values to your payment and tax setup. A custom module gives control but adds maintenance. Agree a written test plan before building, and confirm the approach against your own requirements.
How are catalog changes handled during Magento Open Source upgrades?
Catalog customizations are one of the main drivers of upgrade effort. Adobe's upgrade guide recommends upgrading every patch cycle to stay secure and PCI compliant, and it names customizations, extension count, third-party integrations and coding practices as factors that affect the effort. Custom product types, attribute logic and workarounds such as gift card modules need review against each new release. Keep custom catalog code in its own module, document each override, and maintain an inventory of extensions. Use the Upgrade Compatibility Tool that Adobe references to check code before upgrading, then test product pages, cart and checkout on staging. Ask for an upgrade plan as part of the catalog scope.
How DeployOpen works on this
DeployOpen plans and builds Magento Open Source catalogs inside the client's own infrastructure, starting from a written scope that defines the product types, attribute sets and categories in use. Engagements are fixed-scope, so the catalog model, deliverables and timeline are agreed before work begins. Ongoing support is available as a retainer.
How we scope
- Inventory of SKUs by product type: simple, configurable, grouped, bundle, virtual and downloadable
- Attribute set design, including which attributes drive configurable options and filters
- Written decision on gift card handling, since that product type is Adobe Commerce only
How we build
- Category tree and attribute sets created, then product import templates tested against sample data
- Configurable variations, bundle selections and grouped links validated on the staging environment
- Indexers, cache and search configuration checked with the catalog volume you expect
How we hand over
- Catalog data import and maintenance runbook documenting attribute sets, categories and product type rules
- Test records and a verification checklist covering product pages, cart behavior and admin edits
- Written handover of what was configured, what was customized and where custom code lives
How we support
- Retainer options for catalog changes, new attributes and routine maintenance after go-live
- Patch and upgrade review each cycle, since Adobe recommends applying updates regularly
- Support scope agreed in writing, with changes to the catalog model handled as new scoped work

