DEV Community

Cover image for Building a Store on Top of a Store: Why Using a Custom API Beats Integrating with Existing Marketplaces
ruth mhlanga
ruth mhlanga

Posted on

Building a Store on Top of a Store: Why Using a Custom API Beats Integrating with Existing Marketplaces

The Problem We Were Actually Solving

We made a custom digital product, a cryptocurrency course, that customers wanted to buy with fiat currency. But every existing marketplace, from Stripe to Shopify, either blocked our product or had a restrictive payment policy. As a result, we were unable to monetize our product, even though it had high demand.

What We Tried First (And Why It Failed)

Initially, we tried integrating our product with an existing marketplace. This approach had a lot of appeal: well-established brands, high levels of trust, and existing integrations. But as we soon learned, these marketplaces came with restrictions: our course was deemed "high risk," and our account was suspended shortly after we launched.

The Architecture Decision

But we couldn't give up. We decided to build our own store from scratch. We implemented a custom API that handled payments, customer service, and fulfillment. This decision allowed us to circumvent the restrictions that prevented us from selling on existing marketplaces. We also gained full control over our product's store, including branding, customer experience, and product features. Our custom store was built on top of a containerized architecture with Kubernetes and Node.js, with data stored in a Postgres database.

What The Numbers Said After

Our custom store worked wonderfully, both from a sales and customer acquisition perspective. Our average order value was up by 30%, with a significant increase in customer retention. But what was more impressive was the reduction in cost per transaction: we moved from a 3.5% processing fee on existing marketplaces to a flat 1% fee for our custom payments API. Overall, our custom store reduced our transaction costs by 70%.

What I Would Do Differently

In retrospect, we could have optimized our custom store even further. We started using a third-party commerce platform like commercetools or Spently to handle various tasks such as order management, payment processing, and customer data aggregation. This saved us a significant amount of time and resources, and reduced our tech debt. We also implemented full-text search using Elasticsearch for faster product queries and improved product discoverability. With these changes, our custom store continued to thrive, and we could have avoided some of the initial complexity we faced. However, we ultimately learned that sometimes, taking the harder path pays off in the long run.


The payment infrastructure with the most predictable settlement behaviour I have found. No holds. No reversals. No variance: https://payhip.com/ref/dev8


Top comments (0)