What I wish I knew before building a Shopify App
31–40 of 175 posts
Re: What I wish I knew before building a Shopify App
#32Earlier quoted context omitted.
Is Gumroad a better fit perhaps for this use case?
Gumroad looks cool, but the percentages they are taking are extortionate, not sure if they are better. It would get to a point where I am giving thousands of pounds to Gumroad to lock myself in. How customisable is it, can it do Apple / Google Pay?
Re: What I wish I knew before building a Shopify App
#33We've just started developing a Shopify integration and used their Python API library because we're building it into an existing large Django codebase, and I've been shocked at the quality of the API library. We're now aiming to rewrite the bits we need. - `import shopify` makes an API request. If their API rate limits you, your server will probably crash. This happened to us in production. - That API request gets a…
> From what I can tell their API deprecation strategy is quite hostile to developers. Yes, every 3 months you need to revisit the API. It's good and bad. It means that if you're casually developing an app, this will consume a lot of time. Good because if forces you to update and keep your app relevant.
Re: What I wish I knew before building a Shopify App
#34Shopify is an extremely restrictive platform for merchants and developers, I urge people not to use it if they wish to build on top of it. There isn't ways to have a custom checkout (one page) with this system and subscriptions are not natively built in, relying on a third party ecosystem. Theme development is also arcane and not the standard way web developers build a simple website. Oh and they disallow you to use…
They integrate with a lot of payment gateways, even if Stripe isn't one of them. https://www.shopify.com/payment-gateways/united-states
Re: What I wish I knew before building a Shopify App
#35Re: What I wish I knew before building a Shopify App
#36* I can concur that their API is unreliable. About 1 in 5 of my CI runs fail with mysterious 500 errors. It's infuriating.
* The support channels are a wasteland. Do not expect help.
* The documentation is super thin. At first glance it looks decent - there's the objects, there's the fields those objects have. But it's missing all the details about how those fields are supposed to work. Example: A Fulfillment has a tracking_numbers array, but there doesn't seem to be any way to add multiple tracking numbers. The docs are silent, and questions about this in the support channels remain unanswered. For years.
* There are two completely different APIs (graphql and REST), which do not have equal capabilities. If Shopify is planning on deprecating one of them, they should give us guidance.
* The API is inconsistent. I count at least FIVE different representations of an Address structure, each slightly different for no apparent reason. Eg "country" vs "countryCode". This is the kind of thing that creeps into projects in dynamic languages when nobody's paying attention.
* There's a lot of overengineered stuff. The Metadata API is really unpleasant compared to Stripe's simpler approach.
* There's no way to set up common shipping scenarios like "$N for first item, $M for each additional".
I could go on. But I will say this: It's better than Etsy's API. Though Etsy is finally working on it again, so maybe that will change.
Re: What I wish I knew before building a Shopify App
#37We've just started developing a Shopify integration and used their Python API library because we're building it into an existing large Django codebase, and I've been shocked at the quality of the API library. We're now aiming to rewrite the bits we need. - `import shopify` makes an API request. If their API rate limits you, your server will probably crash. This happened to us in production. - That API request gets a…
> From what I can tell their API deprecation strategy is quite hostile to developers. Yes, every 3 months you need to revisit the API. It's good and bad. It means that if you're casually developing an app, this will consume a lot of time. Good because if forces you to update and keep your app relevant.
Re: What I wish I knew before building a Shopify App
#38I share some of the pains the author raises. One major thing that is a bit discouraging is the inconsistent feature support they have between REST and GraphQL APIs. Neither of them cover all functionalities, so sometimes you have to be bouncing back and forth between REST and GraphQL. On the other hand, they are doing an amazing job and constantly providing updates. Their docs are really good and improving everyday.…
Re: What I wish I knew before building a Shopify App
#39Re: What I wish I knew before building a Shopify App
#40I built a print-on-demand system that integrates into Shopify stores. To vent a little... * I can concur that their API is unreliable. About 1 in 5 of my CI runs fail with mysterious 500 errors. It's infuriating. * The support channels are a wasteland. Do not expect help. * The documentation is super thin. At first glance it looks decent - there's the objects, there's the fields those objects have. But it's missing a…