Connect Voyage and Shopify to get the most out of SMS messaging with your eCommerce store. This article will walk you through installing the Voyage Private App in Shopify so you can pull in customer profile and event data for segmentation, setup abandoned checkout messages, and more.

Note: To complete Shopify's Private App installation, you will need to be logged in to Shopify with admin permissions.



Enable Shopify Private Apps

First, you'll need to enable private app development in Shopify if you haven't done so already. Log into Shopify and navigate to the main admin interface. The URL will be similar to: [1] where "mydomain" is the name of your Shopify store domain. Click on Apps in the main menu [2], then click on Enable private app development [3]:




Check the three boxes for private app development disclaimers [1], and then click on the green Enable private app development button [2]. Note, this can not be reversed:




Shopify Private App Setup

Log into Shopify and navigate to the main admin interface. The URL will be similar to: [1] where "mydomain" is the name of your Shopify store domain. Click on the Apps main menu item [2], then scroll all the way to the bottom of the Apps page. Look for the Manage private apps link [3] to continue. Note, your options may look different depending on your account options:



On this page you can see a list of all existing private apps [1] but we'll assume you are setting up for the first time. Click Create new private app [2] to follow along:



Give your app an appropriate name [1], then enter your developer's emergency email address here [2] or your own email if you don't have a developer on staff. You'll want to select Webhook API version "2021-04" [3] then click on Show inactive Admin API permissions [4] to expand the long list of permission options:



On the list of inactive permissions, you are looking for four items to enable with Read access: Customers, Fulfillment Services, Orders, Products. There are two items to enable with Read and write access: Draft Orders and Themes:

Draft Orders
Fulfillment Services



With those settings in place, click on Save at the very bottom. You'll see a create app confirmation message as you proceed to the next page. It may take a moment or two for your app to be created.

Back to Top


    Copy Integration Details

    At the top of your screen you should see a success message [1] if the private app was created. You'll be presented with three important pieces of information that must be copied over to the Voyage web app. Your API key [2], your password [3], and your shared secret [4]:



    Keep this Shopify tab open and open another tab to Click on Integrations [1] then find the Shopify selection and click on Activate [2]:



    Here is where you'll put in your Shopify domain name [1], and copy over the API Key [2], Password [3], and Shared Secret [4] from the Shopify window you kept open.

    Be sure to turn on Inject Global Tag [5] to automatically install the Voyage Global Tag.

    The optional Display Name field [6] is useful when you have multiple integrations with Shopify. Click Next [7] to continue:




    You should see this message. Click Done to return to the integration list:



    If a field was missing or incorrect, you may see an error message. Simply follow the instructions to rectify the issue.

    Back to Top


    Insert Voyage Purchase Tag on Shopify:

    NOTE:  If you want to utilize Opt-In at Checkout, please reference this documentation page and skip the following.

    In this step, we'll insert Voyage's purchase tag into the Shopify platform to gather that important purchase data as it is generated.

    First, again ensure that you have admin rights within your Shopify store.
    Inside Shopify's Admin interface, click on Settings [1], then select Checkout [2]:
    Scroll down to the section that says Additional Scripts: 
    Copy and paste the code below into this section. Remember to replace 'Client_ID' in the code below with your own Client ID: 

    {% if first_time_accessed %}
    <script async src=""></script>
    <script type="text/javascript">
    /* <![CDATA[ */
    (function(){if(;{q:[]};var fns=['init', 'event', 'track'];
    for(var i=0;i<fns.length;i++){(function(fn){[fn]=function(){
    this.q.push([fn,arguments]);}})(fns[i])}})();voyage.init('Client_ID', { popup: true });
    /* ]]> */
    <script type="text/javascript">
    voyage.track('Purchase', { amountCents: {{ order.total_price }}, orderId: {{ order.order_number }} });
    {% endif %}



    To find your Voyage Client ID, just go to Settings [1] and look for the Client ID [2] field:



    An alternate source for the Tracking Code and Purchase tag code can be found within the Voyage web app. Click on Settings [1], then Tracking [2]. Select Shopify in the drop down at the top [3] and you'll see your Tracking Code [4] and Purchase tag Code [5] with easy "copy script" links [6]. Note, that your Client ID is already populated in these code scripts:


    Back to Top



    Shopify FAQ

    What features can I unlock with the Shopify integration?

    Our Shopify integration supports the following features:

    • Customer segmentation by Shopify purchase history, including created order, total spent, and more.
    • Drips for Abandoned Checkout and Abandoned Cart

    Where can I find my Shopify shop/store name?

    This is also called your Domain name. From the Shopify Admin main menu, click on Online Store [1], and then click on Domains [2]. Look for the section that says Shopify-managed domains [3] and find the portion of the domain preceding This is your store name [4]:


    Back to Top



    If you have any additional questions please contact us at