E-Commerce

Django packages / apps for building an e-commerce site, a store, and or most other kinds of selling things on the internet.

Features currently being evaluated

FeatureDescription
Payment Methods We accept M-Pesa, Paypal and Airtel Money.
Demo Site If the framework has a public demo site, a link and login/password are given.
Documented Contains thorough documentation.
WYSIWYG Editor Support for WYSIWYG editor(s) and/or markup formats.
Comments and Rating Add a comment to a product and/or rate it.
Multilingual Full builtin multilingual support.
Plugins Supports third party plugins.
Tests Contains a suite of unit tests.
SEO Builtin tools for SEO.
Shipping options Available shipping options.
Search Has the framework a builtin search?
PDF Invoice Generation Supports PDF Invoice generation for packaging slips?
Product Types Supported product types.
Anonymous Checkout Can a customer perform a checkout without registration?
Stock Control Can stock levels be specified with products going out of stock once all
purchased?
Sales Specify a discount across a range of products and/or categories for a date
period. Bonus points if it doesn't add extra database queries each time the
product is viewed.
Test coverage The current test coverage of the package in percent.
App Integration Does the admin interface support integration of any Django app which provides at
least a urls.py? (Eg by making use of Django's admin interface)
Upsell support Allow product cross referencing and upselling opportunities
Wishlists Allow users to identify wishlist items
Tax calculations Allowing products to be taxable via different shipping/billing areas
Configurable Checkout Steps Can the checkout steps be combined into a single screen (one step checkout) or
multiple (billing/shipping, payment, confirmation) with a single setting.
Continuous Integration Does the package use a CI service, and where is it?
Multisite Multi-tenancy enabled through integration with contrib.sites.
Promotional Codes for Discounts Can discount codes be created for the customer to enter and receive a discount.
Features such as support date ranges and limit to certain products and
categories and optional free shipping.
List of Sites Is there a list of sites online that use the E-Commerce app?
Customer Accounts Customer accounts integrated with Django auth - for features such as order
status, invoices and history.
Multi-Tenant If the shop supports multiple sites, can they all be hosted from a single
running instance of the application?
Continuous Integration Does the package use a CI service, and where is it?
PyPi Installable Can be automatically installed with dependency resolution via pip or setuptools.
Dynamic Categories Categories can be created for all products under a certain price, that contain a
certain attribute (eg colour is blue) and will be automatically updated as the
product attributes change.
Multiple currencies Allows to use multiple currencies in one instance. All catalog items can be
provided with prices in each currency.
Django Version Which version of Django is supported?
South Support Allows south to be used to migrate the database.
Package django-oscar django SHOP satchless Satchmo Cartridge LFS - Lightning Fast Shop Plata mamona django-carton django-cart shopify_python_api Django Currencies django-changuito Django session cart django-ajax-shop django-sellmo gnocchi-catalogue
Description Domain-driven e-commerce for
Django
A Django based shop system E-commerce for Python Satchmo is an ecommerce
framework built on the Django
framewo...
A Django shopping cart
application.
An online-shop based on Django Plata - the lean and mean
Django-based Shop
Fully portable Django payments
application that can use any
Order/Cart model.
django-carton is a simple and
lightweight application for
shopping carts and wish lists.
Django simple shopping cart
solution, with tests :)
django-currencies allows you
to define different
currencies, and includes
template tags/filters to allow
easy conversion between them.
This is a fork of the fork of
django-cart .. It reminds me
this quote...
http://www.youtube.com/watch?v=VkpjiohfmQU
... but if you ...
A 'cart' for Django, stored in
a visitors Session
a little and fast reusable
shop application ajax based
Ambitious Django based
e-commerce framework
A Product Catalogue app for
Gnocchi
CategoryFrameworkFrameworkFrameworkFrameworkAppFrameworkAppAppAppAppProjectAppAppAppAppFrameworkApp
# Using This101511281112141100311101
Python 3?
Development Status Beta Unknown Unknown Beta Beta Unknown n/a n/a Production/Stable Production/Stable n/a Beta Production/Stable n/a n/a n/a n/a
Last updated April 15, 2014, 5:19 a.m. Feb. 25, 2014, 4:51 a.m. April 2, 2014, 8:13 a.m. Jan. 23, 2014, 3:15 a.m. March 21, 2014, 8:02 a.m. April 6, 2014, 4:12 p.m. Jan. 21, 2014, 8:39 a.m. March 6, 2013, 11:43 a.m. March 22, 2014, 10:15 a.m. July 30, 2013, 3:28 p.m. April 10, 2014, 5:12 p.m. Oct. 30, 2012, 2:43 p.m. March 1, 2014, 11:18 p.m. Nov. 12, 2012, 6:16 p.m. April 3, 2013, 3:09 p.m. April 13, 2014, 11:11 a.m. March 18, 2011, 4:18 a.m.
Version0.6.40.2.02011.9.pre0.9-10.9.20.7.7n/an/a1.1.31.0.1n/a0.3.10.7n/an/an/an/a
RepoGithubGithubGithubBitbucketGithubGithubGithubGithubGithubGithubGithubGithubGithubBitbucketGithubGithubBitbucket
Commits
Repo Watchers93074646540430228715311588615516119654
Repo Forks3712848420013010147147502516554n/an/a
Participantscodeinthehole
maikhoepfel
fjern
xordoquy
OliverRandell
izidormatusov
mbertheau
Geekfish
paluh
patrys
more...
chrisglass
alesdotio
bmihelac
mbrochh
jrief
ojii
zeus
simonluijk
piquadrat
johbo
more...
patrys
paluh
emesik
mirekm
mociepka
brew
greggarson
anentropic
bitrut
aniav
more...
chris1610stephenmcd
dfalk
sebasmagri
clemensbasti
AlexHill
jerivas
goodtune
sjkingo
kenbolton
jcartmell
more...
diefenbach
mthornhill
pigletto
naro
restless
simahawk
baffolobill
bartTC
xentry
suvit
more...
matthiask
DrMeers
frog32
sbaechler
schmidsi
blacktorn
jonasvp
docc
fabiangermann
rofrankel
more...
emesik
radiosilence
tbarbugli
lazybird
sect2k
bmentges
dfalk
michaelavila
furins
pickle27
dylanahsmith
benjlcox
gavinballard
beckwith
bmorrise
deniszgonjanin
danielroseman
davefp
sinejoe
more...
jleclanche
panosl
noxan
stelzzz
angvp
bmentges
dfalk
friendka
bitdeli-chef
cristianprieto
funkybobattuchadaptivdesignfunkybob
Documentation N/A N/A N/A N/A N/A N/A N/A N/A N/A
Package django-oscar django SHOP satchless Satchmo Cartridge LFS - Lightning Fast Shop Plata mamona django-carton django-cart shopify_python_api Django Currencies django-changuito Django session cart django-ajax-shop django-sellmo gnocchi-catalogue
Payment MethodsGateways: DataCash, PayPal, PaymentExpress

There is also an accounts extension that provides support for giftcards, loyalty schemes and customer budgets.
cash-on-delivery
paypal (ext)
postfinance (ext)
Easily extensible
Authorize.net
PayPal
dotPay
SagePay
 
Authorize.net
eGate
PayPal
Stripe
Very flexible OOTB. Easy extendable via a plugin API.

Cash on Delivery
Bank Account
PayPal
Credit Card
sofortueberweisung.de

PayPal
Postfinance
Cash on Delivery
Ogone
Paypal
Demo Sitehttp://demo.oscarcommerce.com/local (in the example folder)Local only, look in examples/demo/  http://mezzanine.jupo.orghttp://demo.getlfs.comSeveral projects in the repository demonstrating various aspects of Plata.http://acquista.dolcericordo.it
Documented  http://django-oscar.readthedocs.org/en/latest/
WYSIWYG EditorDefault install uses bootstrap-wysihtml5 but any other JS widget can easily be dropped in.  Does not belong to the framework  yes TinyMCE can be activated easily; FeinCMS content blocks can be easily reused inside Plata (FeinCMS isn't required to run Plata)html markup in Product description..
Comments and RatingYes - reviews and review ratings are supportedUse existing Django packagesProvidable by standard django packages
MultilingualYes https://www.transifex.com/projects/p/django-oscar/Possible
Plugins  Built around OrderProcessor and content plugins
Tests
SEOPossible
Shipping optionsExtremely flexible. Any part of the shipping calculation can be customised to suit your domain.Flat rate, easy api for extensibilityBase class to build upon, multiple delivery groups within one order  Flat rate provided plus hooks for implementing your own rulesVery flexible OOTB. Easy extendable via a plugin API.  Flat rate provided; other options can be implemented through a plugin systemcost of shipping configurable
SearchYes - ships with Haystack configuration but can be easily replaced with custom implementationHaystack support comes in contrib  + livesearch  Does not belong inside shop software
PDF Invoice GenerationPossible but not in corePossiblePossible
Product TypesYes - A base product type is provided which can be subclassed and extended. Built-in support for digital product types which don't require shippingAny
Variations (ext)
Abstract base class to build on  Single product model that handles 0-n variations with 0-n option types.Standard, Variants, Configurable Products  Only comes with example products; you have to write your own product model (third party packages with products are available)Tags Section 
Products are grouped by tagging.
Also, any product has 1-N Variants
Anonymous CheckoutYes - Can be disabled if not requiredPossible
Stock ControlPossiblePossible + transactional stock control (one transaction per stock change)
SalesYes - Highly sophisticated offers engine.Possible
Test coverage~75%90% +  75%Enough  90% +
App IntegrationAdmin can be used but a more sophisticated dashboard is provided.Uses the regular Django adminLFS doesn't use Django admin.Django Admin, possible with Django-Cms
Upsell supportYes - including automatic offer promptingPossible
WishlistsWill be in 0.6PlannedPossible
Tax calculationsPluggable tax calculationsPossible
Configurable Checkout StepsYes - The checkout can be easily customised to add, remove, alter or combine steps. It's not controlled by a single setting though.Single-step and multi-step checkout included with the framework, you can provide your ownPossiblePossible through subclassing the Shop object
Continuous Integrationhttps://travis-ci.org/tangentlabs/django-oscar  https://travis-ci.org/stephenmcd/cartridgehttps://jenkins.shiningpanda.com/lfs/job/LFS/
MultisitePossibleNo and never will
Promotional Codes for DiscountsPossible
List of SitesYes https://github.com/tangentlabs/django-oscar#case-studies  http://cartridge.jupo.org/overview.html#sites-using-cartridgehttp://www.getlfs.com/live-shopshttp://acquista.dolcericordo.it
Customer Accounts
Multi-Tenant
Continuous IntegrationYes - https://travis-ci.org/tangentlabs/django-oscarhttp://ci.django-shop.org/job/django-shop/  http://travis-ci.org/#!/stephenmcd/cartridgehttps://jenkins.shiningpanda.com/lfs/job/LFS/
PyPi Installable
Dynamic CategoriesYes - called "ranges"Possible
Simply categories (ext)
PossibleNo, YAGNI(yes) For selecting which order items a discount applies to
Multiple currenciesNo and never will
Django Version1.3+1.2, 1.31.3Cartridge <= 0.3.7 supports Django 1.1 to 1.4
Cartridge >= 0.4.0, <= 0.8.1 supports Django 1.3 to 1.4
Cartridge 0.8.2 and 0.8.3 supports Django 1.4 to 1.5
Cartridge 0.9 supports Django 1.4 to 1.6
1.1, 1.2, 1.31.4, 1.51.31.1+
South SupportMigrations included  Full migrations includedFull automatically migration  Not possible because Plata allows configuring the product model
Package django-oscar django SHOP satchless Satchmo Cartridge LFS - Lightning Fast Shop Plata mamona django-carton django-cart shopify_python_api Django Currencies django-changuito Django session cart django-ajax-shop django-sellmo gnocchi-catalogue
Search WeightPackageDescriptionLast PyPI release:Repo ForksWatchers
{{item.weight / max_weight * 100 | number:0}}%{{item.title}}Grid: {{item.description}} {{item.last_released | date: 'mediumDate'}} N/A {{item.repo_forks}} N/A {{item.repo_watchers}} N/A