My biggest problem with the ecosystem is how Shopify tries to deflect their own customer problems onto their partners to solve. And oftentimes, these same customers expect the partners to solve it for free. Examples: - Their default theme (provided by Shopify) has problems. Blame it on the app developer. "It's the app's fault." Yes, there are some poorly developed apps, but this lumps together the good with the bad.…
What I wish I knew before building a Shopify App
21–30 of 175 posts
Re: What I wish I knew before building a Shopify App
#22Shopify 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…
While I agree with the first and second point. Theme development is the same as any other system. It's very similar to a Drupal or Wordpress commerce. I am not sure I fully see what you mean. Obviously they don't allow you to use another payment processor, why would they? They make money by having people use their payment processor. There is no benefit to them allowing people to bypass this and implement their own pa…
A single page modal checkout on the same page is the way to go these days, even Stripe's new checkout is unfortunately doing the same thing with not keeping the user on the same page.
Re: What I wish I knew before building a Shopify App
#23Shopify 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…
> not the standard way web developers build a simple website I would like to see this standard described and what level of agreement you get.
Re: What I wish I knew before building a Shopify App
#24Shopify 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
#25- `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 dynamic list of supported API versions. If the version you've hard-coded in your app (because it's what you support) is no longer in that list, it will raise a VersionNotFoundError and your app will probably fail in some significant way.
- There's no connection persistence. Every API call sets up and tears down a full connection, a noticeable performance impact.
- Internally the library uses a lot of global state, it's certainly not safe to use in async code – too easy to use the wrong credentials on a request – and I suspect it's also not thread safe.
- Despite having something called a Session, very similar in documentation to a requests.Session or httpx.Session, it's neither, it's just a container for some creds. No sessions are available at all.
- It's mostly a wrapper around Pyactiveresource, which appears to have a lot of similar issues – internal state that's hidden that causes things to not work as you expect.
I suspect that the Python library was developed by Ruby engineers, some of the practices are things I've seen in Ruby but that just don't fit into the Python ecosystem.
From what I can tell their API deprecation strategy is quite hostile to developers.
I think it would be difficult to build what I'd consider to be production-grade services on top of the library. This is in stark contrast to others such as Stripe's API/libraries which are fantastic.
Re: What I wish I knew before building a Shopify App
#26Earlier quoted context omitted.
They integrate with a lot of payment gateways, even if Stripe isn't one of them. https://www.shopify.com/payment-gateways/united-states
Have to admit, while this is good and reassuring for accepting worldwide payments, Shopify is no good on the subscriptions front and this is very poor if your subscriptions business is digital, like a membership system.
Re: What I wish I knew before building a Shopify App
#27On the other hand, they are doing an amazing job and constantly providing updates. Their docs are really good and improving everyday. Kudos to the shopify dev team.
Re: What I wish I knew before building a Shopify App
#28We'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…
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
#29So I appear to be on a Shopify black list. I've called them, my bank, and on a few occasions even tried other people's cards. I'm declined no matter what, by Shopify. It's been this way for well over a year. Sometimes retailers will manually process a transaction, but otherwise it's infuriating for me to see Shopify grow in the market.
https://help.shopify.com/en/manual/orders/fraud-analysis#fra...
The thing where it calculates ip geolocation distance from the shipping address is a potential culprit. Maybe your IP address has a bad entry in their ip geo mapping software.
They also don't like proxies and VPNs.
Re: What I wish I knew before building a Shopify App
#30Earlier quoted context omitted.
Have to admit, while this is good and reassuring for accepting worldwide payments, Shopify is no good on the subscriptions front and this is very poor if your subscriptions business is digital, like a membership system.
Is Gumroad a better fit perhaps for this use case?
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?