Alex Holmes
Alex Holmes

Reputation: 131

WooCommerce - Disable shipping for downloadable purchases

I've just set up a Woocommerce based webstore and I'm very happy with it so far, but I've come across something that isn't necessarily a dealbreaker, though it's annoying for the customer.

Some context: the store is for my band website and sells physical as well as digital media, collecting shipping information for physical media makes a lot of sense of course, however it's unnecessary step if the customer is only buying digital media.

I've been searching but not had any luck, is there any way to turn off the shipping if all of the items in the user's cart are digital downloads?

Upvotes: 13

Views: 42917

Answers (3)

LoicTheAztec
LoicTheAztec

Reputation: 253901

UPDATE For WooCommerce 2.6+ (and 3+)

1) Enabling shipping in WooCommerce (prior)

You need to go in:

WooCommerce > Settings > General > Shipping Location(s) (selector), to select a shipping behavior for your e-commerce:

enter image description here

Then save. A new Shipping Tab is going to appear in WooCommerce Settings (in products too).


2) To disable shipping for your downloadable product

You need in your product page edit mode within the Product data metabox to enable:

  • The downloadable checkbox (as this product is downloadable logically).
  • The virtual checkbox (as this product is not going to be shipped, logically too)

enter image description here

When enabling the virtual checkbox the shipping tab setting will disappear.

enter image description here

Then update your downloadable product.

Now If you add to cart this downloadable (virtual) product and you go to checkout, there is NOT anymore shipping address or shipping options for this product.

Upvotes: 21

Yahya Hussein
Yahya Hussein

Reputation: 9121

in the new versions of Woocommerce luckily, the tick of a “Downloadable” product type will disable shipping for this product enter image description here

Upvotes: 3

Ken
Ken

Reputation: 71

Go to WooCommerce => Settings => Shipping => Shipping Destination and uncheck "Collect shipping address even when not required".

According to the code, if all items are "virtual" then shipping is not required. If you have the aforementioned box checked, it ignores whether the items are in the cart are physical or virtual and will require the shipping address.

Upvotes: 7

Related Questions