Yes! You customer can get their download / downloads by going to a special page in FetchApp.

Each Fetch account has a URL that can be used to look up existing orders in the format of: http://subdomain.fetchapp.com/orders (where "subdomain" is replaced with your actual FetchApp account name)

Furthermore, you can pass a few variables in the query string to autofill and autosubmit the form: http://subdomain.fetchapp.com/orders?email=my_customer@email.com&number=1001&submit=true

We still send the email as well, but it's much less important since the customer can get their downloads immediately.


Shopify Order List with Downloads

The following code snippet will generate a list of orders with the corresponding FetchApp download links. This code takes into consideration line item weights, and if the order only contains weighted items, it shows a message with the link. Be sure to replace [your-fetchapp-handle] with your actual FetchApp handle. 

     

<div class="digital-orders">
  <h3> Digital Download Links </h3>
  <ul>
  <!-- GET ORDERS LOOP -->
  {% for order in customer.orders %}
    <!-- CREATE ARRAY OF LINE ITEM GRAMS FROM LIGHTEST TO HEAVIEST -->
    {% assign weight_array = order.line_items | sort: 'grams' | map: 'grams' %}
    <!-- START ORDER LIST -->
    <li>
      <!-- IF THE FIRST LINE ITEM'S WEIGHT IS GREATER THAN 0, DON'T SHOW DOWNLOAD LINK -->
      {% unless weight_array.first > 0 %}
        <a href="http://[your-fetchapp-handle].fetchapp.com/orders?email={{ customer.email }}&number={{ order.order_number }}&submit=true">
          Get your downloads for order {{ order.order_number }}
        </a>
        {% else %}
        <i>Order <a href="http://[your-fetchapp-handle].fetchapp.com/orders?email={{ customer.email }}&number={{ order.order_number }}&submit=true">{{ order.order_number }}</a> only contains weighted products, indicating that there may not be a digital download</i>
      {% endunless %}
    </li> 
   {% endfor %}
  </ul>
</div>

     


Shopify Post Purchase Downloads Link


The following code snippet can be used on your Shopify post-purchase page (the "Thank You" page after the customer has successfully checked out). This will generate a link to immediately retrieve their downloads. Add this to the "Additional Content & Scripts" field in Shopify under "Settings" >> "Checkout".


Please note that FetchApp takes a moment to generate the order, so an order may take a moment to become accessible. Its not a bad idea to add some language to indicate this. 

 

<a href="http://[your-fetchapp-handle].fetchapp.com/orders?email={{ customer.email }}&number={{ order.order_number }}&submit=true">
Get your downloads here...
</a>

 Don't forget to replace "[your-fetchapp-handle]" with your actual FetchApp handle. 



You can use the following in your email template:

 ** Make sure to replace subdomain with your actual FetchApp domain **

  

<a href="http://subdomain.fetchapp.com/orders?email={{ email }}&number={{ order.order_number }}&submit=true">Get your downloads...</a>

  


Do you sell physical products as well? If so, you'll probably only want to show the link to Fetch if your customer has at least one digital product in their order. Fortunately conditional logic comes to the rescue!

For this to work you'll need to have a common denominator between all your digital products. For example, all digital products (in Shopify) could have "-DD" as part of the SKU. In this case you'd place the following code in your email template...

{% capture downloads %}{% for line in line_items %}{% if line.sku contains "-DD" %}1{% endif %}{% endfor %}{% endcapture %}

{% if downloads.size > 0 %}<a href="http://subdomain.fetchapp.com/orders?email={{ email }}&number={{ order_number }}&submit=true">Get your downloads...</a>{% endif %}

What's also neat about this feature is that customers can always find past orders by going to the following page...

http://subdomain.fetchapp.com/orders