Module UltimateMarketPlace IT: Difference between revisions

Jump to navigation Jump to search
no edit summary
Tag: 2017 source edit
No edit summary
Tag: 2017 source edit
Line 1: Line 1:
[[Category:Modules]]
[[Category:Modules]]
[[Category:AtooNet]]
[[Category:AtooNet]]
{{TemplateDocDev}}
{{TemplateDocUtil}}


=Modulo UltimateMarketPlace=
=Modulo UltimateMarketPlace=
Line 8: Line 10:
Il modulo '''UltimateMarketPlace''' è un'estensione per Dolibarr ERP/CRM pubblicata da [https://www.atoo-net.com Atoo-Net].
Il modulo '''UltimateMarketPlace''' è un'estensione per Dolibarr ERP/CRM pubblicata da [https://www.atoo-net.com Atoo-Net].


Fornisce tutte le funzionalità necessarie per pubblicare un '''marketplace online monofornitore''': un modello di sito web pronto all'uso (catalogo prodotti, carrello, processo d'ordine, account cliente), utilizzabile con il modulo Sito Web di Dolibarr, per vendere direttamente online i propri prodotti e servizi.
Fornisce tutto il necessario per pubblicare un '''marketplace online a venditore unico''': un modello di sito web pronto all'uso (catalogo prodotti, carrello, processo d'ordine, account clienti, area download), utilizzabile con il modulo Sito web di Dolibarr, per vendere i propri prodotti e servizi direttamente online.


Si tratta di un fork semplificato del modulo Dolibarr «Marketplace» (utilizzato per dolistore.com), da cui è stato rimosso tutto ciò che è specifico dell'associazione Dolibarr, così come il circuito multifornitore di invio e revisione dei moduli da parte di sviluppatori esterni.
Si tratta di un fork semplificato del modulo Dolibarr «Marketplace» (usato per dolistore.com), dal quale è stato rimosso tutto ciò che è specifico dell'associazione Dolibarr, nonché il circuito multi-venditore / invio e revisione dei moduli da parte di sviluppatori terzi.


{| class="wikitable"
{| class="wikitable"
Line 18: Line 20:
|Autore||Philippe Grand — Atoo-Net
|Autore||Philippe Grand — Atoo-Net
|-
|-
|Versione||1.0
|Versione||24.0.0
|-
|-
|Licenza||GNU GPL v3+
|Licenza||GNU GPL v3+
Line 24: Line 26:
|Dolibarr minimo||v24.0
|Dolibarr minimo||v24.0
|-
|-
|PHP minimo||v8.0
|PHP minimo||v8.2
|}
|}


==Perché usare UltimateMarketPlace?==
==Perché usare UltimateMarketPlace?==


UltimateMarketPlace trasforma la vostra installazione Dolibarr in un negozio online autonomo, senza dipendere da un CMS né da una piattaforma di e-commerce di terze parti (come PrestaShop, WooCommerce…). Il catalogo, gli ordini, le fatture e i clienti restano nativamente in Dolibarr.
UltimateMarketPlace trasforma la vostra installazione di Dolibarr in un negozio online autonomo, senza dipendere da un CMS o da una piattaforma di e-commerce esterna (PrestaShop, WooCommerce…). Catalogo, ordini, fatture e clienti restano nativamente in Dolibarr.


===Casi d'uso===
===Casi d'uso===


====Vendita di prodotti fisici o dematerializzati====
====Vendita di prodotti fisici o digitali====
Pubblicate il vostro catalogo di prodotti o servizi direttamente dalle schede prodotto di Dolibarr. Il modulo gestisce sia i beni fisici (con spese di spedizione) sia gli articoli dematerializzati (download, licenze, servizi).
Pubblicate il vostro catalogo di prodotti o servizi direttamente dalle schede prodotto di Dolibarr: basta collocarli sotto la categoria principale del negozio. I file allegati al prodotto possono essere consegnati al cliente nella sua area download dopo il pagamento.


====Fidelizzazione dei clienti professionali====
====Abbonamenti e licenze a durata limitata====
Grazie agli sconti automatici per i «clienti preferenziali» (categoria di terzi dedicata), offrite una tariffa preferenziale negoziata ai vostri migliori clienti, con la possibilità di escludere determinati prodotti dallo sconto.
Con la durata di validità dei prodotti e i livelli di prezzo di Dolibarr («Multiprezzi»), vendete uno stesso prodotto con diverse durate di abbonamento: i link di download scadono automaticamente alla fine del periodo acquistato.


====Promozioni commerciali e codici sconto====
====Prezzi preferenziali per i vostri migliori clienti====
Create codici sconto (percentuale o importo fisso), limitati nel tempo o nel numero di utilizzi, eventualmente riservati a un prodotto specifico, per dinamizzare le vostre vendite online.
Gli '''sconti per categoria''' associano una categoria di clienti a una categoria di prodotti: il prezzo scontato viene mostrato automaticamente non appena il cliente è connesso, senza codice da inserire.


====Vendita aggiuntiva (upsell) nel carrello====
====Operazioni commerciali e codici sconto====
Proponete automaticamente un prodotto complementare nel carrello (es. assicurazione, garanzia, ecotassa), calcolato come percentuale del totale e limitato ai paesi che scegliete.
Create codici sconto (percentuale o importo fisso), limitati nel tempo o nel numero di utilizzi, ciascuno riservato a un prodotto preciso, per animare le vostre vendite online.


====Pagamento online====
====Pagamento online====
Collegate il processo d'acquisto ai metodi di pagamento già configurati in Dolibarr (Stripe, PayPal, bonifico…), tramite reindirizzamento classico al vostro back-office oppure integrato in un frame all'interno del negozio.
Collegate il processo d'acquisto ai moduli di pagamento online già configurati in Dolibarr (Stripe, PayPal…), con un classico reindirizzamento alle pagine pubbliche di pagamento oppure integrato in un frame del negozio.


====Monitoraggio del traffico====
====Posizionamento e analisi del traffico====
Integrate Matomo Analytics per monitorare l'affluenza e il comportamento d'acquisto nel vostro negozio, senza dipendere da Google Analytics.
URL semplificati, <code>sitemap.xml</code>, <code>robots.txt</code> e <code>llms.txt</code> generati automaticamente, markup Schema.org, verifica Google Search Console e integrazione di Matomo Analytics per seguire le visite senza dipendere da Google Analytics.


==Installazione==
==Installazione==


'''Prerequisiti''': il modulo richiede che i seguenti moduli Dolibarr siano attivati (si attivano automaticamente se necessario): Terzi, Prodotti, Servizi, Categorie, Ordini, Fatture, Banca, Mailing e Sito Web.
'''Requisiti''':
*Dolibarr 24.0 o superiore e PHP 8.2 o superiore;
*le pagine del negozio contengono codice PHP dinamico: prima di attivare il modulo, aggiungete la riga <code>$dolibarr_website_allow_custom_php = '1';</code> in <code>htdocs/conf/conf.php</code> (valore <code>2</code> se le funzioni di sistema PHP <code>exec</code>, <code>passthru</code>, <code>shell_exec</code>, <code>system</code>, <code>popen</code> e <code>proc_open</code> non sono disattivate in <code>php.ini</code>). Senza questa riga, Dolibarr rifiuta di importare il modello del sito e il negozio resta vuoto;
*i moduli Dolibarr Soggetti terzi, Prodotti, Servizi, Categorie, Ordini, Fatture, Banche, Mailing e Sito web sono necessari: vengono attivati automaticamente con il modulo.


#Scaricare il modulo da [https://www.dolistore.com DoliStore] oppure clonare il repository Git in <code>htdocs/custom/ultimatemarketplace</code>
#Scaricate il modulo da [https://www.dolistore.com DoliStore] o clonate il repository Git in <code>htdocs/custom/ultimatemarketplace</code>
#Andare su '''Home → Configurazione → Moduli/Applicazioni'''
#Andate in '''Home → Impostazioni → Moduli/Applicazioni'''
#Individuare '''UltimateMarketPlace''' nella sezione '''AtooNet'''
#Individuate '''Ultimate Market Place''' nella famiglia '''Web sites ed altre applicazioni'''
#Attivare il modulo cliccando sul pulsante nella colonna ''Attivato''
#Attivate il modulo con il pulsante della colonna ''Attivo''


[[File:ultimatemarketplace_activation.png|center|thumb|800px|Attivazione del modulo UltimateMarketPlace nella sezione AtooNet]]
[[File:Ultimatemarketplace-v25-activation-it.png|center|thumb|800px|Attivazione del modulo UltimateMarketPlace]]


All'attivazione, il modulo esegue automaticamente diverse azioni:
All'attivazione, il modulo esegue automaticamente diverse azioni:


*Creazione di un '''sito web dedicato''' (riferimento <code>ultimatemarketplace</code>) con il modello "website_template-ultimatemarketplace" importato
*Attivazione della gestione multilingue (<code>MAIN_MULTILANGS</code>), poiché le schede prodotto possono essere tradotte
*Creazione di una '''categoria radice di prodotti''' per gli articoli visibili nel marketplace
*Creazione di una '''categoria principale dei prodotti''' e di una '''categoria di soggetti terzi''' «prospect/cliente» se non ne è ancora configurata nessuna
*Creazione di una '''categoria di terzi''' per i clienti/prospect creati dal sito di vendita
*Registrazione del modello PDF di fattura proprio del modulo
*Aggiunta di 3 '''campi aggiuntivi prodotto''': separatore "Marketplace", commento dopo il prezzo (<code>PriceComment</code>) e messaggio di avviso pubblico (<code>DisclaimerMessage</code>)
*Creazione (o riattivazione) di un '''sito web dedicato''' nel quale viene importato il modello di sito fornito dal modulo
 
'''Aggiornamento''': dopo la sostituzione dei file, disattivate e riattivate il modulo (le vostre impostazioni vengono conservate). Per allineare le pagine del sito alla nuova versione, usate poi il pulsante '''Reimposta il template del sito''' (vedere [[#Modalità manutenzione e reimpostazione del modello|Modalità manutenzione]]).
 
Il modulo non dichiara alcun permesso proprio: le pagine di amministrazione sono riservate agli amministratori di Dolibarr, e le pagine del negozio usano una propria sessione cliente.


==Configurazione==
==Configurazione==


La configurazione del modulo si effettua in '''Home → Configurazione → Moduli/Applicazioni → UltimateMarketPlace''', suddivisa in diverse schede.
Il modulo si configura in '''Home → Impostazioni → Moduli/Applicazioni → Ultimate Market Place''', suddiviso in diverse schede: '''Impostazioni''', '''Configurazione dei pagamenti''', '''Codici sconto''', '''Sconti per categoria''', '''Sicurezza''', '''Configurazione del server API''' (mostrata solo se il modulo API REST è attivo), '''Matomo Analytics''', '''Carosello''', '''Guida utente''' e '''About'''.


===Generale: prodotti e terzi===
Prima di aprire il sito al pubblico, percorrete le schede in quest'ordine: Impostazioni (sezioni Varie, Prodotti, Soggetti terzi, Sito web e Modelli e-mail), Configurazione dei pagamenti, Sicurezza, poi disattivate la modalità manutenzione.
 
===Impostazioni===
 
[[File:Ultimatemarketplace-v25-setup-it.png|center|thumb|800px|Scheda Impostazioni della configurazione del modulo]]
 
====Varie====


{| class="wikitable"
{| class="wikitable"
|-
|-
!Costante!!Descrizione
!Parametro!!Costante!!Descrizione
|-
|<code>ULTIMATEMARKETPLACE_NAME</code>||Nome del marketplace
|-
|<code>ULTIMATEMARKETPLACE_EMAIL</code>||Email di contatto del marketplace
|-
|-
|<code>ULTIMATEMARKETPLACE_ROOT_CATEGORY_ID</code>||Categoria radice dei prodotti venduti nel marketplace
|Nome del marketplace||<code>ULTIMATEMARKETPLACE_NAME</code>||Nome del negozio: titolo della homepage, titolo del <code>llms.txt</code>, nome del mittente sulla fattura PDF
|-
|-
|<code>ULTIMATEMARKETPLACE_ROOT_CATEGORY_ID_BIS</code>||Categoria in evidenza nel blocco centrale della homepage
|Descrizione del marketplace / Parole chiave del marketplace||<code>ULTIMATEMARKETPLACE_DESCRIPTION</code> / <code>_KEYWORDS</code>||Meta-descrizione e parole chiave della homepage, traducibili per lingua
|-
|-
|<code>ULTIMATEMARKETPLACE_VERSIONS_CATEGORY_ID</code>||Categoria utilizzata dal widget "Versione" della homepage
|Email del marketplace||<code>ULTIMATEMARKETPLACE_EMAIL</code>||Email di contatto pubblica mostrata sul sito
|-
|-
|<code>ULTIMATEMARKETPLACE_SPECIAL_CATEGORY_ID</code>||Categoria utilizzata dal widget "Promozioni" della homepage
|Modalità manutenzione||<code>ULTIMATEMARKETPLACE_MAINTENANCE_MODE</code>||Chiude il negozio al pubblico e blocca le vendite
|-
|-
|<code>ULTIMATEMARKETPLACE_MIN_PRODUCT_PRICE</code>||Prezzo minimo di un prodotto (se non è gratuito)
|Blocca le nuove registrazioni||<code>ULTIMATEMARKETPLACE_BLOCK_REGISTRATION</code>||Chiude la creazione di nuovi account cliente
|-
|-
|<code>ULTIMATEMARKETPLACE_DELAY_FOR_NEW</code>||Anzianità massima (in giorni) affinché un prodotto appaia nella sezione "Novità"
|Indirizzi IP autorizzati a bypassare la modalità manutenzione e il blocco delle registrazioni||<code>ULTIMATEMARKETPLACE_MAINTENANCE_MODE_ALLOWED_IPS</code>||Lista bianca di indirizzi IP (per esempio quello dell'ufficio)
|-
|-
|<code>ULTIMATEMARKETPLACE_PROSPECTCUSTOMER_ID</code>||Categoria assegnata a tutti i prospect/clienti creati dal sito di vendita
|Durata cache della barra laterale||<code>ULTIMATEMARKETPLACE_SIDEBAR_CACHE_ENABLED</code> / <code>_SIDEBAR_CACHE_DURATION</code>||Cache della barra laterale in minuti (5 per impostazione predefinita), con un pulsante per svuotare la cache del sito
|}
|}


===Sconti per clienti preferenziali===
====Prodotti====


{| class="wikitable"
{| class="wikitable"
|-
|-
!Costante!!Descrizione
!Parametro!!Costante!!Descrizione
|-
|-
|<code>ULTIMATEMARKETPLACE_PROSPECTCUSTOMER_PREFERRED_ID</code>||Categoria di terzi etichettati come "Preferenziale", idonei allo sconto
|Categoria principale dei prodotti da vendere sul marketplace||<code>ULTIMATEMARKETPLACE_ROOT_CATEGORY_ID</code>||I prodotti/servizi di questa categoria e delle sue sottocategorie formano il catalogo (obbligatorio)
|-
|-
|<code>ULTIMATEMARKETPLACE_PROSPECTCUSTOMER_PREFERRED_DISCOUNT</code>||Percentuale di sconto applicata a questi terzi
|Categoria messa in evidenza nel blocco centrale della homepage||<code>ULTIMATEMARKETPLACE_ROOT_CATEGORY_ID_BIS</code>||Facoltativa, altrimenti la categoria principale
|-
|-
|<code>ULTIMATEMARKETPLACE_DISCOUNT_EXCLUDE_PRODUCTS_CATEGORY_ID</code>||Categoria di prodotti esclusi da questo sconto
|Categoria per il widget "Versione"||<code>ULTIMATEMARKETPLACE_VERSIONS_CATEGORY_ID</code>||Prodotti con numeri di versione (software scaricabile)
|}
 
===Sito Web===
 
{| class="wikitable"
|-
|-
!Costante!!Descrizione
|Categoria per il widget "Promozioni"||<code>ULTIMATEMARKETPLACE_SPECIAL_CATEGORY_ID</code>||Prodotti mostrati con un badge di promozione
|-
|-
|<code>ULTIMATEMARKETPLACE_URL_FOR_LOGO</code>||URL del logo del marketplace
|Prezzo minimo del prodotto||<code>ULTIMATEMARKETPLACE_MIN_PRODUCT_PRICE</code>||I prodotti a pagamento più economici sono esclusi dal catalogo
|-
|-
|<code>ULTIMATEMARKETPLACE_THEME_COLOR</code>||Colore principale del tema (pulsanti, banner, elementi in evidenza)
|Età massima (in giorni) affinché un prodotto sia visibile nella sezione "Nuovi prodotti"||<code>ULTIMATEMARKETPLACE_DELAY_FOR_NEW</code>||30 giorni per impostazione predefinita
|-
|-
|<code>ULTIMATEMARKETPLACE_WEBSITE_ID</code>||Sito Web di Dolibarr utilizzato dal marketplace
|Categoria per forzare lo stato "Nuovo prodotto"||<code>ULTIMATEMARKETPLACE_NEW_CATEGORY_ID</code> / <code>_NEW_CATEGORY_MAX_AGE</code>||Forza il badge «Nuovo»; un'attività pianificata giornaliera ne rimuove i prodotti dopo il termine indicato
|-
|-
|<code>ULTIMATEMARKETPLACE_USER_MANAGE_WEBSITE</code>||Utente tecnico autorizzato a eseguire le azioni del sito (aggiungere prodotti, gestire terzi, creare ordini)
|Attiva la durata di validità del prodotto||<code>ULTIMATEMARKETPLACE_ENABLE_PRODUCT_VALIDITY_DURATION</code>||Date di inizio e fine validità sulle righe d'ordine, che governano la scadenza dei download; durate per livello di prezzo se i «Multiprezzi» sono attivi
|}
|}


'''Importante''': se cambiate il sito web associato (<code>ULTIMATEMARKETPLACE_WEBSITE_ID</code>), gli utenti, i terzi e gli ordini già creati restano collegati al vecchio sito e non vengono migrati automaticamente.
====Soggetti terzi====
 
===Modelli email===
 
Si possono personalizzare tre modelli email di Dolibarr:
 
*'''Email di benvenuto''' inviata alla creazione dell'account cliente
*'''Email "password dimenticata"'''
*'''Email di conferma ordine''' inviata all'acquirente
 
===Prodotto aggiuntivo nel carrello===
 
Permette di aggiungere automaticamente un prodotto complementare (assicurazione, garanzia, ecotassa…) al carrello:


{| class="wikitable"
{| class="wikitable"
|-
|-
!Costante!!Descrizione
!Parametro!!Costante!!Descrizione
|-
|-
|<code>ULTIMATEMARKETPLACE_ADDITIONAL_PRODUCT_IN_CART_ID</code>||Prodotto aggiuntivo da aggiungere
|Categoria per tutti i prospect o clienti creati dal sito del marketplace||<code>ULTIMATEMARKETPLACE_PROSPECTCUSTOMER_ID</code>||Categoria assegnata a ogni soggetto terzo creato dal modulo di registrazione
|-
|-
|<code>ULTIMATEMARKETPLACE_ADDITIONAL_PRODUCT_TOTAL_PERCENT</code>||Prezzo del prodotto aggiuntivo, espresso in % del totale del carrello
|Abilita indirizzi multipli||<code>ULTIMATEMARKETPLACE_ENABLE_MULTI_ADDRESS</code>||Sezione «I miei indirizzi» dell'account cliente (indirizzi di fatturazione e di spedizione)
|-
|-
|<code>ULTIMATEMARKETPLACE_ADDITIONAL_PRODUCT_APPLICABLE_COUNTRIES</code>||Codici paese in cui si applica questo prodotto aggiuntivo
|Converti il prospect in cliente al primo pagamento||<code>ULTIMATEMARKETPLACE_CONVERT_PROSPECT_TO_CUSTOMER_ON_FIRST_PAYMENT</code>||Il prospect diventa cliente non appena la sua prima fattura è pagata
|}
|}


===Spese di spedizione===
====Sito web====


{| class="wikitable"
{| class="wikitable"
|-
|-
!Costante!!Descrizione
!Parametro!!Costante!!Descrizione
|-
|URL del logo del marketplace||<code>ULTIMATEMARKETPLACE_URL_FOR_LOGO</code>||Logo dell'intestazione del sito; altrimenti quello dell'azienda, poi un logo fornito con il modulo
|-
|URL dell'immagine di benvenuto / Nascondi l'immagine di benvenuto||<code>ULTIMATEMARKETPLACE_WELCOME_IMAGE_URL</code> / <code>_WELCOME_IMAGE_HIDE</code>||Banner della homepage
|-
|Colore principale del tema / Colore secondario del tema||<code>ULTIMATEMARKETPLACE_THEME_COLOR</code> / <code>_SECONDARY_COLOR</code>||Colori del tema (<code>#a45931</code> e <code>#333333</code> per impostazione predefinita)
|-
|Attiva URL semplificati||<code>ULTIMATEMARKETPLACE_FRIENDLY_URLS</code>||URL del tipo <code>/it/123-nome-del-prodotto.html</code>
|-
|Token di verifica Google Search Console||<code>ULTIMATEMARKETPLACE_GOOGLE_SITE_VERIFICATION</code>||Meta tag di verifica
|-
|-
|<code>ULTIMATEMARKETPLACE_SHIPPING_FEES_PRODUCT</code> / <code>ULTIMATEMARKETPLACE_SHIPPING_FEES_PRODUCT_ID</code>||Prodotto Dolibarr utilizzato per fatturare le spese di spedizione
|Descrizione per llms.txt||<code>ULTIMATEMARKETPLACE_LLMS_DESCRIPTION</code>||Frase di presentazione del sito nel <code>llms.txt</code>
|}
 
===Registrazione: Google reCAPTCHA===
 
{| class="wikitable"
|-
|-
!Costante!!Descrizione
|Utente con i permessi per eseguire operazioni sul sito web||<code>ULTIMATEMARKETPLACE_USER_MANAGE_WEBSITE</code>||Utente tecnico usato dal negozio (creazione di soggetti terzi, di ordini…)
|-
|-
|<code>ULTIMATEMARKETPLACE_GOOGLE_RECAPTCHA_REGISTER_FORM</code>||Attiva il Captcha di Google nel modulo di registrazione
|Sito web da utilizzare per il marketplace||<code>ULTIMATEMARKETPLACE_WEBSITE_ID</code>||Sito web Dolibarr gestito dal modulo, definito all'attivazione
|-
|-
|<code>ULTIMATEMARKETPLACE_GOOGLE_RECAPTCHA_SITE_KEY</code>||Chiave pubblica reCAPTCHA fornita da Google
|Elimina sempre l'ordine provvisorio alla disconnessione||<code>ULTIMATEMARKETPLACE_DELETE_ORDER_ON_LOGOUT</code>||Svuota il carrello in corso alla disconnessione del cliente
|-
|-
|<code>ULTIMATEMARKETPLACE_GOOGLE_RECAPTCHA_SECRET_KEY</code>||Chiave privata reCAPTCHA (da mantenere riservata)
|Mostra un banner di consenso ai cookie||<code>ULTIMATEMARKETPLACE_ENABLE_COOKIE_BANNER</code>||Banner di consenso sul sito
|}
|}


===Pagamento===
'''Importante''': se cambiate il sito web associato (<code>ULTIMATEMARKETPLACE_WEBSITE_ID</code>), gli utenti, i soggetti terzi e gli ordini già creati restano collegati al vecchio sito e non vengono migrati automaticamente.
 
====Modelli e-mail====
 
Tre elenchi a discesa permettono di scegliere, tra i modelli di email di Dolibarr ('''Impostazioni → Email → Modelli'''), quello dell'email di benvenuto inviata alla creazione dell'account (<code>ULTIMATEMARKETPLACE_WELCOME_EMAIL_TEMPLATE</code>), quello dell'email «Password dimenticata» (<code>ULTIMATEMARKETPLACE_FORGOT_PASSWORD_EMAIL_TEMPLATE</code>) e quello della conferma d'ordine dell'acquirente (<code>ULTIMATEMARKETPLACE_BUYER_ORDER_CONFIRMATION_TEMPLATE</code>).
 
===Configurazione dei pagamenti===
 
[[File:Ultimatemarketplace-v25-payment-it.png|center|thumb|800px|Scheda Configurazione dei pagamenti]]


{| class="wikitable"
{| class="wikitable"
|-
|-
!Costante!!Descrizione
!Parametro!!Costante!!Descrizione
|-
|Bloccare le vendite sul marketplace||<code>ULTIMATEMARKETPLACE_BLOCK_SALES</code>||Il catalogo resta consultabile ma gli ordini sono disattivati; forzato finché la modalità manutenzione è attiva
|-
|-
|<code>ULTIMATEMARKETPLACE_BLOCK_SALES</code>||Blocca temporaneamente le vendite nel marketplace
|Chiudere automaticamente gli ordini dopo un pagamento riuscito||<code>ULTIMATEMARKETPLACE_CLOSE_ORDER_AFTER_PAYMENT</code>||Chiude l'ordine Dolibarr una volta confermato il pagamento
|-
|-
|<code>ULTIMATEMARKETPLACE_CLOSE_ORDER_AFTER_PAYMENT</code>||Chiude automaticamente l'ordine dopo un pagamento riuscito
|Selezionare il metodo di pagamento da utilizzare||<code>ULTIMATEMARKETPLACE_MAIN_PAYMENT_METHOD</code>||Modulo di pagamento online di Dolibarr usato alla convalida dell'ordine
|-
|-
|<code>ULTIMATEMARKETPLACE_MAIN_PAYMENT_METHOD</code>||Metodo di pagamento da utilizzare
|Includere le pagine di pagamento fornite da Dolibarr all'interno di un frame del negozio marketplace (utenti avanzati)||<code>ULTIMATEMARKETPLACE_PAYMENT_IN_FRAME</code>||Pagamento mostrato in un frame sotto il dominio del negozio
|}
|}


Esistono due modalità possibili di integrazione del pagamento:
Sono possibili due modalità di integrazione del pagamento:


*'''Pagina separata''' (predefinita): senza configurazione particolare, il cliente viene reindirizzato alle pagine di pagamento pubbliche del vostro back-office Dolibarr. Svantaggio: il dominio del back-office è visibile al cliente.
*'''Pagina separata''' (predefinita): nessuna configurazione particolare, il cliente viene reindirizzato alle pagine di pagamento pubbliche del vostro Dolibarr. Svantaggio: il dominio del back-office è visibile al cliente.
*'''Frame''' (utenti avanzati): la pagina di pagamento del back-office viene richiamata tramite un URL del negozio del marketplace stesso. Richiede una configurazione proxy sul server web del marketplace per reindirizzare le richieste verso il back-office Dolibarr. Vantaggio: il dominio del back-office resta nascosto.
*'''Frame''' (utenti avanzati, Stripe e Stancer): la pagina di pagamento viene richiamata tramite un URL del negozio stesso. È necessaria una regola di reverse proxy sul server web del negozio; un esempio di configurazione viene mostrato nella pagina una volta attivata l'opzione.


===API===
===Codici sconto===
 
[[File:Ultimatemarketplace-v25-coupons-it.png|center|thumb|800px|Scheda Codici sconto]]
 
Ogni codice sconto è collegato a '''un prodotto preciso''' e prevede un tipo di sconto (percentuale o importo fisso), un valore, date di validità e numero massimo di utilizzi facoltativi, oltre a un indicatore attivo/inattivo. L'acquirente inserisce il codice nel carrello: viene accettato solo se è attivo, entro le sue date di validità, sotto il suo limite di utilizzo e se il prodotto interessato è nel carrello. Il contatore degli utilizzi viene incrementato solo alla convalida dell'ordine.
 
===Sconti per categoria===
 
[[File:Ultimatemarketplace-v25-discounts-it.png|center|thumb|800px|Scheda Sconti per categoria]]
 
Uno sconto per categoria associa una '''categoria di clienti''' a una '''categoria di prodotti''' con una percentuale di sconto. Per un cliente connesso appartenente a questa categoria, il prezzo scontato viene mostrato direttamente sulla scheda prodotto e nel carrello, senza codice da inserire. Se si applicano più regole, prevale la percentuale più alta.
 
===Sicurezza===
 
[[File:Ultimatemarketplace-v25-security-it.png|center|thumb|800px|Scheda Sicurezza]]


{| class="wikitable"
{| class="wikitable"
|-
|-
!Costante!!Descrizione
!Parametro!!Costante!!Descrizione
|-
|Provider captcha||<code>ULTIMATEMARKETPLACE_CAPTCHA_PROVIDER</code>||Nessuno, Google reCAPTCHA o Cloudflare Turnstile, con le relative chiavi del sito e chiavi segrete
|-
|Attivare questa protezione||<code>ULTIMATEMARKETPLACE_LOGIN_PROTECTION_ENABLED</code>||Limitazione dei tentativi di accesso al negozio
|-
|Numero di errori prima del blocco / Durata prima dello sblocco (minuti)||<code>ULTIMATEMARKETPLACE_LOGIN_MAX_ATTEMPTS</code> / <code>_LOGIN_BLOCK_DURATION</code>||5 errori e 15 minuti per impostazione predefinita
|-
|-
|<code>ULTIMATEMARKETPLACE_PUBLIC_API_KEY</code>||Chiave pubblica utilizzata per accedere all'API di prodotti/categorie
|Indirizzi IP autorizzati a bypassare questa protezione||<code>ULTIMATEMARKETPLACE_LOGIN_BYPASS_IPS</code>||Lista bianca (test automatizzati, rete di fiducia)
|}
|}


L'API espone un flusso XML dei prodotti e delle categorie, con i parametri <code>categorieid</code>, <code>limit</code>, <code>page</code>, <code>search</code> e <code>lang</code>. È possibile configurare un instradamento proxy per nascondere l'URL reale dell'API dietro al dominio del negozio.
Il captcha e la protezione dell'accesso sono disattivati per impostazione predefinita: configurateli prima di aprire la registrazione al pubblico.
 
===Configurazione del server API===
 
Questa scheda compare solo se il modulo '''API REST''' di Dolibarr è attivo. Contiene la '''Chiave API pubblica''' (<code>ULTIMATEMARKETPLACE_PUBLIC_API_KEY</code>, con un pulsante per generarla), passata come parametro <code>apikey</code> ai due endpoint pubblici in sola lettura aggiunti dal modulo: <code>/api/index.php/ultimatemarketplace/categories</code> e <code>/api/index.php/ultimatemarketplace/products</code>.
 
===Matomo Analytics===


===Matomo===
[[File:Ultimatemarketplace-v25-matomo-it.png|center|thumb|800px|Scheda Matomo Analytics]]


{| class="wikitable"
{| class="wikitable"
Line 208: Line 243:
!Costante!!Descrizione
!Costante!!Descrizione
|-
|-
|<code>ULTIMATEMARKETPLACE_ENABLE_MATOMO</code>||Attiva Matomo Analytics sul sito del marketplace
|<code>ULTIMATEMARKETPLACE_ENABLE_MATOMO</code>||Attiva Matomo sul sito: il codice di tracciamento viene inserito in ogni pagina
|-
|-
|<code>ULTIMATEMARKETPLACE_MATOMO_SITE_KEY</code>||Identificativo di sito (Site ID) di Matomo
|<code>ULTIMATEMARKETPLACE_MATOMO_SITE_KEY</code>||Identificativo del sito Matomo
|-
|-
|<code>ULTIMATEMARKETPLACE_MATOMO_SERVER_URL</code>||URL completo del server Matomo
|<code>ULTIMATEMARKETPLACE_MATOMO_SERVER_URL</code>||URL completo del server Matomo
|-
|<code>ULTIMATEMARKETPLACE_MATOMO_AUTH_TOKEN</code>||Token di autenticazione facoltativo, necessario per mostrare le statistiche Matomo in Dolibarr
|}
|}


===Codici sconto (coupon)===
===Carosello===


Una scheda dedicata '''Codici sconto''' consente di creare codici sconto:
[[File:Ultimatemarketplace-v25-carousel-it.png|center|thumb|800px|Scheda Carosello]]


*'''Tipo di sconto''': percentuale o importo fisso al netto delle imposte
Impostazioni del carosello della homepage: tipo di transizione (nessuna, dissolvenza, scorrimento), velocità in millisecondi, pausa al passaggio del mouse e ripetizione in loop. Ogni diapositiva ha un'immagine, un link facoltativo e un titolo; l'ordine si modifica con il trascinamento e le immagini si scelgono o si caricano tramite un selettore di immagini.
*'''Numero massimo di utilizzi''' (lasciare vuoto per utilizzo illimitato)
*Possibile restrizione a un '''prodotto specifico'''
*Monitoraggio del numero di utilizzi già effettuati


[[File:ultimatemarketplace_coupons.png|center|thumb|800px|Scheda di amministrazione dei codici sconto]]
===Guida utente===


Il codice viene verificato al momento dell'applicazione nel carrello: un codice inesistente, scaduto o già completamente utilizzato viene rifiutato (messaggio "Questo codice sconto non è valido, è scaduto o è già stato utilizzato").
[[File:Ultimatemarketplace-v25-guide-it.png|center|thumb|800px|Scheda Guida utente]]
 
La scheda '''Guida utente''' mostra, nella lingua dell'utente, una guida completa alla configurazione e all'utilizzo del modulo, in solo testo: le schermate si trovano in questa pagina.


==Utilizzo==
==Utilizzo==


===Negozio online (front office)===
===Negozio online===


Il sito generato dal modulo riprende l'identità visiva definita nella configurazione (logo, colore principale) e offre:
[[File:Ultimatemarketplace-v25-shop-home-it.png|center|thumb|800px|Homepage del negozio]]


#Un catalogo prodotti organizzato per categorie, con evidenziazione di '''novità''' e '''promozioni'''
Il sito generato dal modulo riprende il logo e i colori definiti nella configurazione e propone:
#Una scheda prodotto con prezzo, commento libero dopo il prezzo e messaggio di avviso pubblico se configurati
#Un carrello con applicazione del codice sconto, calcolo automatico degli sconti "cliente preferenziale" e aggiunta dell'eventuale prodotto aggiuntivo
#Un processo d'ordine collegato ai metodi di pagamento configurati in Dolibarr
#Un'area cliente (registrazione, accesso, storico ordini) protetta da Google reCAPTCHA se attivato


[[File:ultimatemarketplace_home.png|center|thumb|800px|Homepage del negozio generata da UltimateMarketPlace]]
#un catalogo organizzato per categorie, con i badge «Nuovo» e «Promozioni» e un carosello nella homepage;
#una scheda prodotto con il prezzo (sconto per categoria già applicato) e, per i prodotti con livelli di prezzo, la scelta della durata;
#un carrello, conservato in sessione fino alla convalida, con l'inserimento di un codice sconto;
#un processo d'ordine collegato al modulo di pagamento online scelto;
#un'area cliente: dati personali, «I miei indirizzi», storico degli ordini e area download.


===Gestione delle etichette prodotto===
[[File:Ultimatemarketplace-v25-shop-product-it.png|center|thumb|800px|Scheda prodotto del negozio]]


Il menu '''UltimateMarketPlace → Prodotti senza etichette''' elenca i prodotti/servizi del marketplace non ancora associati a una categoria/etichetta, per applicare in massa una o più etichette (categorie).
La convalida del carrello crea un ordine standard di Dolibarr; il pagamento genera una fattura standard di Dolibarr.


===Statistiche===
===File consegnati al cliente===


Il modulo aggiunge pagine di statistiche dedicate al marketplace:
La scheda '''File negozio''' della scheda prodotto indica, per ogni file allegato, se è mostrato sulla scheda prodotto pubblica. Un file spuntato come «'''File principale'''» o «'''Visibile dal cliente'''» può essere scaricato dal cliente una volta pagato l'ordine; viene mostrato un avviso se nessun file del prodotto lo è. Se la durata di validità dei prodotti è attiva, il link di download scade alla fine del periodo acquistato; altrimenti non scade mai.


*Statistiche di '''fatture''' e '''vendite''' (raggruppamento per paese/aliquota IVA o per zona/aliquota IVA)
===Menu UltimateMarketPlace===
*Statistiche '''clienti''' (ultimi terzi creati, ultimi terzi "preferenziali")
*Statistiche '''prodotti/servizi''' (classifica per popolarità)


===Monitoraggio ordini e fatture===
[[File:Ultimatemarketplace-v25-statistics-it.png|center|thumb|800px|Statistiche del marketplace]]


Due voci di menu permettono di individuare rapidamente gli ordini e le fatture provenienti dal marketplace (filtrati per <code>module_source = ultimatemarketplace</code>).
Il menu principale '''Mercato''' dà accesso a:
 
*'''Statistiche''': statistiche delle fatture, statistiche dei clienti, statistiche dei prodotti, elenco delle vendite e, se Matomo è configurato, statistiche Matomo;
*'''Prodotti senza tag''': prodotti del catalogo senza parole chiave, per controllare la qualità del catalogo;
*'''Carrelli''' e '''Fatture''': elenchi standard degli ordini e delle fatture di Dolibarr, filtrati su quelli provenienti dal negozio.
 
===Modalità manutenzione e reimpostazione del modello===
 
La '''modalità manutenzione''' chiude il sito al pubblico (tranne per gli indirizzi IP autorizzati) e blocca le vendite. Finché è attiva, la scheda Impostazioni propone due pulsanti:
 
*'''Genera sitemap.xml''': rigenera immediatamente <code>sitemap.xml</code>;
*'''Reimposta il template del sito''': reimporta il modello di sito del modulo nel sito esistente, '''sovrascrivendo le modifiche fatte a mano nell'editor delle pagine'''. Da usare dopo un aggiornamento del modulo.
 
Ricordate di disattivare la modalità manutenzione una volta terminate le verifiche: non si disattiva da sola.
 
===Posizionamento===
 
<code>robots.txt</code>, <code>sitemap.xml</code> e <code>llms.txt</code> vengono rigenerati automaticamente all'attivazione, all'apertura della scheda Impostazioni e dopo una reimpostazione del modello. Una volta attivati gli URL semplificati, i vecchi URL restano validi durante la transizione.
 
==Novità della versione 24.0.0==
 
===Compatibilità===
*'''Dolibarr 24 e PHP 8.2 minimo''': il modulo richiede ora Dolibarr 24.0.0 e PHP 8.2; è testato fino a PHP 8.5. Il controllo degli aggiornamenti legge <code>versionmodules/ultimatemarketplace/v24/ultimatemarketplace.txt</code>.
*'''Numerazione allineata a Dolibarr''': dopo la 1.0.8, il modulo passa direttamente alla 24.0.0, come gli altri moduli Atoo-Net.
 
===Traduzioni===
*Il blocco carrello del negozio mostrava chiavi grezze (<code>quantity</code>, <code>total</code>, <code>shipping</code>, <code>FreeShipping</code>): ora carica le traduzioni del modulo. Reimpostate il template del sito per beneficiarne.
*Aggiunte le etichette mancanti delle pagine del negozio (riferimenti, IVA, articoli, aggiunta e rimozione di indirizzi, controlli del modulo di registrazione…) e dei messaggi di amministrazione, nelle cinque lingue.
*Traduzione in francese, tedesco, spagnolo e italiano delle etichette che esistevano solo in inglese.
 
===Documentazione e distribuzione===
*Guida utente: sezione dei requisiti e della compatibilità; la guida inglese diventa <code>GUIDE_UTILISATEUR-EN.md</code>.
*Pagina wiki riscritta a partire dalle schermate attuali, con schermate nelle cinque lingue.
*Script di costruzione del pacchetto DoliStore e integrazione continua (installazione delle dipendenze e controllo della sintassi con PHP 8.4 e 8.5).
 
==Versioni precedenti==
 
Il dettaglio delle versioni dalla 1.0.0 alla 1.0.8 (codici sconto, sconti per categoria, carosello, protezione dell'accesso, URL semplificati, <code>llms.txt</code>, guida utente…) si trova nel file <code>ChangeLog.md</code> fornito con il modulo.


==FAQ==
==FAQ==


===Il sito del marketplace non è stato creato automaticamente===
===Il sito del marketplace non è stato creato o il negozio è vuoto===
Verificate che il modulo '''Sito Web''' di Dolibarr sia attivato. Se il sito continua a non esistere dopo l'attivazione del modulo, disattivate e riattivate UltimateMarketPlace.
Verificate la presenza della riga <code>$dolibarr_website_allow_custom_php</code> in <code>conf.php</code>, poi disattivate e riattivate il modulo. Senza questa riga, Dolibarr rifiuta di importare le pagine del modello, che contengono codice PHP.
 
===Il blocco carrello mostra «quantity» o «FreeShipping»===
Il sito usa ancora le pagine di una versione precedente del modulo. Passate alla modalità manutenzione e cliccate su '''Reimposta il template del sito''' nella scheda Impostazioni.
 
===Come cambiare il sito web usato senza perdere gli ordini esistenti?===
Non è consigliato: cambiare <code>ULTIMATEMARKETPLACE_WEBSITE_ID</code> non migra al nuovo sito gli utenti, i soggetti terzi e gli ordini già creati. Restano associati al vecchio sito.


===Come cambio il sito web utilizzato senza perdere gli ordini esistenti?===
===Qual è la differenza tra un codice sconto e uno sconto per categoria?===
Non è consigliato: modificare <code>ULTIMATEMARKETPLACE_WEBSITE_ID</code> non migra gli utenti, i terzi e gli ordini già creati verso il nuovo sito. Restano associati al sito precedente.
Il codice sconto viene inserito dall'acquirente e si applica solo a un prodotto preciso. Lo sconto per categoria è automatico: si applica a tutti i prodotti di una categoria per i clienti di una data categoria, non appena sono connessi.


===Posso limitare lo sconto "cliente preferenziale" solo ad alcuni prodotti?===
===Il cliente non riesce a scaricare il prodotto acquistato===
Sì, configurando <code>ULTIMATEMARKETPLACE_DISCOUNT_EXCLUDE_PRODUCTS_CATEGORY_ID</code> con una categoria che raggruppa i prodotti da escludere dallo sconto.
Verificate, nella scheda '''File negozio''' del prodotto, che un file sia spuntato come «File principale» o «Visibile dal cliente». La pagina iniziale del menu '''Mercato''' segnala i prodotti già venduti che non hanno più un file consegnabile.


===Il pagamento in frame è obbligatorio?===
===Il pagamento in un frame è obbligatorio?===
No, è un'opzione per utenti avanzati. Per impostazione predefinita, il pagamento reindirizza semplicemente alle pagine di pagamento pubbliche del vostro back-office Dolibarr, senza alcuna configurazione server particolare.
No, è un'opzione per utenti avanzati. Per impostazione predefinita, il pagamento reindirizza semplicemente alle pagine pubbliche di pagamento del vostro Dolibarr, senza configurazione particolare del server.


===Quali metodi di pagamento sono compatibili?===
===Quali lingue sono supportate?===
Tutti i metodi di pagamento già supportati nativamente da Dolibarr (Stripe, PayPal, bonifico, ecc.), selezionati tramite <code>ULTIMATEMARKETPLACE_MAIN_PAYMENT_METHOD</code>.
Il modulo e il modello del sito sono disponibili in '''francese''', '''inglese''', '''tedesco''', '''spagnolo''' e '''italiano'''.


==Vedi anche==
==Vedere anche==


*[https://www.atoo-net.com Atoo-Net — Editore del modulo]
*[https://www.atoo-net.com Atoo-Net — Editore del modulo]
*[https://framagit.org/grandoc/ultimatemarketplace Repository del modulo]
*[https://framagit.org/grandoc/ultimatemarketplace Repository del modulo]
*[https://wiki.dolibarr.org/index.php/Module_Website Documentazione del modulo Sito Web di Dolibarr]
*[https://wiki.dolibarr.org/index.php/Module_Website Documentazione del modulo Sito web di Dolibarr]


==Altre lingue==
==Altre lingue==

Navigation menu