Eigen oplevering · e-commerce backend · notificatiesysteem

Realtime voorraad- en notificatiesysteem voor een exclusief kledingmerk

Bij piekbelasting — denk aan een product drop met honderden gelijktijdige aankopen — moeten voorraadniveaus altijd kloppen. M&E Care & IT bouwde een transactioneel voorraadbeheer, een GDPR-conform wachtlijstsysteem en geautomatiseerde out-of-stock notificaties via Resend — als één coherente backend-architectuur voor een kledingmerk dat zichzelf presenteert als kunst.

Wij bouwden vanuit Duffel (Antwerpen) voor een exclusief kledingmerk — gepresenteerd en getoond als kunst — een realtime voorraad- en notificatiesysteem dat race conditions architectureel uitsluit, GDPR-conforme wachtlijsten beheert en klanten automatisch informeert zodra uitverkochte stukken terugkeren — zonder handmatige tussenkomst, zonder dubbele mails.

Transactie-integriteit

100%

Nul race conditions door atomaire Prisma-transacties bij alle voorraadmutaties.

Notificatiebetrouwbaarheid

0 duplicaten

Uitschrijving na eerste verzending garandeert dat klanten nooit dubbel worden gemaild.

GDPR-compliance

Volledig

Cryptografische uitschrijftokens en automatische dataverwijdering conform AVG.

Van probleem naar architectuur

Uitdaging

Beperkte oplages. Hoge piekbelasting.

Een exclusief kledingmerk — gepresenteerd en getoond als kunst — verkoopt beperkte collectiestukken waarbij elk exemplaar telt. Bij een product drop — een gepland moment waarop schaarse limited edition stukken beschikbaar komen — plaatsen honderden klanten tegelijkertijd een bestelling. De klassieke lees-en-schrijf-aanpak faalt in dit scenario: twee klanten lezen allebei dat er nog één exemplaar beschikbaar is en plaatsen allebei een order.

Bovendien wilden klanten zich kunnen inschrijven voor notificaties bij uitverkochte collectiestukken — een functionaliteit die veilig, schaalbaar en volledig geautomatiseerd moest verlopen, conform de Belgische privacywetgeving (AVG/GDPR).

Context

Beperkte collectiestukken, hoge verwachtingen, privacygevoelige klantdata en internationale klanten met meertalige communicatiebehoeften.

Analyse

Vijf structurele tekortkomingen

Race conditions bij gelijktijdige bestellingen: twee klanten konden hetzelfde product kopen.

Geen geautomatiseerd wachtlijst- en notificatiesysteem bij uitverkochte stukken.

GDPR-conforme uitschrijfstroom ontbrak: klanten konden zich niet eenvoudig afmelden.

Risico op dubbele notificaties bij herhaaldelijke voorraadfluctuaties.

Geen audittrail of logging van verzonden mails voor naleving en foutopsporing.

Aanpak

Vier lagen van integriteit tot notificatie

De oplossing is opgebouwd als een gelaagde backend-architectuur waarbij elke laag één verantwoordelijkheid heeft en fouten in een bovenliggende laag nooit de integriteit van een lagere laag in gevaar brengen.

01

Atomaire transactielaag

Elke voorraadmutatie en ordercreatie worden als één transactie uitgevoerd via Prisma's transaction API.

02

Wachtlijstbeheer

Inschrijvingen worden opgeslagen met een uniek GDPR-token voor eenmalige uitschrijflinks.

03

Notificatie-engine

Resend verzendt geautomatiseerde mails bij voorraadaanvulling met granulaire logging per verzending.

04

Deduplicatie & cleanup

Na verzending worden inschrijvingen onmiddellijk verwijderd om dubbele notificaties structureel uit te sluiten.

Technische architectuur

Technische kern

Waarom atomaire transacties het fundament zijn

De meeste race conditions ontstaan omdat lezen en schrijven twee losse operaties zijn. Prisma’s transaction API bundelt ze: er is geen toestand mogelijk waarbij de voorraad al verlaagd is maar de order nog niet bestaat.

Prisma Transaction API

Bundelt lees- en schrijfoperaties in één atomaire eenheid. Geen inconsistente toestand mogelijk: of alles slaagt, of alles rolt terug.

Prisma transacties documentatie

PostgreSQL row-level locking

Combineert met Prisma-transacties voor maximale concurrency-controle bij product drops met hoge piekbelasting.

Resend e-mail API

Native TypeScript/Next.js integratie met ingebouwde retry-logica en per-verzending logging voor volledige traceerbaarheid.

Resend documentatie

Cryptografische uitschrijftokens

UUID v4 tokens gekoppeld aan e-mail en product. Eenmalig geldig en automatisch verwijderd na gebruik — conform GDPR.

Vergelijking

Zonder vs. met dit systeem

Race conditions

Zonder

Twee klanten kopen hetzelfde last-item tegelijk.

Met

Atomaire transactie: één slaagt, één ontvangt een melding.

Wachtlijst

Zonder

Handmatig beheer via spreadsheet of e-mail.

Met

Geautomatiseerd met GDPR-uitschrijflink per inschrijving.

Notificaties

Zonder

Manueel versturen of geen herberichting bij terugkeer.

Met

Automatisch verzonden bij voorraadaanvulling via Resend.

Dubbele mails

Zonder

Geen bescherming tegen herhaaldelijke verzending.

Met

Inschrijving verwijderd na eerste notificatie.

Privacy

Zonder

E-mailadressen onbepaald bewaard zonder uitschrijfoptie.

Met

Token-gebaseerde uitschrijf + automatische dataverwijdering.

Resultaat

Resultaat

Vijf meetbare verbeteringen

Race conditions volledig geëlimineerd: nul dubbele bestellingen bij product drops.

Geautomatiseerde notificaties verzonden zonder handmatige tussenkomst.

GDPR-conforme wachtlijst met eenmalige uitschrijftokens volledig operationeel.

Dubbele notificaties structureel uitgesloten door directe post-verzending cleanup.

Volledige audittrail per verzending beschikbaar via Resend logging.

E-commerce warehouse en voorraadlogistiek

Architectuurprincipe

Integriteit door ontwerp

Race conditions oplossen met optimistic locking of application-level checks is een doekje voor het bloeden. De enige robuuste oplossing is databaseniveau-integriteit: transacties die slagen of volledig terugdraaien, constraints die dubbele data structureel voorkomen.

Dat is de aanpak die we hier gevolgd hebben — en die bij honderden gesimuleerde gelijktijdige verzoeken geen enkele inconsistentie opleverde.

Principe

Wat de database garandeert, hoeft de applicatielaag niet te bewaken.

Privacy & compliance

GDPR by design, niet als bijgedachte

Privacy is niet achteraf toegevoegd als checkbox — het zit in de datamodellering, de uitschrijfflow en de audittrail ingebakken, conform de vereisten van de Gegevensbeschermingsautoriteit.

Versleutelde opslag

E-mailadressen worden versleuteld opgeslagen en uitsluitend gebruikt voor notificatiedoeleinden.

Uitschrijflinks

Elke notificatiemail bevat een unieke, beveiligde uitschrijflink waarmee de inschrijving direct verwijderd wordt.

Volledige audittrail

Inschrijvingen, verzonden mails en uitschrijvingen worden gelogd voor transparantie en compliance-controle.

Takeaway

Schaalbaar begint bij de juiste fundamenten — transacties, constraints en integriteitsgaranties op databaseniveau.

Applicatielaag-checks zijn een lapmiddel. Wie schaalbaarheid en correctheid serieus neemt, verankert die in het datamodel — niet in if-statements die toevallig snel genoeg draaien.

Veelgestelde vragen over voorraadbeheer en notificatiesystemen

Wat zijn race conditions en hoe worden ze voorkomen in een e-commerce systeem?
Bij gelijktijdige aankopen kunnen twee klanten tegelijkertijd lezen dat er nog één exemplaar beschikbaar is en allebei een bestelling plaatsen. Dit is een race condition. Prisma's transaction API lost dit op door lees- en schrijfoperaties als één atomaire eenheid te behandelen.
Hoe verschilt een Prisma-transactie van een gewone databaseoperatie?
Een gewone databaseoperatie is een losse schrijf of lees zonder garantie op consistentie met andere operaties. Een Prisma-transactie bundelt meerdere operaties zodat ze allemaal slagen of allemaal falen. Als de voorraadupdate slaagt maar de ordercreatie mislukt, rolt de volledige transactie terug — de voorraad blijft consistent met de orderhistoriek.
Waarom Resend en niet een eigen SMTP-server of SendGrid?
Resend is gebouwd voor ontwikkelaars en integreert native met Next.js en TypeScript. De deliverability is hoog, de API is eenvoudig, en de retry-logica is ingebouwd. Voor een systeem waarbij elke niet-geleverde notificatie een gemiste verkoop betekent, is betrouwbaarheid van de e-mailprovider een kritische factor. Resend biedt ook granulaire logging per verzending, wat het monitoren van mislukte mails eenvoudig maakt.
Hoe werkt de GDPR-conforme uitschrijflink?
Bij elke inschrijving wordt een uniek, cryptografisch gegenereerd token opgeslagen in de database, gekoppeld aan de e-mail en het product. De uitschrijflink in de notificatiemail bevat dit token. Wanneer een klant op de link klikt, wordt de inschrijving direct verwijderd zonder dat er een account of sessie vereist is. Het token is eenmalig geldig en vervalt automatisch na gebruik.
Kunnen notificaties dubbel verzonden worden als een product herhaaldelijk van stock gaat?
Nee. Na succesvolle verzending van een notificatie wordt de inschrijving onmiddellijk uit de database verwijderd. Een nieuwe inschrijving is vereist voor een volgende notificatiecyclus. Dit garandeert dat klanten maximaal één notificatie ontvangen per inschrijfcyclus, ongeacht hoeveel keer de voorraad fluctueert.
Is dit systeem ook toepasbaar buiten kledingmerken met limited editions?
Absoluut. Het onderliggende patroon — transactioneel voorraadbeheer, wachtlijsten met integriteitsgaranties en geautomatiseerde notificaties — is universeel toepasbaar in elke e-commerce context met beperkte voorraad: fashion limited editions, evenementtickets, seizoensproducten of exclusieve diensten. De architectuur is ontworpen om uitgebreid te worden naar meerdere productcategorieën of markten.
Werkt dit systeem ook samen met een bestaande webshop zoals Shopify of WooCommerce?
Ja, het notificatie- en voorraadbeheerpatroon is integreerbaar met bestaande platformen via webhooks of API-koppelingen. Bij Shopify kan een webhook de voorraadaanvulling signaleren waarna onze logica de wachtlijst afwerkt. Bij WooCommerce of een eigen Next.js-webshop is directe database-integratie via Prisma de meest robuuste aanpak. De juiste integratielaag hangt af van het platform en de gewenste mate van controle — we bekijken dit altijd samen met de klant.
Mitch

Worstelt uw e-commerce platform met voorraadintegriteit of ontbreekt een geautomatiseerd notificatiesysteem?

Plan een vrijblijvende digitale kennismaking met Mitch en ontdek wat wij voor jouw organisatie kunnen betekenen.