How do I correctly build a global marketplace? (Payment Gateways, Taxes, Legal and Refunds)
Hey everybody,
I am a junior dev building a marketplace as a side project/learning experience, it is nothing revolutionary, just a marketplace where brands can sell goods and I take a cut from their sales for offering the service.
I would like to release it eventually (first in my home country so im not too concerned about these questions, but eventually everywhere, so I want to establish a roadmap), with that in mind I have a few questions that I figure some of you might know a thing or two about:
1. What kind of payment gateways should I use?
I have already configured Stripe and Braintree (for PayPal support), however I want to tackle most international markets, specially Latin America where many do not have international credit cards, how can I ensure that most people can buy through my platform? What are the best tools?
2. How do I manage different currencies?
Imagine a brazilian buyer wants to buy a product that is in $, should I convert prices through established rates or should I allow the sellers to add their own prices for each currency they want? (what would happen if they dont specify a certain currency?). How do I take cuts from different currencies? Do I need bank accounts in each currency and establish businesses in each country?
3. Refunds
What happens if someone wants a refund or a partial refund? What if the customer pays in dollars but his card is european and the market rate changes, how should that refund be processed? does the gateway take care of that or must it be done manually?
4. Taxes
How do I correctly charge and set taxes? If the seller is from one country and offers a certain product, the buyer can be from the same country and state, different state, different country or different continent, how do taxes vary in those cases and how are they set depending on the type of product?
5. Legal ramifications?
What happens if someone buys something and the seller does not deliver it? Or if he does deliver it but the seller says it never arrived? Or they deliver a different product? What should I do? Can I be made legally responsible for these situations?
6. Any other topics I should consider?
I know this is a really big undertaking but it motivates me, so please dont shoot me down, just looking for friendly advice (mentorship would be great!) on how to best approach this!
Thanks a lot!
Technical Information: Im using Laravel for the backend side with some Vue sprinkled where needed (it is not a SPA). I am using Turbolinks and hope to release Android and iOS apps eventually using the Turbolinks adapters.
Please or to participate in this conversation.