Handling Shopify product variants

Shopify uses variants to add product options such as size, flavor, or color. Every variant in Shopify is represented as a product in Ordergroove. While this gives you complete control over your inventory, it can occasionally cause product variant errors if variants are adjusted in certain ways in Shopify.

In this article we’ll discuss variant errors, how to prevent them, and how to handle them if they pop up.

⚠️ Use Ordergroove for Subscription Settings

Always manage subscription eligibility within the Ordergroove Dashboard — not in Shopify. Ordergroove tracks eligibility at the individual variant level, so using Shopify’s product-level selling plan settings can break the association between your selling plans and Ordergroove. See Manage selling plan eligibility down below for details.


What causes variant issues

Ordergroove imports products from Shopify at the variant level. This means every variant you have in your Shopify catalog is represented as a separate product in Ordergroove. If a Shopify product is modified in two particular ways, it can prevent subscriptions from being placed and give you a Product variant is invalid error:

  1. Adding a variant to a product that previously had no variants
  2. Deleting a variant from a product

Due to the nuances of how variants work on Shopify, if either of these actions are taken, Ordergroove will not be able to place subscription orders associated with these products.


Preventing variant issues

If you make one of the above changes to product variants, we can proactively swap the subscriptions from the original product or variant to the new one to avoid any disruptions to subscription orders. Please submit a request to Ordergroove’s support team and include the following information:

  • Product IDs for the original product/variant and new product/variant. You can get these from the Products page in Ordergroove. Locate the products one by one, click on their name, and write down the ID. It’s listed as External Product Id.
  • Request we swap subscribers of the original product to the new one, including the product/variant IDs.

product_page_post.png

Manage selling plan eligibility in Ordergroove, not Shopify

Shopify has introduced a product-level setting that allows merchants to attach selling plans (such as subscriptions) directly to a parent product. Do not use this feature to manage Ordergroove subscription eligibility.

Ordergroove only supports eligibility at the variant level. When selling plans are assigned at the parent product level in Shopify, it breaks the association between those selling plans and Ordergroove’s system, which can prevent subscription orders from being placed correctly.

Do not use the Purchase options section on the product edit page in Shopify, which allows you to attach or remove selling plan groups from a product. Even if an Ordergroove selling plan (such as ordergroove-subscribe-and-save) appears in this list, adding or removing it here will not reflect correctly in Ordergroove. 

shopify subscription plan.png

Fixing product variant errors

If you don’t catch variant issues before order placement, we can do our best to recover subscriptions that could not be placed as a result of variant errors. If you see the error message Product variant is invalid in your Ordergroove order placement logs, it is most likely due to the variant issue described in this article. Here’s what you should see, an example of the full error message:

<order><code>ERROR</code><errorCode>999</errorCode><errorMsg>message:[{"field":["input","productVariantId"],"message":"Product variant is invalid","code":"INVALID"}]
name: Shopify User Error
</errorMsg></order>

Please submit a support request and include the following:

  • Order ID for the failed order(s)
  • Product IDs for the original product/variant and new product/variant. Take a look at Preventing variant issues above for step-by-step details

Our support team will swap products for the failed order(s) and retry them, and swap products for all subscribers of the original product/variant to avoid future order failures.