Tower Web Connect Shopify Migration

Tower Web Connect Shopify Migration

Idea
If you have questions about the below instructions, contact Tower Support
Note: This is not something Tower Support is able to do for you as it requires checking your website Navigation Menu is still functioning as expected. Tower Support does not know how your website Navigation has been setup.

Shopify have released a new API Connection and retired their previous connection. To accommodate this change, a new version of Tower Web Connect (TWC) has been released.
This article will guide you through migrating your Tower Web Connect Connection to the new Shopify link.

If you have not previously linked your Shopify website to Retailer, see Setting up a new Webstore
If your website is Magento, BigCommerce or Woo Commerce, no action is required.

What Has Changed?

  1. The new API connection allows Shopify to create products with up to 2000 variants (unique Colour, Size, Style combinations). Previously this was limited to 100.
  2. Retailer Department and/or Categories will now always be created as Shopify Collections. Department and/or Categories will be added as Product Metafields. If you use a Tag for Navigation, these Collections will appear to be new and can be ignored.
  3. A default Shopify Collection sort order for products can be set. This applies to new Collections created by TWC.
  4. Variant Products will now be unpublished when all Variants have sold out (i.e. All Sizes or Colours) if 'Unpublish Out of Stock' is enabled. Previously Variant Products would remain on the website as 'Out of Stock' until manually removed.
  5. Variant Sort Orders set in Retailer will now apply to the display order of Variants in Shopify

Shopify Collections

Shopify has two types of Collections: Manual Collections and Smart Collections. Manual Collections in Shopify require products to be manually added to them. Smart Collections automatically add products that match criteria.
Info
Shopify sites developed by Tower would make use of Manual Collections before 2021, and have been using Smart Collections afterwards.
Smart Collections will be automatically updated during the migration.
Legacy Manual Collections with the same name as Departments or Categories will interfere with Smart Collections. This will show as a Sync Error in Tower Web Connect. This won't prevent products syncing to Shopify but the products won't appear in the correct Collection (and menus) unless manually updated in Shopify.
Our recommendation is to switch to Smart Collections. The last step of the migration will cover the details if this applies to you.

What Do I Need to Do?

The new link to Shopify represents a significant change to how Tower Web Connect interacts with your website, and we've made the migration process simple and practical.
It's important to note that after the migration process, there is a potential for unforeseen issues to arise.
This may include needing to update your Shopify Menu options and Shopify Collection pages, so please allow time for this when scheduling the migration.
Do not perform the migration immediately before a large Online promotion or on a weekend when assistance from Tower Support is limited.

Backup Shopify

We recommend taking a Backup of your Shopify Site. This could either be a CSV Export or using a Backup App from the Shopify App Store

Migrate TWC Connection

  1. Login to Tower Web Connect
  2. Click your Shopify Connection.
  3. Click the 'Migrate to GraphQL' button in the top right corner
  4. TWC will then create a new Shopify Connection with '(GraphQL)' in the name and migrate your previous settings. Your previous connection will be disabled.

Syncing Retailer Categories to Shopify

Previously, your Retailer Categories would sync to Shopify as a Tag if 'Update Product Tags' was enabled.
Retailer Categories now sync as a Product Metafield called 'Category'
Existing Smart Collections will be updated to use the new criteria.
If you sync Retailer Categories to Shopify, you should check the settings are correct after migrating.
  1. Login to Tower Web Connect
  2. Click your new Shopify Connection. It will have '(GraphQL)' in the name.
  3. Scroll down to Resources and make sure 'Category' is ticked

Delete Shopify Webhook

  1. In your Shopify Admin page, down the left hand side, click Settings.
  2. Down the left hand side, click Notifications.
  3. Click Webhooks.
  4. Next to Order Creation, click the 3 dots on the right hand side.
  5. Click Delete.

Update API Permissions

  1. In the Shopify Admin page, click on 'Settings' on the left.
  2. Click on 'Apps and Sales Channels' on the left.
  3. Click on 'Develop Apps' on the top right.
  4. Click on the Custom App. It may be called 'Retailer Link', 'TWC Link' or 'TALink'
  5. Click on the Configuration tab.
  6. Next to 'Admin API integration', click Edit.
  7. Tick all the boxes that say Read or Write.
  8. Click Save in the top right.

Check new TWC Webhook

  1. Open Tower Web Connect.
  2. Click your new Shopify GraphQL connection.
  3. Click into the Sales tab, and scroll down to the Webhooks area. Make sure it says 'Scope: Orders_create' with the green word Enabled.
  4. If it doesn't have a webhook scope enabled, click Test Webhook. It should now show the webhook enabled.

The new weblink will have no record of the products on the website yet, so it's recommended to do a full sync from Retailer.
  1. From the Main Screen of Retailer, click Tasks -> Weblink Full Sync.
  2. Click Yes.
  3. A sync should appear in the Tower Web Connect Syncs tab within 15 minutes.
  4. Wait for the sync to complete in Tower Web Connect (this will take an hour or two depending on the number of products).
          Note: The Tower Web Connect Syncs tab will show errors for the initial sync. TWC will automatically try these again in the next sync.
          If subsequent syncs show errors, click Actions -> View Details to view details on the errors. Click HERE for some common errors and their fixes
  5. Once the sync is complete, check your Shopify site. Confirm it is displaying as expected and your Navigation Menu is working.
    1. Click the links in your Navigation Menu at the top of your Shopify page and confirm the products displayed as expected
  6. You should only do this step after the other sync has completed, so wait an hour after doing the above. In some situations, some products may not unpublish or update correctly, so it's advisable to log into Tower Web Connect, and in the Syncs tab, do another sync by clicking Create Full Sync at the top. This is because it's the first time the new link is syncing these products

Check Tower Web Connect for continuing errors

After the Full Sync completes in Tower Web Connect, any errors will be re-tried in subsequent syncs. Errors may occur as a once-off, but if not, this indicates an issue that requires intervention.
  1. Login to Tower Web Connect
  2. Click your new Shopify Connection. It will have '(GraphQL)' in the name.
  3. Click the Syncs tab.
  4. In the list of Syncs, check the Errors column.
  5. Next to the most recent Sync with Errors, click Actions then 'View Details'.
  6. A list of items updated in the Sync will appear. The Status column will show Success or Failure.
  7. For any items with Status of Failure, click the Plus + button on the left hand side to expand and view the detailed error information.
For Departments or Categories, the error 'Handle has already been taken' will appear if there is a Manual Collection with the same name (See the explanation above). If you wish to switch to Smart Collections, follow the 'Replace Manual Collection with Smart Collection' section below.
A list of common errors and their resolution can be found HERE

Troubleshooting Steps

The below steps are only required if referred to by Tower Support.
Update Webhook Version
  1. Log in to your Shopify Admin portal.
  2. Click on 'Settings' on the left.
  3. Click on 'Apps and Sales Channels' on the left.
  4. Click on 'Develop Apps' on the top right.
  5. Click on the Custom App. It may be called 'Retailer Link', 'TWC Link' or 'TALink'
  6. Click on the Configuration tab.
  7. Next to 'Admin API integration', click Edit.
  8. Scroll down past the 'Admin API access scopes' section to the 'Webhook subscriptions' section
  9. Click the Event Version drop down menu and select the option ending with '(Latest)'
  10. Click Save in the top right

Create Manual Shopify Webhook
The Webhook created by Tower Web Connect will always be created with the Trigger Event of 'Order Created'.
If you wish for Web Orders to import to Retailer with a different Trigger Event, you will need to setup the Webhook manually.
  1. Login to Tower Web Connect
  2. Click your Shopify Connection. Make sure to select the connection with (GraphQL) in the name
  3. Click the 'Sales' tab
  4. Scroll down and click the 'Delete Webhook Connection' button
  5. A message should appear in the bottom right corner, 'Webhook deleted successfully'
  6. Log in to your Shopify Admin portal.
  7. Click on 'Settings' on the left.
  8. Click on 'Notifications' on the left.
  9. Click on 'Webhooks'
  10. Click 'Create Webhook'
  11. In the 'Event' drop down menu, select the Trigger Event you wish to use
  12. Leave Format as 'JSON'
  13. In 'URL' enter:
    https://eccserver.towersystems.com.au/shopify-graphql-connector/webhooks/receive-sale
  14. In the 'Webhook API Version' drop down menu, select the option ending in '(Latest)'
  15. Click Save in the bottom right
  16. Note: After saving the webhook, DO NOT click 'Send Test'
Enable Product Metafields for filtering in Shopify Admin
Tower Web Connect will now set the Retailer Department and Category of products as a 'Metafield' in Shopify.
If you wish to be able to filter by Department and Category in Shopify Admin, this must be enabled for the Metafield.
Note: By default, you can filter by Collection for Department and/or Category
The below steps come from the Shopify Help Article, Filtering products with metafields
  1. From your Shopify admin, go to Settings > Metafields and metaobjects
  2. Click Products
  3. Click the Department or Category metafield that you want to use for filtering.
  4. Scroll down to the Options section, turn on 'Use as a filter on products index and in the Admin API'
  5. Click Save.


Replace Manual Collection with Smart Collection
Manual Collections created in Shopify for Departments or Categories may cause a 'Handle has already been taken' error in Tower Web Connect when syncing the Departments or Categories.
We recommend using Smart Collections in Shopify so products in the Collection update automatically (rather than needing to add products to the Collection manually in Shopify).

Remove Handle from Manual Collection
  1. Log in to your Shopify Admin portal.
  2. Click on 'Products' on the left.
  3. Under 'Products', click 'Collections'
  4. In the top right corner, click 'Search and Filter' (Magnifying Glass 🔍).
  5. Under 'Searching all Collections' click the 'Type' drop down menu.
  6. Click 'Manual'.
  7. Tick the Collections you wish to edit. Use the empty tickbox at the top of the page to select all Collections.
  8. Click 'Bulk Edit'.
  9. In the top right, click 'Columns'.
  10. Make sure the 'URL Handle (SEO)' option is ticked.
  11. You may need to click and drag the edge of the 'URL Handle (SEO)' column to make it wide enough to see
  12. At the end of the Title, add a number e.g. Gifts2. Do this for each Collection
  13. At the end of the URL Handle (SEO), add a number e.g. collections/gifts2. Do this for each Collection
  14. Click Save in the top right. After saving, click Back in the top left

Resync Department or Category from Tower Web Connect
  1. Login to Tower Web Connect.
  2. Click your Shopify Connection. Make sure to select the connection with (GraphQL) in the name.
  3. Click the 'Resources' tab.
  4. In the 'All Resource Types' drop down, select 'Department Resources' or 'Category Resources'
  5. In the 'All Actions' drop down, select 'Create'.
  6. Next to each Department or Category, click 'Actions' then 'Reset'.
  7. Wait 5 mins for this to Sync to Shopify.

Update Navigation Menu with new Collection
  1. Log in to your Shopify Admin portal.
  2. Click on 'Content' on the left.
  3. Under 'Content', click 'Menus'.
  4. Click the Menu you wish to edit. This could be 'Main Menu', 'Header' or 'Footer', etc.
  5. Use the arrow > buttons next to each Menu Item to expand the menu to the Collection you wish to update.
  6. Click the Collection Name then click the Link box.
  7. Select the Collection without the ending number. e.g. Gifts not Gifts2
  8. Click 'Save'.

    • Related Articles

    • Shopify Integration Information & Understanding Navigation

      This article explains what data is exported from Retailer and what field it will appear as within Shopify. To configure the Tower Web Connect (TWC) link please see: Setting up a new Webstore Stock Item Data Retailer stock items that have 'Webstore' ...
    • Theme editing tips for Shopify 2.0

      First, familiarise yourself with editing basics: Shopify Help Center | Editing menus Shopify Help Center | Editing your theme Understand level of support available: Shopify’s Help Centre for everything Shopify Then, Theme developer for guides on ...
    • Shopify - Navigation - Automatically Generate Menu Links (Theme Customisation)

      Who is this article for? If you’ve had your Shopify site developed by Tower & your developer has advised this Theme Setting is available to you. This is not a standard Theme feature. Furthermore, if you change Themes, this feature will no longer be ...
    • Common Webstore Issues

      This advice is for anyone asking why the Tower Web Connect (TWC) link syncing to Shopify, Magento or WooCommerce (Wordpress) websites is not working. Before continuing, it is assumed that your link had been working previously and all initial setup ...
    • Setting Up Manual Web Store

      Manual webstore This article is for a manual webstore link that will export a .csv file of stock via FTP. For webstore setup to Shopify, Woo Commerce or Magento please use Setting Up Web Store Our Web Store module is a link that allows you to connect ...