Piattaforma e-commerce B2B EMS Commerce che mostra catalogo prodotti con 1000+ materiali solari ed elettrici, sincronizzazione inventario real-time con ERP, calcolatore prezzi dinamico con visualizzazione IVA basata su ruolo, carrello acquisti persistente multi-dispositivo, e dashboard performance caching Redis con tempo risposta <100ms
E-Commerce & Integrazione

EMS Commerce

Piattaforma E-Commerce B2B

<100ms
Tempo Risposta
99.9%
Uptime
1000+
Prodotti
Multi-device
Sync Carrello

Panoramica

Il Problema

Apex Invest BF distribuisce materiali solari ed elettrici a rivenditori e grossisti in Burkina Faso. Avevano un gestionale EMS funzionante per inventario, clienti e ordini interni, ma nessun canale di vendita online. I clienti B2B dovevano chiamare o mandare email per vedere catalogo e prezzi, poi aspettare che qualcuno processasse l'ordine manualmente. Con centinaia di prodotti, tre valute e una logica prezzi complessa (ricarichi settore, IVA per articolo, sconti personalizzati per cliente), il processo era lento e limitava la crescita.

Il problema tecnico centrale non era costruire un e-commerce, ma integrarlo con l'ERP senza duplicare i dati. Articoli, inventario e clienti esistevano già nel gestionale: una copia separata avrebbe creato problemi di sincronizzazione immediati. Serviva un sistema che leggesse gli stessi dati ma applicasse una logica prezzi diversa in base al ruolo dell'utente.

La Soluzione

Ho sviluppato un e-commerce B2B custom in Next.js 16 con React Server Components, completamente integrato con il backend Express del gestionale EMS. Il frontend usa Better Auth con un sistema di approvazione a tre livelli: i consumatori sono auto-approvati, i rivenditori e grossisti richiedono approvazione admin prima di vedere i listini. Zustand gestisce lo stato del carrello con persistenza multi-dispositivo.

La logica prezzi era la parte più complessa: ogni prezzo finale dipende da ricarico settore configurabile, IVA dell'articolo, sconti assegnati al cliente e ruolo utente (consumatore vede IVA inclusa, rivenditore la vede esclusa). Ho costruito un motore di calcolo che applica queste regole in sequenza, con validazione real-time nel carrello.

Per la comunicazione sicura tra Next.js e il backend Express ho creato un proxy API che intercetta ogni richiesta, estrae il cookie HttpOnly di sessione e lo inoltra al server. I cookie HttpOnly non sono accessibili da JavaScript lato client: il proxy risolve questo problema garantendo che il token di sessione non venga mai esposto.

Il Risultato

E-commerce B2B in produzione con 1000+ prodotti e varianti, tempo di risposta del catalogo sotto i 100ms grazie a caching multi-livello con Redis, 99.9% di uptime e carrello persistente sincronizzato tra dispositivi.

Funzionalità Chiave

  • Integrazione zero-duplicazione con ERP EMS: prodotti, inventario, clienti condivisi (nessun problema sync)
  • Sync carrello multi-dispositivo: aggiungi su mobile, vedi su desktop (sessione Better Auth persistente)
  • Sistema prezzi lato server: ricarico settore + IVA + sconti personalizzati calcolati in base al ruolo utente
  • Tempo risposta <100ms per catalogo: caching distribuito Redis + cache request-scoped

Tecnologie Utilizzate

Next.jsE-CommerceMulti-tenantIntegrazione ERP