E-commerce features

A lot of shops are getting into e-commerce due to COVID-19, and assorted providers have generously been offering free setup of their own proprietary cloud systems. The shopkeeper then has to pay indefinitely (often with both a cut of profits and customer data). This seems like the sort of problem FreedomBox could solve.

Competing with Amazon would require federation. The W3C has a new Federated Commerce Community Group. There seems to be some e-commerce software which is federated, such as the Openfoodnetwork software (AGPL). There does not seem to be any open-source federated crowdfunding platform. Most e-commerce software does not seem to federate.

Some software relies on integration with closed-source/proprietary systems (payment platforms, online advertising on major platforms, etc.). Some, like Vue Storefront, seem to offer the option of switching between them. These integrations may cause problems for incorporating the software into Debian.

*Wikipedia’s list
*A very non-independent list.

I am not very familiar with OS merchant’s software/e-commerce/online storefronts, so if you are, please feel free to comment and/or correct me. Is there a package that would be especially suitable for FreedomBox?

1 Like

@Lepidopteran Thanks for highlighting one of the major problems during the time of the pandemic. The FCCG of W3C looks interesting.

As far as I know, federated e-commerce isn’t a solved problem yet. I didn’t even see vaporware out there that claims to provide a federated view of multiple shops to a customer.

In my opinion, this is a problem in need of a social solution like a cooperative of multiple shops in an area selling through one unified e-commerce portal rather than a technological solution like yet another federation protocol. It can be like Amazon marketplace but without the exploitation from the centralized big player, and more localized to an area.

I am aware of Open Food Network. We considered using it in rural deployments of FreedomBox in Indian villages (but didn’t go through with it). It can be used for decentralized e-commerce, i.e each shop hosting their own web shop, but it is not federated. We imagined each farmer coop running one instance of Open Food Network.

WordPress is one of the applications that is being considered for inclusion into FreedomBox. There is an e-commerce plugin for WordPress called WooCommerce that can be used to run a small web shop.

We should also keep in mind the fact that FreedomBox is not intended for large scale operations out of the box (though a talented system administrator might be able to scale it by provisioning more hardware). I find it easy to imagine a self-hosted replacement for Etsy (but with one seller) running on a FreedomBox Pioneer device. Maybe it can also handle a low-traffic store. :thinking:

Sometimes, we tend to gravitate to high tech solutions to most problems. Today, I made a purchase by sending my address as an SMS to a merchant’s phone who sells only one item, so he doesn’t even need to know what I want to order or a storefront to display his one ware. I paid in cash on delivery. :man_shrugging:

Thank you for the thorough and thoughtful reply. I’ll reply to your points about scale and federation first.

You’re right, I think the grouping OFN refers to is within an instance. Certainly I’d expect the W3C group to know if there was any significant federated-shopfront software already out there. I don’t know if ActivityPub might be a good basis for a federated shopfront (or shopfront plugin).

I’d agree that a large store would probably not be a use case for FreedomBox. I was also thinking more of the average-Etsy-scale store, with single- or double-digit sales per week. Perhaps it’s better seen as two separate problems:

  1. A small merchant wants to sell widgets online (say, a crafter who might otherwise use Etsy, or an independent bricks-and-mortar store that wants to list their products and prices online).
  2. A purchaser wants to buy a widget (they can probably find it on Amazon, or in a big box store, but they are not going to check half-a-dozen independent shops).
    2a. A merchant saying “Why do they buy widgets at [Amazon/franchise competitor] when my widgets are cheaper and better?”

I think discoverability is the only motive for federation; a cross-store search function is valuable to both parties. I’d love to be able to search by product barcode or keywords and find out who stocks what where at what price. There have been many commercial providers of price-comparison sites, so I’m not the only one. Unfortunately, the business model for most price-comparison sites tends to degenerate into manipulating results according to “advertising fees” paid by merchants (e.g. Google Shopping). Walled-garden aside, these conflicts of interest make the comparison sites pretty useless.

Discoverability is not a big deal in some markets. If customers can find all the local stores by driving down a couple of streets, or most customers have lived in the same place all their life and talk to each other a lot, they are likely to know about all the local stores for products they buy regularly. For selling and buying food in an Indian village, I think a local e-commerce portal shared by multiple local shops would work very well. I’ve even seen a 20th-century offline bricks-and-mortar version of this model, and it worked.

If customers are savvy searchers and willing to spend a lot of time hunting for a product, discoverability is also less important. If the product is frequently talked about in community of potential customers, word-of-mouth can do wonders; you can even self-host a crowdfunding campaign. Some leaving-the-cloud-type products, hardware and software, have successfully relied on this. These are intrinsically unlocalized products, due to the economies of scale for electronics and software (and customizability).

But if you are selling a useful but boring product to a small, non-localized market of socially-isolated, footloose, busy customers, discoverability could be your biggest worry. This is a common situation, faced by anyone trying to start or run a specialized store, or a store in a megacity. An independent website selling your typical Etsy/Amazon product might genuinely get less turnover than an equivalent Etsy/Amazon storefront.

Since having more sales through your [Etsy, Amazon etc.] storefront boosts your visibility, you have a strong disincentive against making sales off-platform, even to your own mother. :slightly_smiling_face: So you pay the 5% commission on each sale as an advertising fee.

I’ve talked to some of these types of storekeepers, and I think non-federated e-commerce software in FreedomBox would be useful for many. A federatable system would be still more useful for some people, but not all. Wordpress plugins like Woocommerce sound useful.

Not related to e-commers but somewhat relevant to small shops is the Tryton application framework. It seems to have extensive set of applications and is well packaged for Debian. I wonder if they have or are considering something for e-commerce along the lines of FCCG.

Yes, Tryton, iDempiere and Akaunting have extensive business management tools. More basic accounting is provide by quite a few packages, including Flowlog, GnuCash, GNUKhata, KMyMoney, and Openmiracle. More broadly, Apache OFBIZ has these services and an e-commerce platform. There are also other specialized packages for human resources management and recruiting, marketing and customer relations, and so on.

Maybe we need a general list of potential FreedomBox packages useful to small businesses.

Cash is a great solution. Unfortunately many places currently don’t accept cash (on grounds of infection control), and you can’t send cash over the internet, nor by mail (legally, in many countries). Cash is also often a pain for the merchant to handle; you have to pay the bank for rolls of change and so on.

So another incentive for the status quo is poor banking systems. In some places, you can fill out an online form and be told “Here is your total cost and order number. Please tell your bank to transfer of this amount to our bank account at [unique identifier, e.g. SWIFT/IBAN], and quote the order number on the transfer”. This system works well; the buyer does not need to trust the merchant with any banking information (maybe a delivery address, for physical products) and the merchant can set it up easily, without worrying about having custody of information that could be used to drain the buyer’s bank account. The attack surface is limited to the sending and receiving bank. A snooper on the storefront transaction can’t even identify the buyer’s bank. A snooper could pay for the buyer’s purchase before the buyer does, but giving random presents is not a profitable financing model for organized crime.

However, in other places, buying online essentially requires a credit card. Poor people sometimes can’t get credit cards, and credit cards are often designed to get people into debt and keep them there while charging high interest rates. Merchants have to pay a fee to a credit-card duopoly on every transaction. Since the merchant holds the credit-card information, the merchant has to protect it from being stolen, and buyers will not buy from merchants unless they trust the merchant not to drain their bank account. This favours big, established businesses over start-ups. Unsurprisingly, under these conditions the merchants want a mainstream commercial system that spreads liability, possibly even a big, established platform consumers already trust. Nobody ever got fired for buying IBM.

A third incentive is lousy IT. Actual conversation, as close to verbatim as I can recall, at an outlet store of a multinational franchise:
Customer: “Just out of curiosity, why don’t you have these prices online? I mean, you say what you sell on your website, but I have to call or come in to get a price.”
Employee: “Yeah. They say the prices change too fast.”
Customer: “…they change to fast to put them on the internet, so you have to climb a ladder and alter the plastic digits in a physical display on a wall?”
Employee: “Yeah. So basically our IT is totally incompetent. And if you think that’s bad, you should see the inventory system…”

Cloud platforms promise to do inventory management, tell customers what products you sell, and even give up-to-date prices. To a small shopkeeper still doing inventory on paper cards, or in their head, or in a single Excel spreadsheet, this is very valuable. To a person who is considering opening a small business, the cloud provider is offering to check off a big scary black box. Some of the software Sunil suggests below helps deal with this problem.

The people I know who’ve started small online businesses recently are at the knowledge level where building a standard Debian system is a significant but surmountable challenge (with a bit of help). All-in-one-solutions have appeal; just sign up for an account in your browser and follow the GUI. A “how to set up a small business on a FreedomBox” wizard/tutorial might be useful once the packages are there. Could FreedomBox readily accomodate wizard packages?

Feel free to add them to https://wiki.debian.org/FreedomBox/LeavingTheCloud to track their status.

Yet I believe we should focus our resources on social apps for home users and perhaps more apps for tiny SO/HO (Small Office/Home Office) businesses, understood as a natural extension of the former use case.

If I understand this well, YunoHost and other alternatives are better suited for self-hosting more complex applications with huge dependency lists and released on third party repositories, since they are not pure Debian blends and are therefore less constrained in these regards.

1 Like

It seems Tryton also integrates fairly well with small online storefronts.

I entirely agree with both sunil and fioddor that FB does not need to support Amazon’s use cases! I was thinking more small, independent family businesses, and the start-ups many people recently laid off due to COVID-19 are launching. Some of these may be something like an independent greengrocer’s store, but most will be home-office businesses with no dedicated premises; their online storefront is their only storefront.

After all, if an online store is using non-privacy-respecting IT, my privacy that will be affected if I buy things through it. Non-commercial organizations selling memberships or tickets etc. may also use such storefronts. If I refuse to buy from someone’s online store on privacy grounds, then they will not unreasonably ask me what the alternative is. I’d really like to be able to recommend Freedombox as a fairly turnkey solution.