Enumeration of plan_name from GET /admin/shop.json

Zac12
Shopify Partner
64 0 18

Howdy all,

 

Looking for an enumeration (list of all available options) of plan_name when you're doing a GET request to the /admin/shop.json

I've noticed that there a few, with a subset of others?

For example:

Trial:
trial

Trial from Partner:
affiliate

Basic Shopify:
basic

Shopify:
professional

Advanced Shopify:
unlimited

Shopify Plus (Enterprise):
enterprise

Are there any others?

 

Also, shopify documentation team, I'd really appreciate this being documented in your documentation _somewhere_.

Much appreciated

 

 

Zyber Developer | https://apps.shopify.com/trademe | https://apps.shopify.com/productfilter | https://apps.shopify.com/splittest
Replies 20 (20)
ClementG
Shopify Partner
659 0 136

Hmm that's no good.

Do you mean when you try to issue a recurring charge? I was able to do it on trial accounts, but I only used test charges so far...

Zac12
Shopify Partner
64 0 18

Just non-test charges.

 

Set up a lot of logic which simply checks the plan name they have, and if it's affiliate or trial -- send them to a page requesting they upgrade their plan before trying to do something specific, like upgrading the app package etc.

Zyber Developer | https://apps.shopify.com/trademe | https://apps.shopify.com/productfilter | https://apps.shopify.com/splittest
ClementG
Shopify Partner
659 0 136

Hmm I see. I will have to implement something similar...

Zac12
Shopify Partner
64 0 18

The way I've implemented this is by having middleware which is queried every request after the user has completed the install procedure for the app.

If the store plan matches one of the trial types, set a value in REDIS for their store to say that they are a trial user with a 30 minute timeout (in case they upgrade, but also doesn't hammer the shopify api limiter).

If the store isn't -- redirect them to the payment page which redirects them to the "pls confirm payment" thing in Shopify. Once they have done that, set a value in REDIS to say that this store has payed. On uninstall remove the REDIS key so they don't get no free 30 minutes of app usage etc.

Then the middleware just checks to see if this key exists in redis, otherwise normal query stuff.

 

Trial users I've blocked from upgrading the app plan, they just get redirected to the upgrade store plan page as said above.

Zyber Developer | https://apps.shopify.com/trademe | https://apps.shopify.com/productfilter | https://apps.shopify.com/splittest
ClementG
Shopify Partner
659 0 136
joyrexus
New Member
5 0 0

Apparently cancelled is another possible value.

These values really need to be documented.  App developers need to know what these values imply, esp, the causes and consequences of the values frozen, cancelled, and dormant.

For apps that need to keep an accurate track of a shop's purchase history, I believe the plan_name attribute in the shop/update webhook callback is the only thing that could be used to reliably trigger a disconnect process.

Bogdan_Radu
Shopify Expert
32 0 23

I checked our database to see what values we have and this is what i found: 

"affiliate",
"staff",
"professional",
"custom",
"shopify_plus",
"unlimited",
"basic",
"cancelled",
"staff_business",
"trial",
"dormant",
"frozen",
"singtel_unlimited",
"npo_lite",
"singtel_professional",
"singtel_trial",
"npo_full",
"business",
"singtel_basic",
"uafrica_professional",
"sales_training",
"singtel_starter",
"uafrica_basic",
"fraudulent",
"enterprise",
"starter",
"comped",
"shopify_alumni"

 

Make more sales by sending discount links or apply discounts automatically based on what's in their shopping cart with ✌ Automatic Discount https://apps.shopify.com/automatic-discount-rules ❖ App that allows you to upsell add-ons and bundles without duplicate variants and without any coding needed ✌Ultimate Upsell https://apps.shopify.com/ultimate-upsell

AryeeBernard
New Member
2 0 1

The information provided above will be more useful if we knew what the plan_names translated to, and how if affects a developer

Manaspaul623
Tourist
5 0 3

Hi there,

 looks like another plan name exist. "partner_test"

Michal17
Shopify Partner
820 74 153

Hi @Bogdan_Radu 

Hope you're having a great day!


@Bogdan_Radu wrote:

I checked our database to see what values we have and this is what i found: 

"affiliate",
"staff",
"professional",
"custom",
"shopify_plus",
"unlimited",
"basic",
"cancelled",
"staff_business",
"trial",
"dormant",
"frozen",
"singtel_unlimited",
"npo_lite",
"singtel_professional",
"singtel_trial",
"npo_full",
"business",
"singtel_basic",
"uafrica_professional",
"sales_training",
"singtel_starter",
"uafrica_basic",
"fraudulent",
"enterprise",
"starter",
"comped",
"shopify_alumni"

 


Thanks a lot.