Multistore per NexoPOS
Il modulo Nexo MultiStore ti consente di gestire più store all’interno di una singola installazione di NexoPOS, tutti supportati da un unico database condiviso. Ogni store beneficia di quasi tutte le funzionalità disponibili nella modalità a singolo store, rimanendo però completamente isolato—garantendo che dati, operazioni e configurazioni non si sovrappongano tra gli store.
Installazione
Questo è un modulo NexoPOS e pertanto deve essere installato dalla dashboard. Una volta installato, assicurati di abilitare il modulo.
Dashboard
Una volta abilitato il modulo MultiStore, il layout della dashboard cambierà, mostrando una nuova dashboard principale e nuovi controlli.
Come accennato in precedenza, ogni negozio ha i propri componenti che includono:
- Prodotti,
- Categorie dei prodotti
- Clienti, Gruppi di clienti
- Unità e gruppi di unità
- Fornitori, Appalti
- Impostazioni,
- Ordini
- Categoria delle spese e spese
- Notifiche
Come creare un sottonegozio
Mentre sei nella dashboard, puoi fare clic sia sul pop-up del collegamento al negozio sia sul menu dei negozi nella barra laterale.
Questo ti porterà all’elenco dei negozi, dove puoi creare, gestire o eliminare i negozi. Fai clic sul pulsante “+” della tabella per creare un nuovo negozio.
Questo ti porta a una nuova schermata in cui puoi inserire le informazioni del negozio, ad esempio:
- Nome del negozio
- Stato (durante la creazione dello stato è sempre “building”)
- Salva immagine
- Descrizione
Quando fai clic su „Salva“, verrai reindirizzato all’elenco dei negozi e il sottonegozio viene creato in background quando „Workers“ (oppure le code) sono configurati correttamente. Dopo la creazione, dovresti ricevere una notifica che indica che il negozio è pronto per essere utilizzato.
Accedere a un negozio
Quando viene aperto un negozio, è possibile accedervi. Per accedere a un negozio, è necessario aprire il popup “Negozi” facendo clic sul pulsante “Negozi” in cima a ogni pagina (quando è abilitato il multinegozio).
Quando accedi a un sub store, sembra un singolo store, poiché appare e funziona come un singolo store. Potresti persino provare lo store resettandolo.
Come limitare l’accesso a determinati ruoli
I moduli Nexo Multi-Store includono nuove autorizzazioni che consentono di creare, aggiornare, eliminare e accedere a un negozio. Queste autorizzazioni devono essere utilizzate con il gestore delle autorizzazioni incluso in NexoPOS.
Per impostazione predefinita, l’account Master e il Responsabile del negozio hanno accesso ai sub-negozi. Per attivare tale accesso per altri ruoli (anche ruoli personalizzati), devi consentire esplicitamente l’accesso.
Supporto per domini wildcard
A partire dalla versione 4.6.0, il modulo multistore supporta i domini wildcard. Ciò significa che puoi creare tutte le sottodomaini che vuoi e avere un URL univoco che punta a ciascun sottonegozio. Ogni negozio avrà quindi una pagina di accesso univoca e potrai limitare l’accesso a questi negozi. Ad esempio, se il tuo dominio principale è “mypos.com”, puoi avere per i sottositi i seguenti URL:
https://store-a.mypos.comhttps://another-store.mypos.com...
Ogni negozio è isolato e quindi non condivide le stesse risorse (prodotti, ordini, clienti, ecc.).
Vediamo come configurare i domini wildcard.
Dichiarazione di non responsabilità: Questa funzionalità non funziona su localhost. Ti invitiamo quindi a non seguire questi passaggi o ad attivare questa funzionalità se NexoPOS è ospitato localmente. Solo se disponi di un dominio valido e puoi configurare la DNS del tuo dominio, potrai utilizzare questa funzionalità.
Abilitazione dei domini wildcard su NexoPOS
La prima configurazione consiste nel configurare NexoPOS per utilizzare domini wildcard. Dovrai aggiungere questa “chiave” al file .env.
NS_WILDCARD_ENABLED=trueCopy
Durante la definizione, devi assicurarti che il tuo APP_URL punti al tuo dominio principale effettivo. Supponendo che il tuo dominio principale sia "mypos.com", il tuo "APP_URL" dovrebbe quindi essere "https://mypos.com" oppure "http://mypos.com" (a seconda che tu stia usando SSL o meno).
Configurazione del DNS per il supporto dei wildcard
Secondo il tuo responsabile, dovrai recarti nella configurazione DNS e creare domini wildcard. Nel nostro esempio utilizziamo Cloudflare, ma la configurazione dovrebbe funzionare con qualsiasi altro provider.
Poi andremo sul DNS e creeremo un nuovo record per il nostro dominio.
Configurazione di Apache per supportare domini WildCard
Se in precedenza stavi utilizzando un dominio fisso per NexoPOS 4.x, dovrai modificare la configurazione di Apache per abilitare il supporto per i caratteri jolly. Qui modificheremo il file di configurazione che punta alla nostra installazione di NexoPOS 4.x.
<VirtualHost *:80> ServerName *.nexopos.com ServerAlias *.nexopos.com DocumentRoot /var/www/html/v4.nexopos.com/public <Directory /var/www/html/v4.nexopos.com/public> Options -Indexes +FollowSymLinks +MultiViews AllowOverride All Require all granted </Directory> <FilesMatch \.php$> # La versione 2.4.10+ può fare proxy verso il socket unix SetHandler "proxy:unix:/var/run/php/php7.4-fpm.sock|fcgi://localhost" </FilesMatch></VirtualHost>Copia
Con questo, quando creiamo un negozio con lo slug "store-a", potremo accedere a quel negozio usando "https://store-a.nexopos.com" ecc.
Non dimenticare di riavviare Apache una volta terminata la configurazione.
Dichiarare i negozi per il Santuario
Sanctum è una libreria che gestisce l’autenticazione su NexoPOS 4.x. Ogni autenticazione deve essere effettuata a partire da un dominio dichiarato. I domini vengono dichiarati (separati da una virgola) nella chiave “SANCTUM_STATFUL_DOMAINS” dal file .env. Nel nostro esempio, ecco come è definita la chiave:
SANCTUM_STATEFUL_DOMAINS=nexopos.comCopiato
Ma se avessimo creato, ad esempio, 3 store con slug diversi, dovremmo registrare l’indirizzo per questi store per garantire che gli utenti possano accedere utilizzando quei domini. Quindi ecco come dovrebbe apparire ora questa chiave, se dobbiamo salvare questi domini: store-a, store-b, store-c
SANCTUM_STATEFUL_DOMAINS=nexopos.com, store-a.nexopos.com, store-b.nexopos.com, store-c.nexopos.comCopia
Ogni volta che viene creato un negozio (nel frattempo), dovrai dichiarare quel nuovo negozio nel file .env.