Skip to main content
Vissza a Blogra
2026. 06. 23.
6 perc olvasás
1195 szó
Cikk

AI-vel Épített Webshop: extrahasznaltruha.hu — Next.js + PostgreSQL + Stripe [Esettanulmány]

Hogyan épül egy B2B/B2C webshop Next.js-sel, PostgreSQL-lel és Stripe-pal 14 nap alatt? extrahasznaltruha.hu esettanulmány: architektúra, teljesítmény, üzleti eredmények.

Lényeges tanulságok

  • 1Next.js ISR és SSR kombinációja lehetővé tette a gyors oldalbetöltést nagy termékkatogóriákban is
  • 2PostgreSQL ACID tranzakciók biztosítják a B2B rendelések és készletkezelés adatintegritását
  • 3Stripe webhook alapú fizetési folyamat csökkentette az elveszett tranzakciók arányát közel nullára
  • 4Egyetlen kódalbap kiszolgálja a B2B nagykereket és a B2C kiskereskedelmet, szerepkör alapú árazással
  • 590+ Lighthouse pontszám elérése 500+ terméknél is lehetséges optimalizált képkezeléssel és DB lekérdezésekkel

AiSolve Team

AI Solutions Expert

AI-vel Épített Webshop: extrahasznaltruha.hu — Next.js + PostgreSQL + Stripe [Esettanulmány]

TL;DR — Gyors összefoglaló

  • Ügyfél: extrahasznaltruha.hu — B2B és B2C használt ruha kereskedés
  • Stack: Next.js 15 + React 19 + PostgreSQL + Stripe + Tailwind CSS 4
  • Fejlesztési idő: 14 nap (AiSolve.me garancia teljesítve)
  • Lighthouse pontszám: 94 Performance / 98 Accessibility / 100 Best Practices / 97 SEO
  • Eredmény: 3 hónappal launch után +62% organikus forgalom, 23% kosárelhagyás csökkentés

Projekt háttér: Ki és miért?

Az extrahasznaltruha.hu egy Nyíregyháza-közeli használt ruha kereskedő vállalkozás, amely egyidejűleg kiszolgál B2B nagykereskedői (ruhaipari feldolgozók, secondhand üzletek, export partnerek) és B2C kiskereskedelmi (végfelhasználó vásárlók) szegmenst. A két üzleti modell párhuzamos kiszolgálása rendkívüli architektúrális kihívást jelent.

Az ügyfél korábbi megoldása egy elavult WordPress + WooCommerce alapú rendszer volt, amely egyre lassabban töltött be, nem kezelte megfelelően a B2B árazást, és a Stripe integrációja megbízhatatlan volt — fizetési visszaigazolások rendszeresen elmaradtak. Az új webshoppal szemben három alapvető elvárás fogalmazódott meg:

  • Nagy készlet (500+ termék) kezelése villámgyors betöltéssel
  • B2B és B2C ügyfelek egyidejű kiszolgálása egyetlen platformon, különböző árazással
  • Megbízható, webhook-alapú Stripe fizetési folyamat, automatikus B2B számlázással

Kulcsmutatók a launch után

94
Lighthouse Performance
14 nap
Fejlesztési idő
500+
Kezelt termék
Stripe
Webhook integráció

Architektúra döntések részletesen

Miért Next.js? — SSR és ISR kombinációja

A webshop terméklapjai ISR-rel (Incremental Static Regeneration) épülnek fel: az oldal statikusan kiszolgált, de 60 másodpercenként újragenerálódik a háttérben, ha megváltozott a készlet. Ez azt jelenti, hogy a felhasználó mindig egy előre generált, azonnal betöltő oldalt kap — nincs várakozás a szerver-oldali renderelésre.

A kosár, a fizetési folyamat és a B2B felület valós idejű, SSR-alapú renderelést használ, hogy az árak és a készletszint mindig naprakész legyen. A Next.js App Router lehetővé tette, hogy ezt a két megközelítést egységes kódbázisban, route-szinten válasszuk szét.

Technikai döntés: ISR revalidate idő

A 60 másodperces revalidate idő tudatos kompromisszum: elegendően rövid ahhoz, hogy a készletszint naprakész legyen, de elegendően hosszú, hogy a CDN cache hatékonyan működjön és a szerver terhelése minimális maradjon. Flash sale esetén a revalidate API endpoint manuálisan is triggerelhető.

Miért PostgreSQL? — ACID tranzakciók és komplex lekérdezések

A B2B rendelések komplex folyamatokat igényelnek: egy rendelés leadásakor egyszerre kell foglalni a készletet, létrehozni a rendelési rekordot, elindítani a számlázást és értesíteni a raktárt. Ha bármelyik lépés meghibásodik, az egész tranzakciót vissza kell vonni — ez PostgreSQL ACID tulajdonságát igényli.

A NoSQL alternatívák (pl. MongoDB) nem kínálnak natív multi-document tranzakciókat ugyanolyan megbízhatósággal. PostgreSQL-lel Prisma ORM-et használtunk, amely typesafe lekérdezéseket és automatikus migrációt biztosított, drámaian lerövidítve a fejlesztési időt.

Miért Stripe? — Webhook kezelés és B2B számlázás

A korábbi rendszer problémája az volt, hogy a fizetési visszaigazolást a redirect URL-en keresztül kezelte — ha a felhasználó bezárta a böngészőt a redirect előtt, a fizetés elveszett az adatbázisban. Stripe webhook alapú megközelítéssel ez a probléma teljesen megszűnik: a Stripe közvetlenül értesíti a szervert minden fizetési eseményről, függetlenül a kliens viselkedésétől.

A B2B ügyfeleknek automatikus PDF számlát generálunk Stripe Invoicing segítségével, amely tartalmazza az EU-s adószámot és a fordított adózású (reverse charge) jelölést — ami B2B export esetén kötelező.

B2B vs. B2C logika egyetlen rendszerben

Az egyik legnagyobb architektúrális kihívás az volt, hogyan szolgáljon ki egyetlen Next.js alkalmazás két teljesen különböző üzleti modellt. A megoldás: szerepkör-alapú (role-based) middleware és Prisma séma szintű elkülönítés.

FunkcióB2C (kisker)B2B (nagyker)
ÁrazásFogyasztói ár (bruttó)Nagykereskedelmi ár (nettó) + ÁFA
Minimális rendelésNincs50 kg / rendelés
Fizetési módKártya, PayPalÁtutalás, számla utánfizetés (hitelkeret)
SzámlaEgyszerűsített számlaSzámla EU adószámmal, reverse charge
RegisztrációEmail + jelszóManuális jóváhagyás + cégadatok ellenőrzése

A Next.js middleware réteg az első kérés pillanatában eldönti, milyen szerepkörrel rendelkezik a felhasználó, és ennek megfelelően irányítja a kérést a megfelelő szerver komponenshez. Ez azt jelenti, hogy ugyanaz az URL (/termekek/xyz) B2C látogatónak fogyasztói árat, bejelentkezett B2B partnernek nagykereskedelmi árat mutat — egy oldal renderelési cikluson belül.

Teljesítmény optimalizálás

Képkezelés: Next.js Image + WebP konverzió

Használt ruha webshopnál a termékképek általában nagy felbontású, szabályozatlan minőségű fotók. A Next.js Image komponens automatikusan konvertál WebP formátumba, méretezi a képet az adott viewport-hoz, és blur placeholder-t generál a lazy loading során — a felhasználó soha nem lát „üres" helyet, csak egy homályos előnézetet, amíg a kép betölt.

Adatbázis lekérdezés optimalizálás

A terméklistázó oldal kezdetben N+1 lekérdezési problémát okozott: minden termékhez külön lekérdezés indult a képek és kategóriák betöltéséhez. Prisma include és select direktívákkal egyetlen optimalizált JOIN lekérdezéssé alakítottuk, ami 87%-kal csökkentette az adatbázis terhelést listázásnál.

Keresés és szűrés: szerver oldali gyorsítótár

A termékkeresés és kategóriaszűrés eredményeit Redis-alapú szerver oldali cache-szel tároljuk 5 percig. A leggyakoribb keresési kombinációk (pl. „S méretű, jó állapotú kabát") azonnal kiszolgálódnak a cache-ből, az adatbázist megkerülve.

Biztonság

Figyelem: Webshopnál a biztonság nem opcionális

Egy fizetési folyamatot kezelő webshopnál egyetlen biztonsági rés elegendő az összes ügyféladat vagy pénzügyi adat kompromittálásához. A következő biztonsági rétegeket minden AiSolve.me webshopnál implementáljuk alapból.

CSRF védelem: Minden állapotmódosító API végpont (kosárba rakás, rendelés leadása, felhasználói adatok módosítása) CSRF token ellenőrzést alkalmaz. A Next.js szerver akcióin belül a same-site cookie policy és az Origin header validálás kettős védelmet biztosít.

Stripe webhook signing: A Stripe által küldött webhookokat titkos aláíráskulccsal ellenőrizzük minden fogadáskor. Ez megakadályozza, hogy valaki hamis webhook-okat küldjön a szerverünkre, ezzel manipulálva a rendelési státuszokat.

SQL injection védelem: Prisma ORM parameterized query-t használ alapból — nem lehetséges nyers SQL string összefűzés, ami az SQL injection legelterjedtebb forrása. Minden felhasználói bemenet Zod sémával is validálva van szerver oldalon, mielőtt az adatbázishoz érne.

Üzleti eredmények — 3 hónappal a launch után

+62%
Organikus keresési forgalom növekedés
-23%
Kosárelhagyási arány csökkentés
0
Elveszett Stripe tranzakció (régen: heti 3-5)
+41%
B2B partner regisztráció az első negyedévben

Ügyfél visszajelzés

„Az előző rendszerünkkel heti rendszerességgel volt gondunk elveszett rendelésekkel és lassú oldalbetöltéssel. Az új webshop az első naptól stabilan működik. A B2B partnereinktől is pozitív visszajelzéseket kapunk — az automatikus számlázás rengeteg manuális munkát spórolt meg." — extrahasznaltruha.hu tulajdonos

Webshopot tervezel? Kérj ingyenes konzultációt!

Meséld el az üzleti modelled és a kihívásaidat — 24 órán belül személyre szabott architektúra javaslattal és árajánlattal válaszolunk. 0 Ft előleg, 14 napos szállítási garancia, 90+ Lighthouse.

Konzultációt kérek →

Készen állsz a saját weboldaladra?

Ingyenes konzultáció során átbeszéljük, hogyan segíthetünk vállalkozásodnak növekedni egy modern, gyors és konverzióoptimalizált weboldallal. 14 nap alatt kész, 0 Ft induló költséggel.

AiSolve Team

AI Solutions Expert

Szakértőnk segít az AI technológiák gyakorlati alkalmazásában és az üzleti folyamatok automatizálásában.

Gyakran Ismételt Kérdések

Miért nem WordPress + WooCommerce, ha az olcsóbb?

WordPress WooCommerce alapon nehéz 90+ Lighthouse pontszámot elérni, különösen 500+ terméknél és komplex B2B logikával. A PHP alapú renderelés alapvetően lassabb a Next.js szerver komponenseinél, és a WooCommerce plugin ökoszisztéma biztonsági szempontból is kockázatosabb. Az extrahasznaltruha.hu esetén a teljesítmény és a B2B funkcionalitás megkövetelte a modern stack-et.

Hogyan kezelitek a készletkezelést valós időben?

A készletszint PostgreSQL-ben tárolódik, és minden rendelés leadásakor ACID tranzakcióban frissül. Az ISR revalidation 60 másodpercenként frissíti a termékoldalakat. Ha egy termék elfogy, az oldal a következő revalidation ciklusban automatikusan Elfogyott állapotba kerül. Kritikus készletszint esetén valós idejű SSR-re váltunk a termékoldalon.

Tudtok hasonló webshopot fejleszteni más kategóriában is?

Igen. A Next.js + PostgreSQL + Stripe stack-et bármilyen webshop típushoz alkalmazzuk: élelmiszer, szolgáltatás előfizetés, B2B alapanyag kereskedelem, digitális termékek és fizikai áruk egyaránt. A B2B/B2C dual-mode működés általánosítható megoldás, amelyet szükség szerint testre szabunk.

Melyik AiSolve.me csomag szükséges egy ilyen webshophoz?

Webshop fejlesztés a Scale Premium (72 000 Ft/hó) csomag keretein belül valósítható meg, amely tartalmaz e-commerce integrációt, Stripe fizetési rendszert, B2B logikát és havi teljesítményjelentést. Az induló díj 0 Ft, a 14 napos szállítási garancia erre a csomagra is vonatkozik.

Kapcsolódó Cikkek