An existing eCommerce solution VS Custom built - php

I'm about to launch a few online stores and I would like to share my thoughts so everyone can benefit and also was wondering about your opinion related to the question: open-source eCommerce vs custom built.
I've been exploring some the existing solutions (Magento, OpenCart, OSCommerce, Xcart).
Advantages and cons:
Existing solutions:
Advantages:
You don't maintenance the code.
Plug and Play extensions.
Support.
Less code hours (not so sure about that anymore).
Cons:
Hard to custmoize: custom templates, plugins, special needs has to be implented over an heavy code already (not a MVC fan).
Too many features (could reduce performance).
Custom built:
Advantages:
Easy theme customization (no limits).
Lightweight.
More secure (questionable: Minimal is more secure, though existing solutions has more pen-testers == Users/Coders).
Easy work-around.
Cons:
Hours, a lot of them.
Lack of plugins, you need to craft everything yourself.
More things to consider:
If I'm going for the custom built - which PHP framework would help me the must?
Do you know any existing solution which is lightweight, has good plugins database, and is easy to customize?
at the moment I have to 'like' custom built more, since i'm going to built a network of stores and would like to get a customized solution, though wondering if I might be wrong.
Please, share from your experience and your thoughts related,
Thanks in advance, your help is appreciated.
Sagi.

a few things to consider, in addition to what you stated.
Developing a new eCommerce solution requires not only manpower, but also knowledge. Many topics require dedicated knowledge. Some examples:
Integration of payment systems requires knowledge about federal laws, about the regulations for VISA and Mastercard
Integration of customer systems requires knowledge of encryption systems, of federal regulations for personified data, of opt-in and opt-out customer relation systems
Integration of interfaces to other solutions (ERP, CRM) requires knowledge of secure transactions and channels, secure authentication, transport layer security
Many of the solutions available on the market already have most of this down. If not, they usually don't gain a competitive market share. Some swipe these requirements under someone elses carpet, Magento is known for redistributing it to writers of plugins.

If you are confused between open source or Custom eCommerce solution then I would advice you to choose Custom eCommerce solution. The reason behind this is that if you choose Custom eCommerce solution then the end product that you will see is fully according to you that will satisfy your requirements.
Its true that you have to pay a bit more than a normal eCommerce solution but you will get a powerful and engaging Online Store that will also help you to generate good revenues and sales.
If you are looking for a Smart eCommerce Solution but still confused about choosing then Go for a FATshoppe eCommerce System and check the demo website of your Online Store.

Related

PHP shopping cart

The current site I am supporting is going to become eCommerce. And naturally they need a shopping cart to support it. There will be some sophistication in the sense that they would need to support multiple currencies, multiple languages, delivery methods, subscription models et al.
However they are not a market place, so they do not really care about multiple vendors or multiple store fronts.
Since the site is in PHP, I looked at a few like x-cart, opencart, magisto community edition and prestoshop. The dilemma I have is that the current site management is very particular about design, and most of these shopping cart implementations seem tough to me to customize to the level they would want.
The alternative is to write a custom cart, which is a waste of time & effort since we are reinventing the wheel (which has already been reinvented a gazillion times).
I want to leverage what the open source community has to give. I feel that the middle path is there is a good package available ONLY as a class/module/backend - without the front end UI so that I can start using it and building it how I want.
How does the PHP community approach this problem. From a solution implementation perspective, is it better to build one from scratch?
I am not sure if anything like that exists, though. I would appreciate anyone who can point me to any online resources that will help me in my quest.
Thank you.
If you cannot find any resources to build from you will need to create this from scratch but this is sometimes the best solution as it will be to the project specification.
But my best advice is to look how other cart systems are built and expand and implement functionality, like you said don't reinvent the wheel.
When completed, its always a good idea to upload the project on platforms such as github.com so other people in the same situation can use your code.

Recommended approach to building an online store in PHP

I'm looking for some advice from the community about constructing an online store based on the following information:
About the Store:
Online store that sells physical products
product page will include elements such as customer reviews, product zoom, "you may like" etc.
uses open ID
needs a full backend to support credit card payments, order tracking, shipping, refunds, adding new products to the catalogue, etc
needs to support 3 languages (this is a business requirement)
About my skills:
I've built a similar e-commerce site in raw PHP before with many of the features I want for the new store, however that was my first big PHP project and I know it's coded terribly
My PHP/coding skills are novice and self taught and I have no experience with a framework but I'm keen on learning about one to improve my skills and to make the site more manageable for any coders who inherit the project after me.
My questions:
Do you recommend I build the new store using a MVC framework? If so, which one for this type of project? I have never used one before. I have read that CodeIgniter is good for first timers but I've also read Kohana is great so I'm torn between the two and would prefer something that won't have too steep a learning curve.
Do you recommend purchasing an existing shopping cart/web store system and then modifying it? Or just building the whole thing myself. I have a 3.5 months until launch. Personally I prefer building it from the ground up because I will know all the ins and outs of the site and I really dislike getting stuck not understanding someone else's code and how to control it. However, maybe this is ignorant of me and I should force myself to use something already existing because it's probably coded better. Thoughts?
I have done a lot of reading and research and I felt it only made sense to ask the vastly more experienced community on Stackoverflow instead of just trying to make the decision myself.
I would recommend you to go for CakePHP framework. I did my first e-commerce project with the same and it was pretty easy to learn and gave me a fully customized site as per my needs. It has built in localization, user authentication and also an openID component readily available for it.
In my opinion if you use ecommerce solutions like OSCommerce or Magento, it gives you a lot of unnecessary features and less of required customized options.
You could give a try customizing the OSCommerece which is built in PHP.It has got a wide variety of plugins available with a great user community support.Lot of online web portals are running on that.

CMS or Framework?

I'm looking to build a online store. However, the first question, past the idea of the store, is the platform. I've previously worked with Java and PHP and am quite comfortable with PHP. So my first considerations were Drupal or maybe CodeIgniter (which I have heard lots of good things about)
On discussions with friends, they suggested Django. But I have no experience with Python or Django.
So my question is, is CI better or Drupal? And further, if not either of them, is Django better in terms of ease of development and extensibility?
Request you to not make this a php vs python battle as I'm looking for advice here. Thanks
Edit: More information about the project:
The Project is intended to create a web-store for certain products which aren't currently sold online. The store will have high-resolution images of the products and other associated details. A few other special features related to the products will be added on in time so they aren't that important.
Another clarification: I understand that Drupal is a CMS and not a framework per so. The only reason I compared it to CI was due to the base platform - php. Perhaps the better comparison would have been Joomla vs Django (but I'm not sure as I do not know enough about either, yet)
Choosing a framework for a project you already know what will be the purpose will only slow your development down. If your project's main goal is to be an online store, then pick your choice among the many projects already implemented for you with payment gateways, shipping options, product management, etc. A framework may offer all that too, but will not be ready-to-use out of the box and you will have to bind everything together yourself. My personal opinion is that frameworks are good candidate when you need an highly customized web application that you will write from scratch, that will not only do e-Commerce but handle other specific business models too.
General purpose CMS such as Drupal, WordPress, etc. are good if you plan to extend your online store to also offer other options (i.g. forums, blogs, multimedia/interactive contents, etc.) If you choose to pick this avenue, I would suggest you download the source code of each CMS you retain and play with it for a while and pick the one you feel the most comfortable with, and which has a good user community. Because there's nothing worst than being stuck with someone else's broken code with no one to help you out.
For e-Commerce solutions, you can find many good projects here. If I may choose one to suggest, a solution that you may consider as it looks simple, it is written in PHP and has good reviews is OpenCart
A good one I have worked with is the Instinct e-Commerce plugin for WordPress. I don't necessarily like WordPress, but that plugin is fairly good and will have you get your online store up and running in no time. The plugin also enable you to code new custom payment gateways fairly easily (just one file to code...)
CI and Django are frameworks that help you build a web application from scratch, if you are willing to do this - go ahead and try it. There should be plenty of modules available that allow you to easily extend the framework.
Drupal however is a CMS, so it comes with multiple plugins already installed and is able to manage your content. You'd still need to develop the "store" functionality - payment, listings, etc. - yourself.
If the CMS fits you perfectly now and in the future then CMS, otherwise framework. The framework will allow you total liberty for the price of time spent on development
Have you read and heard about JOOMLA i think its very poweful CMS in php and has a lot of community support as well, In java LifeRay is a good option.
I'd only use a framework if the requirements can not be engineered into an existing cart CMS.
I'd use a CMS over a shopping cart if the commerce aspect was relatively trivial
I'm surprised you're not considering an off the shelf cart. Open Cart is pretty extensible, and Trading Eye has a nice CMS component.
I would generally advise to stick with a language you know for important projects, although I like Python as a language much more than PHP, and Django is a nice framework.
Drupal is not only a framwork, but also a CMS. You can build an online store with some modules (Ubercart), so I would recommend to try that and see if the stock solution fits to your needs.
I suggest you have a look at Drupal's repository of modules -- in particular those in the e-commerce group here: http://drupal.org/project/modules?filters=tid:104&solrsort=sis_project_release_usage%20desc
There's a ton of them that could really help to speed you along on this project.
If you know PHP and have a good grasp of HTML/CSS/JS, you should do OK in Drupal too.
Choose Django if you want to learn Python/Django and use them in your future projects. Django is cool and you'll have fun learning Python. And you'll be able to make an informed decision for your next project.
However, if you have a budget/timeframe or just want to make this project out of the door without needing to learn a new framework I'd suggest choosing a tool/language you're familiar with.
The Bricksett CMS will build the website for you but you can also modify it using PHP for additional functionality. Modify its CSS for a better look and feel. The layout is also simple yet it has a design distinct from other CMS.
A new addition to open-source CMS
Yahoo has something like a specialized CMS for online stores, called Yahoo Stores. They make it very easy to set up an online store, and provide other logistical services. You may want to take a look at that. Of course, they take a small percentage from your sales.

Minimal online commerce software for simple shop

I've been looking for some open source (preferably PHP) online shop software that is relatively minimal but haven't had any success. The people that I'm developing the shop for are selling a very limited selection of items and only need PayPal intergration and as such don't need all the bells and whistles of the major open source software options (Zen Cart, etc).
Does anyone have any experience with any minimal open source shop software they can recommend?
Thanks in advance!
This is a frequently asked question.
Unfortunately there are rarely any simple requirements for e-commerce. There are just too many variables: taxes, product attributes, sub products, packaging, stock control, user account details, shopping carts, shipping methods, delivery methods, payment options, legal requirement, refunds, security methods... the list goes on.
This is why you probably won't find a package that will do exactly what you want that's simple.
But you never know. Good luck!
Did you look at http://www.cmsmatrix.org/
Is something Drupal really to complicated for you?
That makes an online shop simplicity itself
I dont recomend drupal if you program OO.
Ive use it and its really a nightmare, the only plus it has its that its so old that there its a lot of modules and they are all free. The downers are that not all the modules all well integrated, all api its procedure (functions) oriented, there its a lot of "hacked" modules that modify others modules behaviour, modifying or trying to customize or make specific customizacion could involve a lot of time. but i guess its a disadvantage of all generic cms
Virtuemart pluging for joomla has paypal integration, it has cms and its an Object Oriented framework with a lot of documentation. its easy to install, easoy administration, and even easy to modify.

Which PHP open source shopping cart solutions have features that benefit me as the web developer?

There are hundreds of shopping cart solutions available for every platform, and all hosting plans come with several already installed. As a developer I understand that most of these are fairly similar from a user perspective.
But which ones are built with the developer in mind? For example, which ones have a decent API so that my custom code doesn't get mingled with the core code or which ones have a well thought through template system so that I can easily customize it for each new client?
osCommerce is one of those products that was badly designed from the beginning, and becomes basically unmaintainable as time moves forward. Addons are patches, and custom code modifies core. (Unless things have drastically changed since I last looked at it - judging by the version numbers, they have not).
While probably at a bit higher level than you seem to be asking, Drupal is a very attractive platform. It is a CMS at its base, and using ecommerce or Ubercart you can turn it into a store. With modules like CCK and Views you can build very sophisticated ecommerce sites (specialized product types, attributes) with very little coding, plus you get all the CMS tools (editing, access control, etc) for free. If you write your own modules, you can hook into almost anything in Drupal without touching the core code, and you get a ton of flexibility.
Though a lot of developers may not consider it simply because they're stuck in this view that they should write something from scratch, Drupal is a really great development platform for this sort of thing. There is definitely a learning curve to it, especially when you need to write modules for it, but the time it takes to learn and implement a site is still probably less than writing a very customized ecommerce site from scratch.
Magento would be a good choice. It is based on the Zend Framework and is massively open and customizable. Something a real programmer (as opposed to a designer/developer) could really work with.
Magento is pretty good, and really powerful, but getting to grips with how to go about extending/replacing things is pretty tricky. The codebase is massively flexible, and just about anything can be replaced or extended, but there's very little documentation on how to go about doing it.
There are plenty of 3rd-party addons, for different payment-providers and other things, and the built-in download-manager handles the installation of these, as well as upgrades to the core code, really well.
Compared to something like OSCommerce though, it wins hands down.
I've just discovered opencart which so far I am impressed with.
How about ZenCart? It's open source so you can read and modify the source directly.
There's also a decent template system.
What about prestashop ? It's based on Smarty and there's a detail explanation on how to write a module.
I think Megento is the best but it has very long list of fratures and matains many more tables which is some times creating problem. If you have to create very large shop must use megento unless use zen-cart. I have used almost all shopping cart but my first prefreance is megento for large site and zen-cart for alltype of shops.
osCommerce seems to be pretty popular, and advertises ease of integration as one of it's main features.
I would second the Magento suggestion. It has a modern code base and is designed with extensibility in mind. It also has multi-site, multi-language capabilities engineered in from the start. It's open source and seems to have a disciplined development team (with a MySQL AB -like business model) behind it .
Here is a good review of carts:
http://php.opensourcecms.com/scripts/show.php?catid=3&cat=eCommerce
Although the voting doesn't seem to reflect a lot of the feedback from the users, so I would suggest reading the comments to find out pros cons of each
Moltin is built with developers in mind and is purely an API. You can choose the parts of the API you want to integrate with whatever frontend you have. You also get a dashboard to manage your store if you want to use it.

Categories