When a product is created without a weight value, it becomes a virtual product. These are digitial products such as ebooks, subscriptions and licenses. They don’t have shipping options unless a non virtual product is also in the basket / cart.
The weight option doesn’t required a value when creating a product so is often overlooked, resulting in a virtual product.
Convert a single virtual product to a simple product
To convert a single product to a virtual product you can edit it in Magento admin, catalog>products.
- Add a weight
- Select ‘this product has weight’
Convert multiple virtual products to simple products
The ‘this product has weight’ isn’t available when trying to multiple products via the update attributes option. Instead you’ll need to run a query directly on your Magento datatbase.
update catalog_product_entity set type_id = 'simple' where type_id = 'virtual';
This answer is also published on StackExchange.