DEV Community

Cover image for Selling Products Online Should Not Require a US Address
Lillian Dube
Lillian Dube

Posted on

Selling Products Online Should Not Require a US Address

The Problem We Were Actually Solving

I still remember the day I realized that our e-commerce platform was not as global as we thought it was. We had creators from all over the world trying to sell their products online, but they were hitting a brick wall when it came to payment processing. It turned out that most payment gateways required a US address to set up an account, which was a major problem for our creators in Tanzania, Nigeria, and other countries. I knew we had to find a solution that would allow our creators to sell their products online regardless of their location.

What We Tried First (And Why It Failed)

Our first attempt at solving this problem was to use a popular payment gateway that claimed to support international transactions. We integrated their API into our platform, but we quickly ran into issues. The payment gateway would often flag transactions from certain countries as high-risk, which would result in a high decline rate for our creators. We also encountered issues with currency conversion, which would result in our creators losing money on every transaction. After weeks of trying to work with the payment gateway's support team, we realized that their solution was not going to work for us. We were getting error messages like payment_method_not_supported and currency_not_supported, which were causing frustration for our creators.

The Architecture Decision

We decided to take a different approach and use a combination of blockchain-based payment systems and local payment gateways to process transactions. We integrated with a blockchain-based system that allowed us to convert fiat currency to cryptocurrency, which could then be transferred to our creators' digital wallets. We also partnered with local payment gateways in each country to allow our creators to receive payments in their local currency. This approach required us to build a more complex system, but it gave us the flexibility to support creators from all over the world. We used tools like Stripe and Coinbase to handle the payment processing, and we built our own system to handle the currency conversion and wallet management.

What The Numbers Said After

After implementing our new system, we saw a significant increase in successful transactions for our creators. Our decline rate dropped from 30% to less than 5%, and our creators were able to receive payments in their local currency without having to worry about currency conversion fees. We also saw an increase in the number of creators signing up for our platform, which was a direct result of our ability to support international transactions. Our metrics showed that our creators were able to earn an average of 25% more per month after we implemented the new system, which was a huge win for us. We were able to measure the success of our system using metrics like transaction success rate, creator earnings, and user engagement.

What I Would Do Differently

In retrospect, I would have liked to have explored the option of using a decentralized payment system from the start. While our current system is working well, I think we could have avoided some of the headaches we experienced with the traditional payment gateways if we had gone with a decentralized approach from the beginning. I would also have liked to have done more research on the regulatory environment in each country before launching our platform. We encountered some unexpected regulatory hurdles in certain countries, which required us to make some last-minute changes to our system. Overall, however, I am proud of what we were able to accomplish, and I think our system is a testament to the power of creative problem-solving in engineering. I would advise other engineers to consider the global implications of their system design and to think carefully about the tradeoffs they are making when it comes to payment processing and currency conversion.

Top comments (0)