In the ever-evolving world of e-commerce, not every product needs a box, a barcode, or a shipping label. Some of the most powerful offerings — think services, subscriptions, or warranties — exist purely in digital form. That’s where the virtual product in Magento 2 comes into play.
Unlike physical or downloadable products, Magento 2 virtual products don’t require shipping, packaging, or even a download link. They’re weightless, dimensionless, and ideal for selling non-tangible goods like online consultations, extended warranties, or memberships. Whether you’re running a service-based business or offering add-ons to physical items, virtual products are an essential part of the Magento 2 ecosystem.
In this comprehensive guide, we’ll walk you through everything you need to know about working with Magento virtual products. You’ll learn what a virtual product is, how to set it up, and how it behaves on the storefront. We’ll also show you how to import and export virtual products in Magento 2 using CSV files, helping you scale faster and manage your catalog more efficiently.
A virtual product in Magento 2 refers to non-physical goods that don’t require packing, shipping, or downloading. This makes them ideal for selling services, subscriptions, warranties, memberships, or any intangible offering. Unlike Magento’sdownloadable products, which also don’t involve shipping but must include a downloadable file, virtual products don’t need to be stored or transferred digitally at all.
Think of Magento virtual products as a variation of simple products, only without the physical aspect. While simple products require weight, shipping methods, and inventory handling, virtual products in Magento 2 eliminate all those logistics. They’re created to sell non-tangible services, making them perfect for industries like online consulting, insurance, or tech support.
Here are the key characteristics that define Magento 2 virtual products:
No weight or physical presence — Virtual products don’t have a weight attribute. This means no storage, no logistics, and no shipping settings. You simply define the available quantity, and once the item is purchased, the transaction ends with invoicing — no shipment needed. This is a core reason why Magento 2 virtual product shipping is disabled by default.
No downloadable content — Unlike downloadable products, Magento virtual products don’t involve files hosted on your server or cloud. There’s no link or media to deliver. However, you may need to provide terms of service, license agreements, or usage policies if required.
Compatible with bundle products — Virtual products can be included in Magento 2 bundle products. For example, an extended warranty sold with electronics, or a gym membership paired with a physical yoga kit. In such cases, the virtual product functions like a simple product within the bundle, but without download or shipping options.
In short, a Magento 2 virtual product is your go-to option for offering non-physical goods and services, with all the flexibility of Magento’s product system minus the complexities of delivery.
Magento 2 Virtual Product vs. Downloadable Product vs. Simple Product
Magento 2 offers multiple product types to suit different selling scenarios — from physical goods to digital files and intangible services. But when it comes to choosing between a virtual product, a downloadable product, or a simple product, it’s crucial to understand how each behaves in terms of shipping, stock management, and usage.
Here’s a side-by-side comparison of the three Magento 2 product types:
Feature
Virtual Product
Downloadable Product
Simple Product
Weight
No
No
Yes
Size/Dimensions
No
No
Yes
Shipping
No
No
Yes
Inventory Management
Yes (no warehouse needed)
Yes (no warehouse needed)
Yes (warehouse or physical stock required)
Downloadable Content
No
Yes (requires file upload or URL)
No
Typical Usage
Services, warranties, subscriptions
Software, eBooks, digital media
Physical products: apparel, accessories, etc
As you can see, the main difference between virtual and downloadable products in Magento 2 is the presence of a downloadable file. If your product needs to deliver a file or URL after purchase, such as a PDF, MP3, or ZIP, it qualifies as a Magento 2 downloadable product. If there’s no file involved, and you’re selling something intangible (like an extended warranty or a training session), then it’s a virtual product.
Both product types do not require shipping or weight attributes, and both support basic inventory tracking without physical stock. In contrast, simple products involve standard inventory management and shipping logistics, making them suitable for traditional physical goods.
Understanding this distinction is essential when setting up your Magento 2 catalog. It helps you optimize product configuration, apply accurate pricing rules, and streamline your checkout process.
To learn more about other Magento 2 product types, including bundle, configurable, and grouped products, check out our Magento 2 Import & Export Guide List — a complete resource for managing your product data effectively. Now, let’s focus on common use cases for Magento virtual products.
Common Use Cases for a Virtual Product in Magento 2
. From extended warranties to consulting services, the use cases for Magento virtual products are vast and often overlooked. So, when should you use a virtual product in Magento? Here are the most common and practical applications:
Selling Services in Magento 2. Whether you’re offering web development, technical support, training sessions, or onboarding packages, services are the ideal candidates for virtual products. For example, at Firebear, we sell customization services as virtual products. The customer adds a service to their cart, checks out, and receives an invoice — no shipment or download link required.
Extended Warranties. Virtual products are perfect for attaching warranty options to physical products. When a customer purchases, say, a laptop or a smartphone, they can select an additional extended warranty as a virtual add-on. The warranty information is typically detailed on the invoice and doesn’t require any separate delivery.
Subscriptions. If you’re running a recurring payment model, virtual products make a great foundation. For instance, access to exclusive digital content, monthly coaching calls, or recurring professional services can all be managed through virtual products. Every billing cycle results in a simple invoice, with no shipping or download steps required.
Memberships. A membership program — such as a premium club, loyalty plan, or gated content access — can also be configured as a virtual product. Depending on the membership level purchased, customers gain access to specific services, perks, or discounts. Since access is controlled digitally, there’s no need for shipping or files, making the virtual product type ideal for this setup.
Event Tickets or Bookings. If you’re organizing online webinars, virtual workshops, or in-person classes, tickets or booking confirmations can be sold as virtual products. Once purchased, the customer receives confirmation or access instructions — again, no shipping or downloads involved.
These are just a few use cases for Magento virtual products, but they highlight the versatility of this product type. Whenever you’re selling services in Magento 2, offering intangible add-ons, or need to manage access to something without physical delivery, virtual products are the optimal choice.
Do Magento 2 Virtual Products Require Shipping?
As we’ve already mentioned, Magento 2 virtual product shipping is disabled by default —and rightly so. Since virtual products represent intangible services or non-physical goods, they don’t have weight or dimensions and aren’t meant to be shipped. There’s no need to specify shipping carriers or methods during checkout. Instead, the purchasing process ends with invoicing or digital confirmation.
However, in some cases, merchants notice that Magento 2 virtual products charge shipping fees, which can confuse customers and disrupt the checkout flow. So why does this happen?
Below are the common reasons why a Magento 2 virtual product may charge shipping:
Misconfigured Cart Settings. If your shopping cart rules apply shipping charges globally without checking product type, even virtual products might trigger shipping fees. Always ensure conditions are set correctly when defining cart price rules.
Combined Purchases with Physical Products. If a virtual product is added to the cart alongside a simple or bundled product that does require shipping, Magento calculates shipping for the entire order. While the virtual item itself doesn’t incur fees, the presence of physical items results in a shipping method being applied.
Theme or Extension Conflicts. Some third-party themes or checkout extensions may override default shipping logic. If your storefront applies shipping costs to virtual-only orders, it’s worth auditing any customizations or installed modules that could be interfering with the shipping settings for virtual product in Magento 2.
Incorrect Product Configuration. If you accidentally assign a weight value to a virtual product or leave its type as “simple” instead of “virtual,” Magento treats it like a physical item. Always double-check product settings in the admin panel to ensure the product type is set correctly and that the weight field is empty.
How to Fix Magento 2 Virtual Product Shipping Issues
Ensure product type is set to “Virtual” during creation or import.
Leave the “Weight” field blank or set to None.
Verify cart rules and shipping conditions.
Test your store’s behavior using a cart with only virtual items.
Audit third-party modules or custom themes for shipping logic overrides.
When properly configured, shipping settings for virtual productsin Magento 2 will ensure a smooth, streamlined checkout process, free of unnecessary delivery steps or charges. This helps reinforce customer trust, especially when you’re selling services, subscriptions, or memberships that have nothing to do with shipping. Now that you are familiar with the basics, let’s see how to create a virtual product in Magento 2.
How to Create a Virtual Product in Magento 2
Creating a virtual product in Magento 2 is a quick and intuitive process that closely mirrors the setup for simple products, minus the physical logistics. Since Magento virtual products don’t require shipping or weight attributes, they’re easier to configure and manage.
Here’s how to create a Magento 2 virtual product from your admin panel:
Navigate to Catalog > Products in the Magento 2 Admin.
Click the Add Product button to open the dropdown menu.
Select Virtual Product from the list of available Magento 2 product types.
You’ll now be taken to the product configuration screen.
Configuring Magento 2 Virtual Product Settings
The product setup screen is nearly identical to that of a simple product, with one important exception: shipping and weight fields are excluded.
The Weight option is automatically set to This item has no weight, reinforcing that the item is non-physical.
There’s no need to configure shipping methods or carrier rules.
Inventory, price, visibility, and other standard attributes can still be managed as usual.
You can also assign categories, apply product images, configure SEO settings, and define stock levels (even for virtual goods, this can be useful for limited service capacity or licensing limits).
Once you’ve entered all necessary details, click Save to publish your virtual product in Magento 2.
Want to know what your customers see? Let’s move on to the storefront appearance and explore how Magento 2 virtual products are displayed during the shopping experience.
How Virtual Products Appear on the Magento 2 Storefront
From the customer’s point of view, a virtual product in Magento 2 looks almost identical to a simple product in your store catalog. The product page includes the standard title, price, description, and even images, just like any physical item. However, there are two key differences: no shipping options and no downloadable links.
Let’s take an example: a Gym Membership offered as a Magento 2 virtual product. On the product page, customers will see the offer details and can add the item to their cart just like any other product. But when they proceed to checkout, the experience is much more streamlined.
Magento 2 Virtual Product Checkout Experience
The checkout process for virtual products is intentionally simplified:
No shipping step — Because there’s no physical item to deliver, customers don’t need to select a shipping method or enter a shipping address.
Billing only — The customer simply provides billing details, completes payment, and receives an order confirmation.
This seamless flow is part of what makes Magento 2 virtual product shipping logic so efficient — shipping is skipped entirely, reducing friction during checkout.
Order Completion and Admin Handling
Once the customer completes the purchase, the order management process involves a single step: invoicing. As soon as you generate the invoice, the order status changes to Complete — there’s no need for shipment tracking or fulfillment actions.
If you’re offering a service like a membership or subscription, you’ll likely need to follow up after the order is completed. Magento doesn’t manage recurring service delivery out of the box, so you may want to track service fulfillment manually or automate it through third-party tools. You can also export Magento 2 virtual product orders for further tracking and reporting, as described in the next section.
This simplified frontend and backend behavior is one of the biggest advantages of using virtual products in Magento 2, especially for merchants focused on selling services, memberships, or non-physical goods.
Magento 2 Virtual Product Import & Export: How to Do It Right
Managing a virtual product in Magento 2 at scale often involves importing or exporting product data between systems. Whether you’re migrating catalogs, syncing with ERP systems, or updating service-based offers in bulk, Magento 2 provides two core solutions: the default import/export tool and the more advanced Improved Import & Export extension by Firebear Studio.
Magento 2 offers a basic, built-in import/export solution. It works, but with limitations. For more advanced workflows, filtering, automation, and support for virtual products specifically, Firebear’s Improved Import & Export extension for Magento 2 gives you far greater control.
Both allow you to transfer Magento virtual products, but only the second streamlines the process, filters virtual-only entities, supports multiple file formats, and enables automation.
Let’s explore both options and show you how to handle Magento 2 virtual product import and export efficiently.
How to Export Virtual Products in Magento 2
Using Magento’s Default Export Tool
By default, Magento doesn’t provide a direct way to export only virtual products. You must export your full catalog and manually filter out the virtual items, which becomes inefficient if your store contains hundreds or thousands of products.
Limitations include:
No filter for product_type = virtual
No way to export only the latest virtual product entries
Exporting with the Improved Import & Export Extension
The Improved Import & Export module removes these bottlenecks. Here’s how to export orders containing virtual products in Magento 2:
Go to System > Export Jobs, then click Add New Job.
Name your job, define frequency, and set general parameters.
Under Export Settings, choose Orders as the entity.
Enable Consecutive Export — this ensures only new orders are exported each time.
In the filters section:
Set is_virtual = 1 to export only virtual product orders.
Use the From/To date fields to narrow down specific periods.
Select the file format (CSV, XML, XLSX, etc.), set up delimiters, and map any custom fields.
Configure email notifications (optional).
Click Save & Run.
To export virtual product data specifically, just set the entity to Products and filter for product_type = virtual.
How to Import Virtual Products into Magento 2
File Requirements & Format
No matter which tool you use, your product data must follow a specific format. The minimum required attributes for importing a virtual product in Magento 2 include:
Attribute name
Reference
Values
Value Example
sku
SKU must be a unique value for every product. It is used to identify the product and is the only mandatory field.
SKU is the first field of the table and cannot be removed.
Can be up to 64 Latin characters in length, without spaces, and can contain “-” and “_”.
PRDCT-1
attribute_set_code
Defines Attribute Set assigned to the product
It should look the same as an attribute set name including capital letters (e.g. “Default”, “Man shoes” etc.)
Default
product_type
Indicates the type of product.
Allowed values:
simple
configurable
bundle
grouped
downloadable
virtual
virtual – it is the only value you can use to indicate a Magento virtual product
categories
Categories can be found under Catalog > Categories.
Indicates each category that is assigned to the product. Separate categories and subcategories with a forward slash.
New categories that are not available within Magento 2 are created automatically according to the specified values.
To indicate multiple category paths, separate each path with a pipe “|” symbol.
Default Category/Shop
name
Name of the product imported
Note: if the name of the product does NOT correspond to the existing product name with the same SKU it can be updated depending on your import job settings
My virtual product
price
Defines the price of the product
For the price value, you can only use numerals.
The price format should be either full values, such as 1, 10, 15.
Or, decimal values 1.110, 10.500, 15.789.
123
We recommend using Google Sheets for editing CSV files. Other tools (Excel, OpenOffice) may alter formatting, encodings, or date values. Always use UTF-8 encoding with a comma or tab delimiter.
SEO Tips for Working with Virtual Products in Magento 2
Follow these Magento 2 SEO recommendations to enhance the visibility of your virtual products:
Use Clear, Keyword-Rich Product Titles. Include keywords like “online service,” “membership,” or “subscription” in the product name. For example: “Premium Gym Membership – Virtual Product.”
Write Unique and Descriptive Meta Titles & Descriptions. Use SEO-friendly meta tags for each virtual product. Include primary and secondary keywords such as “virtual product in Magento 2” or “Magento 2 service product.”
Add an SEO-Optimized Product Description. Clearly explain the service offered and how the product works. Include relevant search terms like:
selling services in Magento 2
Magento 2 virtual product subscription
Magento virtual product use cases
Use Structured Data Markup (Schema.org). Implement Product or Service schema markup to help search engines understand the nature of your virtual offering.
Avoid Empty Pages or Thin Content. Just because the product is virtual doesn’t mean you can skimp on content. Fill the page with detailed benefits, usage examples, and FAQs.
Include an FAQ Section on Product Pages. Answer questions like:
Is this a downloadable product?
Do I need to select shipping?
Use the FAQ schema to enhance search snippets.
Group Virtual Products with Related Items. Use upsells, cross-sells, and bundles to link virtual products with physical items (e.g., “Get 1-on-1 support with this plugin”).
Create a Category Dedicated to Virtual Products. This helps both users and search engines find all virtual products. Example: /services/ or /subscriptions/
Optimize Alt Text for Images. Even if it’s a virtual product, use symbolic or branding imagery. Add alt tags like “Magento 2 online support service – virtual product.”
Enable Reviews & Ratings. Boost trust and keyword relevance by allowing customer reviews on virtual product pages.
Target Long-Tail Keywords in Blog Posts. Create blog articles, internally linking to your virtual product pages for authority building.
Avoid Indexing Virtual Test Products. If you’re testing, set noindex to avoid polluting your search presence.
Track Analytics Separately for Virtual Products. Use event tagging or custom dimensions in Google Analytics to evaluate virtual product performance and tailor your SEO strategy.
Final Words: The Art of The Virtual Product in Magento 2
By now, you should have a solid understanding of what a virtual product in Magento 2 is, how it works, and how to manage it effectively. From creating individual service-based items to importing or exporting them in bulk, Magento virtual products offer a streamlined way to sell non-physical goods like subscriptions, warranties, and digital services.
Thanks to Magento’s native functionality — and especially with the help of the Improved Import & Export extension — handling virtual products becomes not only simple but highly scalable. Whether you’re uploading dozens of service offerings or exporting orders that include virtual items, the right tools make your workflow faster and more flexible.
Don’t hesitate to build comprehensive import tables, automate your product updates, or manage large virtual product catalogs with ease. If you need help setting up Magento 2 virtual product import and export jobs or configuring advanced automation features, the Firebear Studio team is here to assist.
📩 Have questions? Contact Firebear Support, and we’ll guide you through optimizing your virtual product strategy in Magento 2.
Magento 2 Virtual Product FAQ
What is a virtual product in Magento 2?
A virtual product in Magento 2 is a non-physical item that doesn’t require shipping or downloads. It’s typically used to sell services, warranties, memberships, or subscriptions.
When should I use a virtual product instead of a downloadable or simple product in Magento 2?
Use a virtual product when you’re selling intangible goods or services without downloadable files. If a file needs to be delivered, choose a downloadable product. If the item is physical, use a simple product.
Do Magento 2 virtual products require shipping?
No, Magento 2 virtual products do not require shipping. They have no weight or dimensions, and shipping options are automatically excluded during checkout.
How do I create a virtual product in Magento 2?
Go to Catalog > Products in the admin panel, click “Add Product,” and select “Virtual Product.” Fill in the necessary details—no weight or shipping configuration is needed.
Can I include virtual products in bundle products in Magento 2?
Yes, you can include virtual products in bundles. For example, you can offer a service like an extended warranty alongside a physical product.
What are common use cases for Magento 2 virtual products?
Virtual products are commonly used for services, support plans, memberships, warranties, event tickets, and subscriptions — anything that doesn’t involve physical delivery.
How do I import virtual products into Magento 2 using a CSV file?
Prepare a CSV file with required attributes like sku, name, price, product_type = virtual, and import it through System > Data Transfer > Import.
Can I export only virtual products from Magento 2?
With the native tools, you’ll need to export all products and filter manually. Using the Improved Import & Export extension, you can filter and export only virtual products.
What attributes are required to import a virtual product in Magento 2?
At a minimum, you’ll need sku, product_type = virtual, name, price, attribute_set_code, and categories. Other optional attributes can enhance your product listing.
How does the Improved Import & Export extension simplify working with virtual products in Magento 2?
The extension allows filtering by product type, supports multiple file formats, automates import/export jobs, and maps custom attributes, making it ideal for managing virtual products at scale.