Hi,
What you are saying is against the structure of Virtuemart.
Normally, Virtuemart doesn't allow to sell free products. Once you leave the price field empty, the add to cart button turns to "call for price" button (of course you need to enable this option in the VM configuration).
This is how Virtuemart was designed and how the things developed. I can't guarantee you about the shopping cart (As i have never tried before) but i can give you the tip to show the "add to cart" button for those products that don't have price at all.
Open these 2 files:
1- Category Browse Page:
ROOT/templates/<yourjoomlatemplate>/html/com_virtuemart/category/default.php
(default.php, OR flexv2.php. There are 2 different category browse page layouts and you are using only one of them depends on what ever you chose from VM Configuration)
2- Product Details:
ROOT/templates/<yourjoomlatemplate>/html/com_virtuemart/productdetails/default.php
(default.php or flexv2.php. There are 2 different product details page layouts and you are using only one of them depends on what ever you chose from VM Configuration)
In those 2 PHP files, whereever you see this commands:
For category browse page PHP file:
(!empty($product->prices['salesPrice'])
For product details page PHP file:
(!empty($this->product->prices['salesPrice'])
delete it.
For instance, change this line:
if (!VmConfig::get('use_as_catalog', 0) and (!empty($product->prices['salesPrice']))) {?>
to
if (!VmConfig::get('use_as_catalog', 0)) {?>
This trick will eliminate the "price check" feature of virtuemart, and add to cart button start appearing even though the price is empty or 0.00. But again, i can't give you guarantee that everything runs smoothly through checkout, as virtuemart wasn't developed to sell free products. (also selling downloadable product not possible with VM2 unless the Downloadable plugin is installed to it)
Regards.
Forum Support.