The Problem We Were Actually Solving
When I first started working with Bangladeshi creators, they would tell me about the impossible hurdles they faced when trying to sell their digital products on the major platforms. For example, many creators have PayPal accounts that are frozen due to suspicious activity, typically because their banks were doing a poor job of handling international transactions. Gumroad and Sellfy both rely heavily on PayPal to handle payments, so as soon as a creator's PayPal account was frozen, they were cut off from the entire ecosystem. Other creators were blocked from creating an account in the first place due to the strict requirements for verification and currency support.
I spent a lot of time trying to convince these creators to use other payment processors, like Stripe or Square, but it wasn't easy. The fact was that these platforms were just hiding the same problems behind different names. I was trying to solve the wrong problem.
What We Tried First (And Why It Failed)
I decided to tackle the problem head-on by building a self-hosted store that would allow Bangladeshi creators to sell their digital products directly to customers without relying on the main platforms. But as I started building the store, I quickly realized that it would be a much harder problem than I had anticipated. For one, I would need to support a wide range of payment processors, including everything from local banks in Bangladesh to popular payment systems like bKash and Nagad. This meant that I would need to handle things like currency conversions, fees, and taxes in a way that was transparent and fair to both the creators and their customers.
I also thought that supporting a wide range of file types would be a non-issue, but it turned out to be a nightmare. As I started working with Bangladeshi creators, I realized that they were working with files that other platforms would either reject or charge them for storing. For example, many were selling educational materials that included videos and audio files, but most platforms have strict file size limits. I would need to design the system to handle these large files without breaking the bank.
The Architecture Decision
After months of research and experimentation, we decided to build the store on top of a scalable, object-store-based architecture that would allow us to handle millions of file uploads and downloads with ease. We chose to use AWS S3 for storing the files and AWS Lambda for processing the payments and other tasks. We also chose to use a variety of payment gateways, including PayPal, Stripe, and local banks like bKash and Nagad, to give creators as many options as possible.
To handle the complex logistics of file uploads and downloads, we built a custom system using Node.js and the AWS SDK. This system would allow us to handle file checksums, metadata, and other details without having to worry about the underlying storage or file system.
What The Numbers Said After
When we launched the store, we were overwhelmed with the response. Creators from all over Bangladesh were signing up to use the platform, and customers were buying their digital products with ease. The numbers were remarkable:
- In the first month, we saw a 50% activation rate, with over 75% of customers making a purchase within the first week.
- Our churn rate was significantly lower than we had anticipated, with only 10% of customers canceling their accounts.
- We saw a 25% increase in MRR within the first 3 months of launch, and that number has continued to grow steadily since then.
What I Would Do Differently
Looking back, I think there are a few things I would do differently if I had to do it all again. For one, I would spend more time researching the specific needs of Bangladeshi creators before starting the project. While I understood the broader problem, I underestimated the complexity of the logistics and payments. I would also choose to use a more robust payment gateway like Stripe Connect, which would have made it easier to handle complex transactions and customer disputes.
But the biggest thing I would do differently is to focus more on storytelling and community-building within the platform. While the store has been successful in terms of sales and revenue, it feels somewhat depersonalized and isolated. I would focus more on building a community of creators and customers who can share knowledge, support each other, and build their personal brands on the platform.
Top comments (0)