Shopify/E-commerce on ICP?

Can virtually any type of Web 2 Shopify website translate or migrate over to ICP?

2 Likes

Technically yes…but it really depends on what you are trying to accomplish.

Shopify has thousands of features that are required to service their customer base (100k+ merchants)
The feature set when considering basic, advanced and enterprise clients is a massive list such as a headless API, a marketplace for 3rd party apps, multiple payment providers, channel integrations, crm/accounting etc, email marketing, automation, customer support etc… All of these features would take years to build on the IC IMO and would be overkill and ultimately clunky because shopify is a 15+ year old platform and very mature. Shopify wins because it has a very easy to use store builder and a full customer support team to help merchants scale their ecommerce stores. They are a multi billion $ public company after all…

A better take is to build out the use-case for why you’d want to run shopify on the IC? Are you going for censorship resistance? or are you trying to just accommodate basic ecommerce on the IC between two parties? are you building a marketplace where buyers and sellers can interact? etc.

There is a lot to unpack when considering a modern ecommerce stack on something like the IC. My take is to start simple, use the IC for what its great at (cheap fast transactions, durable storage) but keep the majority of the platform code offchain in a traditional web2 setup. Then over time, build out a fully decentralized version of an ecommerce builder on the IC, but not a feature-for-feature clone of Shopify but rather one that makes sense in a decentralized network.

This would be the endgame but consider that you’d probably always need some sort of web2 company or dao to manage/screen/kyc the merchants on the platform - otherwise you could end up with silk rd/dark market merchants which would bring unwanted regulator baggage to the entire network, so lets try to avoid that :slight_smile:

3 Likes

Thanks for your reply!

Regarding cheap, fast transactions, does IC also accept fiat transactions? How?

Trying to wrap my head around how to anchor my primary use-case: tamper-proof censorship-resistant DAO website on IC with a modern ecommerce stack, and be able to function like a Web 2 setup.

Physical product sales, PPV streaming, Marketplace Dapps. NFTs. Never selling anything illegal!

Any more info offered and direction given here would be greatly appreciated.

thanks

No, the IC has no construct for fiat currency. As it’s a decentralized network its native currency ICP fulfils the role of fiat. For businesses that need to accept fiat, they first need to get setup with an exchange account/banking partner to handle that part of the transaction.

Onchain, transactions are done via tokens like ICP, ckBTC etc.

A tamper-proof, censorship resistant website is the core usecase for the IC and it comes with the bonus of hosting everything on the network - so you can theoretically get rid of any ancillary hosting accounts (aws/azure etc) entirely. However, in the reality ecommerce requires many touchpoints with 3rd party services and vendors so it may not be practical to host everything onchain. The IC has a novel feature called http outcalls which allows code on the IC to call out to standard APIs and services - no other chain can do this btw.

For a “physical product, ppv streaming, marketplace” you are building a complex product. Anytime you build a marketplace you are catering to multiple sides of a transaction (merchants, vendors and end customers) so this complexity will be a challenge (but not impossible!).

My suggestion is to start simple, and go with the most basic use-case and build on the IC for that. Then iterate once you are familiar with the all the nuances and intricacies of the platform…what strengths and weaknesses the IC has etc. There is a learning curve to this network … but the end result is a nice and succinct app that runs entirely onchain and no huge hosting provider bills!

1 Like

Currently, you can Iframe existing authorizations for fiat cc sales (here is an example of the Lyra api Internet Computer Loading) but it isn’t “web3” per se, but you could totally host a web store and use a clearinghouse that offers Iframe capabilities. I am working on seeing if I can locally store the “capture”. The issue then would be finding a firm to “authorize”. This tech is still in its infacy but fiat cc interactions on web3 are something I love.

The Lyra test client functions within the web3 host.

Well, I disagree, building out the architecture to capture fiat cc transactions isnt difficult, the biggest barriers are pci compliance and finding a firm that would let you authorize those transactions. If you were to satisfy pci compliance, I see no reason why a firm wouldn’t let you collect from a web three hosted site. Now, is pci compliance antithetical to web3? That is a philosophical question that I cannot answer for you.

But to answer this, I don’t see why not. If you used shopsite and their Iframe drop in cc client, you could totally do this. But as I said before, it wouldn’t really be web3, but web2 interacting through an onchain front end.

If you mean onboarding = copy pasting Web2 Shopify business model & operation on ICP, it may be difficult. Traditional internet (Web2) vs ICP architecture is different. But I believe there will be a new kind ‘Shopify/E-Commerce’ startup that will emerge, with their different business model & operation that leverage more the unique technologies of ICP

1 Like

I think the best approach is to build a Figma plugin that allows for the creation of a website and deployment into the IC. You can even have different plugins that serve as payment processors. You can have plugins that go into the website eventually having enough functionality similar to Shopify. However building a website builder is a great undertaking and it is best to use the tools that people already love and use.

Alright, I guess I’m about to learn Figma.

Any other tools you could recommend?

thanks

Not really. You can do almost anything with Figma. It is why Adobe bought it in a recession. It is not an easy tool to build. Framer is now getting into that market where it deploys websites. There are many competitors now. I think connecting into that and extending to canister hosting and ICP functionality like ckBTC, ICP and connecting into all the web 3 eco is the way to go. I think Figma is also going to be releasing something like hosting websites and building directly using the tool to compete with Shopify. However I think deploying into IC could be an option as well. Just building on top of that tooling is a good first MVP than recreating a really complicated UI app. Figma has a great team, I was saddened when it got bought up by Adobe.

1 Like

Well, to set-up a e-commerce site that streams a hit 3d animated movie to support theIC site and ecosystem…how tough can it be?

I couldn’t agree more…and if Figma can make that happen I’m happy. :slight_smile:

So yeah, Figma looks great, highly interactive sites!

How exactly to deploy a Figma/Anima website onto the IC?

I know it is possible. Work needs to be done to build that plugin.

Ok so, did my homework on Figma/Webflow no-code builders and I can build that site.

But now, how to approach building the plugin module to connect/wrap the site on the IC?
Any other builder tools to help with this?

I don’t understand why you couldn’t just write an html/css/svelte webstore and upload it direct to the ic via a canister?

Would that work?
I just don’t have enough knowledge yet.

1 Like

Yes you could do that. No problem at all. The issue would be collecting fiat payments as I posted earlier.
You would have to edit your store or items via deploying new replicas to your canister, but it would be no different than writing a regular site. The link I posted above to my website is a plain html sight hosted on the ic. You could get as creative as you want. We even added a redirect from a normal url so people could find it without the big ic url.

I concur.
I can receive the payments thru crypto easy enough…but I now need to figure out how non-US and non-EU company can receive fiat on IC and get that into my canistered site