Menu

How I run a multilingual eSIM store from a home server (Medusa v2 + Next.js)
📰

How I run a multilingual eSIM store from a home server (Medusa v2 + Next.js)

DEV Community: nextjs·Ha Nguyen·7 days ago
#GUCN4ZQR
#devtonextjs#devto#dev#vietnamese#store
Reading 0:00
15s threshold

I'm a Vietnamese software engineer who has lived in Tokyo since 2013. On the side, I run shibaSIM, a small store selling travel eSIMs and SIM plans for foreigners living in Japan. Here is how it's built and what I've learned so far.

The stack

Backend: Medusa v2 (headless commerce)

Storefront: Next.js App Router

Database: PostgreSQL

Hosting: one Linux machine at home, reached through Tailscale

Payments: Stripe for cards, plus a QR bank-transfer flow for Vietnamese customers

Medusa gives me carts, orders, promotions and an admin UI out of the box. Everything specific to eSIM, like QR delivery and multilingual landing pages, I build on top.

Lessons so far

1. Localization is more than translation. The store has pages in Vietnamese, English, Nepali, Sinhala, Bengali, Indonesian, German and more. Each community searches with different words and worries about different things, so each locale gets content written for it, not a translated copy.

2. The delivery channel matters.…

Continue reading — create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.