Shopify Plugin - CRM
The Shopify plugin provides the ability to pull all Shopify products into CRM and push variant metafields back to Shopify automatically.
The Shopify cart page must then be manually edited to send products to a checkout page connected to the CRM.
Step 1 - Login to your Shopify Admin site and follow these instructions
Navigate to Shopify Admin → Apps and then click “Develop apps for your store”
Click “Allow custom app development”
Click “Allow custom app development” again
Click “Create an app”
You will be prompted to specify a name for the app (ProductSync) and a developer email (prefilled with the current logged in Shopify user).
Next, configure the scopes for the Admin API and give Read/Write access for all fields.
Next, configure the scopes for the Storefront API and give Read/Write access for all fields.
After the scopes have been configured, click “API Credentials” and then “Install” to install the custom app to your store.
After the custom app has been installed on your store you should see your API Access Token which is needed for Step 2.
You will only be able to reveal the token one time. After clicking “Reval token once” you will see your Access Token value. BE SURE TO SAVE THIS, YOU CANNOT VIEW IT AGAIN. IF YOU LOST YOUR ACCESS TOKEN YOU WILL HAVE TO CREATE A NEW APP.
Step 2 - Setup the CRM Plugin
Navigate to Admin → Plugins → Data Sources and click on the green “+Activate” button on the Shopify tile.
When the funnel visualizer is displayed, you can click the gear icon on the Shopify page to make plugin adjustments and/or resync Shopify products.
storeURL = Required. Shopify store URL (minus the https://). This is NOT the custom domain assigned to the store.
(This url will always end in .myshopify.com. Do NOT use the URL of your live store/Custom Domain)
AccessToken = Required for Custom Apps. Generated in Step 1 above
API_key = Required for Private Apps. Generated in Step 1 above
API_password = Required for Private Apps. Generated in Step 1 above
campaignId = Optional. In most cases leave this blank to assign the Shopify products to a new funnel/campaign. Enter a campaignId if you want to sync products into an existing campaign.
billerId = Optional. The merchant account to assign to the CRM campaign products that will be created from the Shopify products. Entering a value here will save the effort of manually editing the campaign products to assign a merchant account. Use the CRM to find your merchant account on the MID List (CRM > Merchants > MID List).
sendInitialOrders = Optional. Use this to automatically send successful new orders back to the Shopify. This will send all successful new orders on the campaign. It is advised to use the campaign for Shopify orders only, if sending orders back to Shopify.
sendRebillOrders = Optional. Use this to automatically send successful rebill orders back to the Shopify. This will send all successful rebill orders on the campaign.
sendTracking = Optional. Use this to populate Shopify with tracking numbers from Checkout Champ. Do not use this in conjunction with pullTracking. Fulfillment must be done in one platform only.
pullTracking = Optional. Use this to populate Checkout Champ with tracking numbers from Shopify. If products are going to ship from Shopify, set those products to System Fulfillment in Checkout Champ. This option will then pull the tracking numbers from Shopify and mark the products as Shipped in Checkout Champ. Must have sendOrders checked to pull tracking from Shopify
pullVariantAsProduct = Optional. The CRM will pull all Shopify variants in as their own base products.
sendEmailReceipt = Optional. If checked we will send a tag to Shopify letting them know to send the email confirmation.
doNotSendRefund = Optional. If checked then CheckoutChamp will not send refund data back to Shopify.
taxPercent = Optional. Tax percentage that should be taken off Shopify base price when syncing products. This is for stores with tax embedded in product price, such as VAT. In most cases a corresponding sales tax profile must be created on the CRM campaign to calculate the tax at checkout.
orderTags = Optional. Use this to tag orders exported to Shopify. Multiple tags can be entered separated by commas. Include “product_tags” to send the tags from each product to Shopify. Include “page_name” and “funnel_name” to send the page name and funnel name to Shopify.
subscriptionTag = Optional. Use this to tag a subscription customer in Shopify. Enter one tag only. The tag is placed on the customer when a subscription is active. The tag is removed when all subscriptions are cancelled or recycled.
secretKey = Optional. Value from Shopify which allows CheckoutChamp to listen for refunds triggered within Shopify so that CheckoutChamp can perform the refund.
updateInventory = Optional. Choose to decrement Shopify inventory when an order is sent. Choose to decrement always or to follow inventory policy at Shopify. This does not restock inventory when a refund or cancellation is done in CheckoutChamp.
If there is no gatewayId on the plugin when you resync you will need to manually apply a gateway to the new products.
Step 3 - Synchronize Products
This process will pull your Shopify products into CRM and push the variant metafields back to your Shopify store.
Edit the Shopify plugin, verify the information entered, and press the blue “Sync Products” button
The Shopify Plugin contains a Synchronization Status which updates as the Shopify Sync progresses. The following statuses will show in the Synchronization field.
Submitted: Shopify sync has been submitted but has not started yet. THis happens as soon as you hit the blue “Sync Products” button.
In Progress: Shopify sync has started and is currently in progress. At this point your shopify products should be importing into CheckoutChamp.
Completed: Shopify sync is completed. All shopify products have been pulled into CheckoutChamp and variant metafields have been updated in Shopfiy.
Failed: This status will display if the Shopify sync fails for any reason. Most cases it is due to the merchant client app not granting CheckoutChamp proper permissions to hit their API.
Depending on how many products reside inside Shopify, it may take a little time for them to all be pulled in.
When the sync is finished, navigate to CRM → Products. Edit one of the Shopify Products. The Shopify variants are in the Product Variants section.
Variant Product prices can be overridden. By selecting Override Price, you can define an alternate price for your product variant. Be sure to Update.