Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multivendor feature #40

Open
shovan777 opened this issue Aug 4, 2021 · 6 comments
Open

Multivendor feature #40

shovan777 opened this issue Aug 4, 2021 · 6 comments

Comments

@shovan777
Copy link
Contributor

What I'm trying to achieve

I want to add a multivendor feature in saleor. #1251
Currently, saleor is a feature rich single shop ecommerce platform which is perfect for small to large scale businesses. However, it does not support a multivendor/multishop marketplace type ecommerce. There are currently zero solutions in this space in the django ecosystem. There are several solutions both opensource and paid most notably in php like shopify, woocommerce and magento but none them support the modern featureset like graphql, PWA, headless architecture in saleor. Thus, a django based marketplace ecommerce will be a welcome addition to the opensource ecommerce space.

Describe a proposed solution

Most similar scenario for a single shop to multivendor transition can be found in Spree in the ruby ecosytem. The multivendor plugin seamlessly transforms spree into a marketplace platform. My first thought was to use the plugin feature similar in saleor however, the plugin in saleor doesn't support database modification as in the spree. The only reasonable method with as little overhead over the core saleor is to add a new app which will host all the tables and relations necessary for multivendor. The following tasks atleast must be done to add the feature:

  1. Make a multi-vendor app
  2. Add vendor relations to tables that need vendor access like orders, products, stocks, shipping, etc.
  3. Develop a payment workflow for directing payment from consumer to marketplace to individual vendors
  4. Add dashboard access to individual vendors

Other solutions I've tried and won't work

Spree can also become a out of the box marketplace but sadly it is not in the django ecosystem and doesn't support graphql currently.
This repo has also discussed several important factors to consider for multivendor development in saleor. Most notably it proposes to use the warehouse table in saleor to connect to a vendor from which all other related tables can then be accessed.

Screenshots or mockups

@sushilkhadka165
Copy link
Contributor

Warehouse app

models contains
Warehouse
Stock
Allocation

related models
Warehouse -> ShippingZone, address
Stock -> Warehouse, ProductVariant
Allocation -> OrderLine, Stock


warehouse should have one ShippingZone if not there will be issue with automatically selecting stock for operation

vendor App

models contains
Vendor (name, owner(User), user_manager(many to many User))
VendorWarehouse

related models
Vendor -> User(owner)
VendorWarehouse -> Vendor, Warehouse

@shovan777 shovan777 transferred this issue from prokuranepal/saleor Jan 10, 2022
@shovan777
Copy link
Contributor Author

created a vendor app as per the PR here

@narayanan-ka
Copy link

@shovan777 is this a saloer dashboard app or a plugin ? There are references in discussions that reference both.

@shovan777
Copy link
Contributor Author

@narayanan-ka this is not a plugin but saleor fork with multivendor features. Similar fork exists for the dashboard as well. We wanted to create a plugin but couldn't do it.

@narayanan-ka
Copy link

narayanan-ka commented Sep 14, 2022

@shovan777 thank you for the clarification. Also , Thanks for contributing to creating this feature. Much needed. I'm looking at saleor as a marketplace to be integrated with my blogging app. But don't know if i should fork the multi vendor repo since there is still development pending.

saleor/saleor#10641

@narayanan-ka
Copy link

narayanan-ka commented Oct 1, 2022

@Shovan, any update on the progress ? Im thinking to fork this repo but the critical payments workflow is pending ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants