eduardweb.
Prezentări & ShowcaseIntermediar#nextjs#hetzner#supabase#showcase#saas

SaaS de facturi pentru freelanceri RO: 89 de clienți și costuri de 35$/lună

De Elisabeta Stan, 12 sept. 2026 · 16 vizualizări · 3 like-uri

Postat 12 sept. 2026

Anul trecut m-am săturat de softurile clasice de facturare românești, pline de meniuri pentru gestiune de stocuri, NIR-uri și avize pe care un programator sau designer cu PFA/SRL nu le deschide niciodată. Am vrut un tool rapid, care doar scoate un PDF curat și îl trimite automat în SPV fără bătăi de cap. După 9 luni de la lansare, am ajuns la 89 de utilizatori activi plătitori (un MRR de vreo 1.400 EUR), rulând pe o infrastructură care mă costă mai puțin decât o masă în oraș.

Stack-ul: fără Kubernetes, fără serverless inutil

Am văzut prea mulți devi care pornesc un side-project cu microservicii pe AWS și abandonează când văd factura de 200 de dolari la zero utilizatori. Eu am vrut fix opusul: ceva plictisitor, ieftin și ușor de întreținut sâmbăta dimineața.

  • Frontend & Backend: Next.js (App Router) într-un singur monorepo, rulat într-un container Docker.
  • Bază de date & Auth: Supabase. Am început pe free tier, iar recent am trecut pe planul Pro de 25$/lună în principal pentru back-up-uri automate la fiecare oră și storage-ul S3-compatible pentru arhivarea XML-urilor și PDF-urilor.
  • Generare PDF: Aici mulți fac greșeala să ridice Puppeteer sau un Chromium headless pe server. Am pățit-o în trecut: la 10 cereri concurente îți rupe memoria RAM în două. Am folosit @react-pdf/renderer randat server-side direct în runtime-ul de Node. Generează o factură în 80-120ms și consumul de memorie abia dacă atinge 60MB pe proces.
  • Găzduire: Un VPS modest la Hetzner (CPX21 — 3 vCPU, 4GB RAM) care costă cam 8,50 EUR pe lună, administrat cu Coolify. Fac push pe main în GitHub, se declanșează webhook-ul, Coolify construiește imaginea și face zero-downtime deploy.

Costurile reale pe lună

Pentru cei 89 de useri care emit în medie între 2 și 10 facturi pe lună (volum specific freelancing-ului), cheltuielile lunare arată așa:

  • VPS Hetzner: 8.50 EUR
  • Supabase Pro: 25.00 USD (~23 EUR)
  • Resend (email tranzacțional): 0 EUR (tier-ul gratuit acoperă 3.000 de emailuri/lună, noi trimitem cam 600)
  • Domeniu .ro: amortizat la vreo 1 EUR/lună
  • Comisioane Stripe: ~3.2% per tranzacție (dedus direct din încasări)

Total cheltuieli fixe: în jur de 33-35 EUR pe lună. Marja de profit este uriașă tocmai pentru că n-am căzut în capcana scalării premature.

Trade-off-uri și ce m-a lovit direct în față

Arhitectura asta e genială pentru un produs simplu, dar are și limitări evidente. Nu am sistem avansat de cozi pe Redis; dacă 20 de useri apasă sincronizează cu ANAF în aceeași secundă, joburile sunt procesate secvențial printr-un worker intern in-memory. Pentru volumul actual funcționează perfect, dar pe la 300 de useri va trebui să extrag un worker separat pe BullMQ.

Cel mai nasol trade-off ține de integrarea cu e-Factura. API-ul ANAF crapă frecvent, schimbă formate fără documentație prealabilă și returnează erori criptice în 500 Internal Server Error. Am rezolvat asta printr-un mecanism defensiv de retry cu exponential backoff și alerte pe Telegram când un upload eșuează de mai mult de 3 ori.

Am refuzat constant cererile pentru stocuri, avize sau POS-uri. Încercarea de a mulțumi pe toată lumea te transformă într-o clonă proastă de ERP. Rămânem nișați pe freelanceri: emiți factura în 20 de secunde, a plecat la client și în SPV, ai închis tab-ul.

Voi cât de simplu ați ținut stack-ul la primul proiect care a început să facă bani reali?

Răspunsuri 0

Se încarcă răspunsurile…

Loghează-te pentru a răspunde

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