Help & Resource Center

Follow Integrating Shopify & Printfection (via Zapier)

Many Printfection customers may want to pull orders from a Shopify store into a Printfection Collection Campaign where they can be reviewed and then placed in bulk. This article covers the exact steps of how to do this using Printfection, Shopify, and Zapier.

Why Zapier? Zapier's comprehensive API capabilities makes it the perfect glue between the Printfection and Shopify platforms. We highly recommend Zapier as a tool for every company looking to automate their workflows.

Follow along with our video tutorial: Setting Up a Shopify Integration

What you'll need

You'll need a Shopify store and admin access, a Printfection account, and a paid Zapier account that supports Shopify (free accounts do not have access to the Shopify platform, paid accounts start at $15/month). 

Setting up Printfection

1. Create a Collection Campaign

In Printfection select Campaigns > Collections > + Collection Campagin



Make sure the option to allow External Order Submissions is selected. 



Note: If you already have a Collection campaign you're using for orders you can simply use that campaign instead. Just make sure the option for External Order Submissions is turned on from the campaign dashboard.


2. Prep your Collection Campaign

You'll want to update the Settings in your collection campaign to make sure email and packing information is set how you'd like. 


3. Go to your item manager

Now you'll want to use the top menu and click Items > + Add Items to Campaign. 


From this page you'll now see all of your Printfection items — we'll be using these in a moment when setting up Shopify.

Setting Up Shopify

1. Add products and required ID fields to your store 

If you're just setting up your Shopify store you'll want to create a new Shopify product for each item you want to offer from Printfection.

Note: If you already have your products created in Shopify just follow along. You'll need to make sure you update your SKU and Size ID for each product or product variant.

For each product you're offering that has sizes (like a t-shirt) you'll need to add a Variant for each size. When doing this also add an Option to the Variant called Size ID.

If you need to reference what sizes are offered for a particular product go to Printfection Item Manager from Step 1 and click the Item Details for the item you want to see sizes for.

2. Add Printfection meta-data to each product

In order for orders to be easily moved from Shopify to Printfection you'll need to add some meta-data to your products that Printfection will recognize when each order comes through.

We'll be adding the following information from Printfection to each product in Shopify.

  • Printfection Item ID
  • Printfection Item Size ID's

Do the following steps for each product you're offering in Shopify:

  1. Go to the Item Manager in Printfection (that we left open in Step 1) and click Item Details on the item that matches the product you're working with in Shopify.

    Copy the Item ID in the top right corner of the page.

  2. Paste this copied Item ID into the SKU field for the product in Shopify.

    This SKU might be on a Size Variant if the product has sizes. In that case, it will look like the image below. You will use the same SKU for each size variant. 

  3. If the product has sizes go back to the Item Details page in Printfection and this time copy the Size ID for your necessary size.

    Note: If the product doesn't have sizes you can skip this and the next step.

  4. Now, you'll want to take your copied Size ID from Printfection and add it to your size variant in Shopify under the Size ID option you made in Step 1.

    When you do this, make sure you format the ID as follows: SizeID(1234)

    It's very important to do the above formatting as that allows the Size ID to be picked up successfully when the order is transferred to Zapier. Your result in Shopify should look like this: 

3. Verify your products are set up

You should be pretty much done at this point. Just take a second to make sure every product you're planning to sell has been matched with the right Item ID and Size ID's from Printfection.

Note: If you want you can also add product images from Printfection, just copy the item image URL and add it to each Shopify product.


4. Hiding SizeID() from the User

One thing that's a little annoying about this process is that the SizeID() option will show on the customer facing pages of your Shopify store when a user is selecting their product(s).

Because this is an internal only ID the user shouldn't have to see it, or worry about it. We can fix this by adding a snippet to your theme.

1. Go to Your Shopify Theme

Go to Sales Channels > Online Store > Themes


2. Customize Your Theme

Go to the Customize Theme option.

Up top click the Theme Options dropdown menu and select edit HTML/CSS. 

3. Create a New Snippet

Under the Snippets folder choose the Add a New Snippet option and name your snippet hide-sizeid. Like shown below: 

4. Add the Following Code

Now you can copy in the following code to your new snippet and Save.


5. Add Your New Snippet to the Base Site Layout

The last thing you'll need to do is update your theme.liquid template under the Layout folder.

At the very bottom (before the </body> tag), add this line of code:


Code to use: {% include 'hide-sizeid' %}

Now you're done Save theme.liquid file and your customers will no longer see the SizeID option on the product pages.

Doing the Integration in Zapier

Alright, we've arrived at our last step of the integration. At this point we'll be using Zapier to connect Shopify and Printfection so they can send and receive orders automatically. Let's get started!

1. Login to Zapier and Make a New Zap

Login into Zapier and click the orange Make a Zap button at the top of the page.

2. Choose Shopify as Your Trigger Step

You'll want to select Shopify as your Trigger application.

Once that's done, you'll want select the New Paid Order trigger option. This means this Zap will fire when a new order has been marked as paid in Shopify.

Once you hit continue you'll need to connect your Shopify account to Zapier, just follow the quick on screen instructions. 

Once that's completed, Zapier will ask you to test your Shopify integration. Just make sure you've had a recent order in Shopify marked as paid before testing. 

3. Handle an empty Shopify shipping_province field (optional)

Your Shopify account may not require a shipping state/ province for international addresses. However Printfection does require this field for all addresses. If this is the case for your Shopify account you can get around this differing requirement by using Zapier's javascript Action.


Once you've added this Javascript action configure the Edit Template step like so.


Here's the exact javascript which you can copy & paste into the Code text area.

output = [{new_shipping_province: (typeof inputData.shipping_province != 'undefined' && inputData.shipping_province.length) ? inputData.shipping_province : inputData.shipping_country}];

Click continue to save and move onto the next step.

Note: If you use this Javascript action make sure to specify the variable from this step "Step 2: New Shipping Province" when creating your Printfection action step instead of the "Step 1: Shipping Address Province" shown in the next step.

4. Choose Printfection as Your Action Step

Great, now comes the fun part, you'll be connecting your Shopify order information to Printfection. To get started, select Printfection as your Action step application. 

For the part of this step choose the option to Create Collection Order.

5. Map Your Order Template

Alright, good stuff, time to move onto mapping the Shopify order information to our new Printfection Collection order. You'll want to follow to following template guide for this part. Just click the little + button next to each field and choose the following values.

  • Campaign: 
      Choose your campaign from the dropdown.
  • Name (combine first and last):
      Shipping Address First Name
      Shipping Address Last Name
  • Email: 
      Customer Email
  • Phone Number: 
      Shipping Address Phone (required for international addresses) 
  • Address: 
      Shipping Address Address1
  • Address 2: 
      Shipping Address Address2
  • City: 
      Shipping Address City
  • State: 
      Shipping Address Province
  • Zip / Postal Code: 
      Shipping Address Zip
  • Country:
    Shipping Country (either full country name or two letter abbreviation)
  • Item ID: 
      Line Items Sku
  • Size ID: 
      Line Items Name Size ID
  • Quantity:
      Line Items Quantity

Once all your fields have been mapped you can hit continue and test your order. Once tested you should see a new order in your Printfection Collection campaign that matches the order details from Shopify. 

Testing Your Workflow

Let's take testing a little further. Go ahead and finalize your Zap by naming it and turning it on.


This new Zap will run in the background every few minutes (5 to 15 depending on your plan level) and grab any new orders that come in from Shopify.

At this point, go ahead and create a new order in Shopify and then Mark it as Paid. In a few minutes Zapier will grab the order details from Shopify and then create a new order with Printfection.

Check your collection campaign (assuming it's been 15 minutes since your order was Marked as Paid) and verify it's there! 

If it is, you're all set! Now when orders are placed in Shopify you can go to your Collection campaign, review them, and then approve them for shipping.

Remember, you can always reference our video tutorial: Setting Up a Shopify Integration

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request