<p>You could definitely use standard products/variants to sell something that is digitally delivered. The Digital Products plugin just provides a nicer way to verify the ownership of a purchase, but you can see if someone has purchased a particular variant with something like this:</p>

<pre><code>{% set orders = craft.commerce.orders.user(currentUser).hasPurchasables(product.defaultVariant).find() %}
{% if orders|length %}
 You already purchased this item in &lt;/strong&gt; &lt;a href="customer/order?orderNumber={{ orders[0].number }}"&gt;Order #{{ orders[0].shortNumber }}&lt;/a&gt;
{% endif %}
</code></pre>

CC BY-SA 3.0
2017-06-23T02:15:10.247Z
2017-06-23T02:15:10.247Z
Luke Holder
<p>Is it possible to sell products using Craft Commerce, where the product may have digital AND non-digital variants?</p>

<p>For example, a greeting card, might be available as a printed card but also as a digital download.</p>

<p>I know there is a <a href="https://craftcms.com/news/digital-products" rel="nofollow noreferrer">Digital Products</a> plugin - however, this seems to require that the product is either digital OR not (it can't be both):</p>

<blockquote>
  <p>Digital products are similar to Commerce’s core products, except that
  they don’t have variants</p>
</blockquote>

<plugin-craftcommerce><plugin-digitalproducts>
Selling products with a digital variant using Craft Commerce
# Selling products with a digital variant using Craft Commerce

(Asked by: username_0 on 2017-06-23)

Is it possible to sell products using Craft Commerce, where the product may have digital AND non-digital variants?

For example, a greeting card, might be available as a printed card but also as a digital download.

I know there is a [Digital Products](https://craftcms.com/news/digital-products) plugin - however, this seems to require that the product is either digital OR not (it can't be both):

> Digital products are similar to Commerce’s core products, except that
> they don’t have variants

**Tags:** plugin-craftcommerce, plugin-digitalproducts


---

## 1 answers

### Answer by username_1 on 2017-06-23. Score: 2 | Accepted answer

You could definitely use standard products/variants to sell something that is digitally delivered. The Digital Products plugin just provides a nicer way to verify the ownership of a purchase, but you can see if someone has purchased a particular variant with something like this:
{% set orders = craft.commerce.orders.user(currentUser).hasPurchasables(product.defaultVariant).find() %}
{% if orders|length %}
 You already purchased this item in  Order #{{ orders[0].shortNumber }}
{% endif %}


---

