Take the 2-minute tour ×
Craft CMS Stack Exchange is a question and answer site for administrators, end users, developers and designers for Craft CMS. It's 100% free, no registration required.

I'm developing an online store for a new women's fashion brand. The design and strategy calls for a content heavy site with many custom templates and cross referenced entries to drive traffic and community to purchases in the store. For this reason — as well as convenience for site administrators — the store needs to be seamlessly integrated with all of the editorial content on both the front and back-end. Craft is obviously a perfect candidate for the editorial content, but at this moment the options for e-commerce plugin are limited. I see two options:

https://dukt.net/craft/commerce

This looks great and the developers have a great track record with other plugins. However I've not gotten a response from requests for more information from them. If someone has connections or inside info on possible availability of the plugin, then maybe they could share?

http://sprout.barrelstrengthdesign.com/craft-plugins/commerce

This is also looking very good, and I've spoken directly with the developers already. But they're not yet ready — the roadmap for 1.0 is still a few weeks from completion, but I need to start sooner.

If anyone is aware of other options that are available and are not listed in the directory, I'd love to hear about them.

share|improve this question

4 Answers 4

up vote 18 down vote accepted

E-commerce Master List

This is a compilation of all solutions mentioned in these answers. Other answers here describe each plugin in greater detail... This is simply a complete list of every option mentioned so far.

Listed in alphabetical order (not by popularity or preference)

Built exclusively for Craft

3rd party services (with Craft plugins)

3rd party services (no plugins)

DIY custom solutions (via an API)

share|improve this answer
2  
@MikePierce I doubt I'm the first one either, but you're not alone. –  Matt Stein Jun 19 at 17:28
1  
@LindseyD Oh I'm just here to complain, not offer productive suggestions. But if you insist, I'd consider Snipcart and FoxyCart "Drop-In Services" since they're super quick to implement and the entire cart+checkout flow is handled by a third party. As opposed to Stripe/PayPal where you'd have to make a cart, figure out shipping, etc. or Charge/Commerce/Sprout that'd run on the server with Craft. –  Matt Stein Jun 20 at 19:09
3  
Sorry had to hop on a ferry for Marthas Vineyard, out of loop for a few. I think the solution is to remove the (via an API) from the DIY and open up that category to be like purgatory, where the taste of heaven is on your lips and entirely possible, as opposed to Built Exclusively for Craft where you are in the land of milk and honey. –  cmcjane Jun 21 at 5:37
2  
Lol @cmcjane, that may be the greatest comment I've read all day. I've already given FoxyCart their own category of "3rd party services (no plugins)" as well as had a little Twitter chat with them today. You make a valid point though, I'll definitely keep that suggestion in mind for a future edit (I get the feeling this list will continue to evolve). Thanks for the contributions! –  Lindsey D Jun 21 at 5:43
1  
@LindseyD Unfortunately I just caught up on this thread, and I don't have any complaints about the current list. But I'll be watching with unnecessary skepticism... –  Matt Stein Jun 23 at 18:40

I just finished my first Snipcart project and I'm in the process of making a plugin for browsing orders and customers from the Craft control panel. Lindsey D's got the landscape covered with his answer so I can at least share my experience with Snipcart:

Snipcart

For those who somehow skipped other answers or haven't looked at Snipcart, it's a JavaScript cart service that's focused on being quick and easy to implement. You define product links with some data markup, include their cart JavaScript, and get a modal (guest+member) cart and checkout flow that you can style as needed. It can work with physical products, downloads, somewhat configurable products, and it comes with support for flexible promotional code options. There's a somewhat limited (but useful) control panel, integration with a handful of payment gateways, and the option of using live shipping rates from different (selectable) carriers.

Snipcart is not as full-featured as something like Shopify—the reporting is fairly basic and we're hoping for gift certificate support, for example. My client asked to customize the specific shipping speeds/services offered by carriers, but at the time of this answer it's not possible; you can only toggle one carrier or another, not the individual services from that carrier. These limitations are the tradeoffs you get with Snipcart since it's young: it's astonishingly easy to get working right now, but if a particular feature doesn't exist there's not much you can do other than ask and wait.

Team Snipcart

Snipcart's team is small but dedicated and incredibly responsive. It's abundantly clear that they're working hard on building and refining their product. Charles responded quickly and thoughtfully to every question I had, even the annoying didn't-RTFM ones. He was willing to take feature requests, help troubleshoot when I had issues, and he's a nice guy to boot.

Sometimes merely asking about how to do something would result in a feature magically appearing or a problem being fixed.

Integration

If you can define your products in a way that works, you're basically done. There are JavaScript and REST APIs and webhook support for limited extensibility. The Snipcart folks are aware of Craft, to the point of suggesting Craft-specific inventory management on their blog.

Snipcart was easy to drop in and immediately get a working cart. (And we're using Stripe, which is always dreamy in my experience.) Overriding/customizing cart styles was painless, even though Snipcart could change the base cart markup at any time and require some adjustment.

Integration with Stripe was perfectly smooth, in test mode and in live mode—not a single issue or hiccup. Snipcart was available and fast 100% of the time, and every order has been captured and charged flawlessly as you'd expect. (We had some initial configuration issues on our end that we quickly worked out, but those weren't Snipcart's fault.)

We had an awkward account-juggling process since there's only one set of administrative credentials per Snipcart account. We ended up creating a new client-owned account and reconfiguring it for launch. Not a big deal, but it'd be nice to see multiple account users as an option. You can have multiple private API keys, hence the Craft plugin I'm working on for browsing orders/customers.

Conclusion

Snipcart's definitely the scrappy new kid on the block, this simple integration has gone pretty well, and I would look to use Snipcart again for the right project. For a store with more intense/complicated needs, Shopify, Commerce, or Sprout Commerce might give you more control at the expense of more development time.

share|improve this answer
    
Any chance it's possible to hide shipping methods/services you don't want with CSS? –  Anna_MediaGirl Jun 19 at 19:53
    
@Anna_MediaGirl I considered that, it just made me nervous because it'd be unreliable at best. The services aren't uniquely classed or identified, so I'd have to hide the nth element which could change depending on the services available for a customer's geographic location. So it might be possible, I'm just reluctant to live with on such a workaround. –  Matt Stein Jun 19 at 20:05
1  
From their team... "we plan to allow selecting methods from the dashboard, but adding a css class is a good/fast idea, we will try to do it soon". The CSS class does the trick for me. –  Anna_MediaGirl Jun 19 at 23:05
1  
@Anna_MediaGirl Thanks for sharing that! –  Matt Stein Jun 19 at 23:14
1  
They added the CSS class to the <tr> tag. Kudos for quick! –  Anna_MediaGirl Jun 20 at 4:42

I've yet to try it but Snipcart seems to be on of the most viable options right now. Essentially it works though HTML/JavaScript and integrates with fields you define in your Craft setup, see their post explaining here. You can even update your inventory using their webhooks, again they explain how to here.

The only others that you haven't mentioned but are in the Straight Up Craft directory are a Shopify plugin by Trevor Davis and Charge by Joel Bradbury - I'm not sure if you have already seen these.

For an upcoming site I plan to try the Snipcart method, failing that I'll fall back to implementing Stripe.js manually and writing a plugin to handle the inventory side of things with Stripe webhooks.

share|improve this answer
    
You're right, I'd forgotten about Snipcart. I had seen that blog post. I'm wary of a purely JS solution only because I'm an old school progressive enhancement type of guy. –  Mike Pierce Jun 19 at 11:09
    
Shopify unfortunately isn't an option for my client in this case. Charge looks great for simple payments, but as far as I can tell there's no concept of a cart or shopping session, right? –  Mike Pierce Jun 19 at 11:11
1  
Yep charge simply lets you buy individual things, not collect them in a cart. –  joshangell Jun 19 at 11:37
    
Another method I've been thinking over is writing my own cookie-based cart, using PayPal as the only gateway (you can just POST them a form with stuff in it) and then somehow getting back inventory data on the return from PayPal - I know all this is possible but I've not actually tried any of it! –  joshangell Jun 19 at 11:40

Foxycart indicates they are jumping in https://twitter.com/foxycart/status/478952251239567361

share|improve this answer
    
So Foxycart is turning on the lights as we inquire bit.ly/SXFIr2 –  cmcjane Jun 20 at 16:15
    
I think they sensed that they were being talked about somewhere. –  Matt Stein Jun 20 at 18:51
    
Indeed, but I think they were already on it, or they have an amazing ability to learn quickly! –  cmcjane Jun 20 at 20:43

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.