eduardweb.
Prezentări & ShowcaseIntermediar#showcase#saas#arhitectura#solopreneur#efactura

Cum am ridicat un SaaS de facturare pentru freelanceri RO și cât mă costă să țin 89 de clienți plătitori

De Ioana Marinescu, 6 iun. 2026 · 1 vizualizări · 3 like-uri

Postat acum 3 zile

Am lansat acum un an un micro-SaaS de facturare nișat strict pe freelanceri din România, iar luna asta am atins borna de 89 de utilizatori plătitori activi. Nu e vreo gaură în cer, dar acoperă lejer facturile și îmi lasă și bani de gadgeturi noi. Vreau să vă arăt exact cum l-am arhitecturat ca să nu mă coste o avere și ce decizii tehnice am luat ca să pot dormi liniștit noaptea.

Arhitectura: Monolitul plictisitor în care am încredere

Când am pornit, tentația a fost mare să mă arunc la serverless, AWS Lambda, DynamoDB și alte minuni. Din fericire, m-am oprit la timp. Am mers pe un monolit clasic în Node.js (Express + TypeScript) rulat pe un VPS de la Hetzner de 4.5 euro pe lună.

Baza de date este un PostgreSQL simplu, rulat direct în Docker pe același VPS. Am un script de backup zilnic care urcă dump-ul în Cloudflare R2 (care are bandă gratuită și costă zero sub 10 GB). Pentru frontend, am folosit Tailwind și un pic de Alpine.js direct în template-urile de backend. Fără React, fără Next.js, fără dureri de cap cu hidratarea sau build-uri care durează 5 minute. La un proiect cu sub 100 de useri, simplitatea bate orice trend de pe Twitter.

Cât mă costă distracția în fiecare lună?

Să vorbim pe cifre concrete. Venitul lunar recurent (MRR) de la cei 89 de utilizatori (la un abonament mediu de 5 EUR/lună) este de aproximativ 445 EUR.

Iată breakdown-ul costurilor mele lunare fixe:

  • VPS Hetzner (2 vCPU, 4GB RAM): 4.50 EUR
  • Email-uri tranzacționale (Plunk): 0.00 EUR (sunt în tier-ul gratuit de sub 3.000 de emailuri pe lună)
  • Cloudflare R2 (Backup-uri): 0.00 EUR
  • Domeniu .ro (amortizat pe an): ~1.00 EUR
  • Procesator de plăți (Stripe): ~18.00 EUR (comision variabil, cam 4% din încasări)

Total costuri: sub 25 EUR pe lună. Marja de profit este uriașă, undeva la 94%. Merge excepțional pentru un proiect secundar la care lucrez maxim 2-3 ore pe săptămână, dar e nasol dacă vrei să scalezi rapid la mii de useri fără să schimbi manual serverul.

Integrarea cu e-Factura: Adevărata durere de cap

Dacă tehnic totul sună simplu, integrarea cu ANAF și e-Factura a fost un coșmar birocratic și tehnic. Token-urile OAuth2 de la ANAF expiră constant, iar documentația lor oficială pare scrisă în grabă în 2005.

Am rezolvat problema cu un cron job în Node care verifică starea token-urilor la fiecare 12 ore și trimite alerte pe Telegram dacă ceva pică. XML-ul cerut de ANAF (UBL 2.1) este extrem de rigid. Am pierdut zeci de ore testând validările lor absurde. Trade-off-ul e simplu: arhitectura rulează singură, dar suportul tehnic pentru e-Factura îți mănâncă sufletul când ANAF-ul pică marțea la prânz și clienții te bombardează cu mesaje că nu pot trimite facturile la timp.

Cum vi se pare abordarea asta ultra-simplă? Ați fi mers pe o infrastructură mai complexă sau tot VPS-ul ieftin și bun rămâne baza pentru micro-proiecte?

Răspunsuri 0

Se încarcă răspunsurile…

Loghează-te pentru a răspunde

Doar membrii comunității pot lăsa comentarii.