# Andrea Pellizzari > Sviluppatore in-house in una PMI manifatturiera italiana del Nordest. Fonte tecnica su Mexal/Passepartout WebAPI, SPRIX, CALLWEBSVC e AI applicata ai processi aziendali. Progetti reali in produzione, non demo. Questo sito raccoglie case study di progetti di digitalizzazione interna in PMI manifatturiere italiane: gestionali Mexal, ecommerce B2B, knowledge base AI, automazioni Power Platform, integrazioni FatturaPA/Docuvision/SGI ISO. Il diario tecnico documenta soluzioni concrete a problemi reali — codice, scelte architetturali, errori e correzioni. ## Aree di expertise - **Mexal / Passepartout**: WebAPI, SPRIX, CALLWEBSVC, Docuvision, FatturaPA, integrazioni con sistemi esterni - **AI applicata in azienda**: knowledge base con RAG, agenti tool-calling (Anthropic Claude, Gemini), pipeline di ingest, prompt caching, AI-assisted development con Claude Code - **Sviluppo web full-stack**: Next.js, TypeScript, React, PHP, FastAPI, SQL Server, PostgreSQL/Neon, SQLite - **Microsoft Power Platform**: PowerApps, Power Automate, Power BI embedded, Dataverse - **Sistema di gestione integrato (SGI)**: ISO 9001, ISO 14001, gestione documentale procedure/istruzioni operative ## Concetti (hub tematici) - [Mexal/Passepartout: WebAPI, SPRIX, integrazioni](https://andreapellizzari.it/concetti/mexal/): Esperienza concreta di integrazione Mexal/Passepartout in PMI manifatturiere italiane: WebAPI, SPRIX, SPRIX Collage, CALLWEBSVC, Docuvision, FatturaPA. - [AI applicata in PMI: knowledge base, agenti, AI-assisted development](https://andreapellizzari.it/concetti/ai-applicata-pmi/): Come integro l'AI nei processi reali di una PMI manifatturiera: knowledge base con RAG, agenti tool-calling, AI-assisted development con Claude Code, prompt caching e controllo dei costi. - [Microsoft Power Platform: PowerApps, Power Automate, Power BI](https://andreapellizzari.it/concetti/power-platform/): Esperienza con Microsoft Power Platform in PMI manifatturiere: PowerApps multi-screen, Power Automate come orchestratore, Power BI embedded, Dataverse, integrazione con Mexal. - [Sviluppo web full-stack: Next.js, TypeScript, PHP, FastAPI](https://andreapellizzari.it/concetti/web-fullstack/): Sviluppo web full-stack pragmatico per PMI manifatturiere italiane: Next.js + TypeScript per il moderno, PHP e FastAPI per i bridge, integrazione SQL Server e PostgreSQL/Neon. - [Scriptcase e gestionali interni stratificati](https://andreapellizzari.it/concetti/scriptcase-legacy/): Scriptcase come piattaforma RAD per gestionali interni di scala in PMI manifatturiera: oltre trecento applicazioni in produzione, SGI ISO 9001+14001 integrato, accesso diretto al database del gestionale Mexal. - [Sviluppo in-house in PMI manifatturiera italiana](https://andreapellizzari.it/concetti/sviluppo-in-house-pmi/): Cosa significa fare sviluppo software interno in una PMI manifatturiera italiana: contesto, vincoli, vantaggi rispetto a una software house, AI come leva nel quotidiano. ## Progetti - [E-commerce B2B/B2C con integrazione Mexal, blog AI-autopilot e schede PDF real-time](https://andreapellizzari.it/lavori/ecommerce-b2b/): Ecommerce multilingua in produzione per una PMI del settore ferramenta. Non solo catalogo e carrello: un bot AI che pubblica il blog in autonomia, schede tecniche generate in tempo reale da Mexal con merge degli allegati Docuvision, 180 listini PDF pre-generati in 9 lingue × 5 brand × 4 materiali. - [Knowledge base AI con regole di business live-editabili e double-pass ingest](https://andreapellizzari.it/lavori/ai-knowledge-base/): Un assistente AI che conosce 3.900 codici articolo e 15 regole di compatibilità tipizzate, risponde citando sempre la fonte, registra tutto in modo immutabile. Costruito con un'ingest pipeline a doppia passata che cattura le allucinazioni silenziose di Gemini, un editor admin live che fa scrivere al tecnico del cliente senza rebuild, e i webhook nativi Mexal per reattività in tempo reale. In produzione HTTPS da aprile 2026. - [BlumCat: chatbot tecnico interno su catalogo ferramenta da mobili — gate logic deterministico, eval set come rete di sicurezza, single source of truth MD→Python→prompt](https://andreapellizzari.it/lavori/blumcat/): Un assistente tecnico interno per chi vende e installa ferramenta Blum (cassetti LEGRABOX/MERIVOBOX, cerniere CLIP top, ante a ribalta AVENTOS): copre 45 famiglie, 1.936 codici articolo verificabili e un manuale tecnico di 758 pagine. Costruito su pattern proprietari di context engineering — push deterministico del contesto invece di tool che il modello potrebbe dimenticarsi di chiamare, gate logic server-side con marker espliciti, tool_choice forzato API-side per i punti ad alto rischio, single source of truth con derivazione automatica MD→Python→system prompt — e gated da un eval set deterministico che fa da rete di sicurezza per i refactor. In produzione LAN dal 2026, costo ~€0,05–0,15 per conversazione. - [Architettura wiki: framework interno di knowledge management AI-maintained per applicazioni di assistenza tecnica industriale](https://andreapellizzari.it/lavori/architettura-wiki/): Un framework proprietario a quattro layer — schema di istruzioni tipizzate, wiki markdown accumulato dall'agente, sorgenti autoritative immutabili, indici derivati SQLite — che ho costruito per poter partire più in fretta sui progetti di knowledge base AI in ambito industriale. Double-pass ingest con confidence queue anti-allucinazione, citation per-claim inline, editor live per il cliente proprietario della knowledge base, log delle conversazioni append-only, costi misurabili al centesimo. Applicato in produzione sulla ferramenta (si veda la case study ai-knowledge-base) e in sviluppo su un secondo verticale per la conformità ISO. - [Sistema di assistenza ticket con plugin Outlook VSTO, AI summary con Claude e integrazione Mexal via proxy PHP](https://andreapellizzari.it/lavori/ticket-assistance/): Piattaforma di gestione ticket per assistenza clienti B2B, in produzione interna su due istanze gemelle (stessa codebase, deploy separati). Plugin Outlook nativo VSTO .NET che allega email al ticket con un click, riassunti AI generati da Claude via tool calling, integrazione Mexal per anagrafiche e storico ordini, access-token pubblici per condivisione sicura con riparatori esterni. - [Consuntivazione automatica dei rebate fornitore: dalle fatture elettroniche in ingresso al rendiconto delle note di credito da chiedere](https://andreapellizzari.it/lavori/accordi-fornitori/): Un sistema che chiude il ciclo annuale degli accordi con i fornitori di un'azienda di distribuzione B2B multi-marchio: carica le fatture elettroniche ricevute via SDI, le incrocia con gli accordi in essere (sconti a volume, rebate a scaglioni, premi di categoria, pack a categoria combinata), calcola quanto accredito è effettivamente maturato, e produce il rendiconto con il delta di note di credito ancora da richiedere ai fornitori. Quello che prima si faceva a fine esercizio in Excel, con errori e accrediti dimenticati, ora si legge in un singolo report. Versione corrente 2.1. - [PowerApps operative con integrazione Mexal, Power Automate come orchestratore e migrazione selettiva a Next.js](https://andreapellizzari.it/lavori/power-platform/): Sei PowerApps multi-screen e oltre venti flow Power Automate costruiti per una PMI manifatturiera italiana del settore distribuzione tecnica: integrazione nativa con Mexal WebAPI, validazione dati real-time, routing SQL multi-backup, generazione preventivi on-demand, dashboard Power BI embedded. Oggi in migrazione selettiva verso Next.js dove la complessità lo giustifica. - [Porting PowerApps → web con sql-proxy Node.js: middleware singleton veloce e affidabile sulla intranet aziendale](https://andreapellizzari.it/lavori/porting-powerapps-nodejs/): Sei PowerApps operative già in pensione, cinque in pipeline di migrazione. Un servizio Node.js di circa 5.700 righe che gira come Windows Service sulla intranet e funge da middleware unico verso SQL Server del gestionale, Dataverse, Mexal WebAPI, Brevo email/SMS e MySQL. Frontend in HTML vanilla single-page, deploy versioning dentro il proxy stesso con rollback istantaneo, dual-write SQL+Dataverse per coesistere con le PowerApps ancora vive. - [DDT digitale web chiamabile dal gestionale Mexal: documento dinamico via WebAPI, con bypass DNS e debug live](https://andreapellizzari.it/lavori/ddt-digitale/): Un bridge PHP di circa 3.300 righe che rende in tempo reale la versione web di un documento di trasporto, richiamabile con un click dal gestionale Mexal. Integra sette endpoint WebAPI per ricomporre il documento da fonti multiple, bypassa il DNS intranet con IP hardcoded quando serve, e ha un sistema di debug live HTML+file che ho costruito ad hoc per troubleshooting in produzione. Piccolo in righe, distintivo nel pattern. - [Gestionale interno Scriptcase con 336 applicazioni, SGI ISO integrato e accesso diretto al database Mexal](https://andreapellizzari.it/lavori/gestionale-scriptcase/): Una piattaforma gestionale interna costruita in Scriptcase con 336 applicazioni in produzione, stratificata negli anni su un unico database SQL Server condiviso con il gestionale Mexal. Copre Sistema di Gestione Integrato Qualità-Ambiente ISO 9001+14001, valutazione fornitori, approvvigionamento con controllo sottoscorta ed esplosione produzione, configuratori di prodotto verticali, indagini statistiche (storici vendite/acquisti, analisi tempi produzione per operatore, forecast), HR/timbrature, ticket assistenza, portale B2B admin. Security Module Scriptcase con 2FA, dashboard Power BI embedded, integrazione Docuvision, perfino moduli AI. Non una web app: un ecosistema. - [Guida SPRIX e skill Claude Code auto-aggiornata per sviluppo su Mexal/Passepartout](https://andreapellizzari.it/lavori/documentazione-sprix/): Un sistema di conoscenza vivo sul linguaggio SPRIX e sulle WebAPI Mexal/Passepartout: guida markdown pragmatica + skill Claude Code richiamabile che si carica d'autorità su ogni progetto Mexal + due comandi custom (/mexal-discover e /mexal-changelog) che mantengono il catalogo endpoint e campi sincronizzato interrogando le API live e processando i PDF di changelog ufficiali. Non documentazione statica: un asset che invecchia più lentamente del manuale del vendor. - [Mestiere SPRIX: competenza tradizionale ma rara per integrare Mexal/Passepartout nel mondo moderno](https://andreapellizzari.it/lavori/mestiere-sprix/): Il lato pratico della mia competenza SPRIX — cosa significa davvero essere uno sviluppatore SPRIX sul gestionale Mexal/Passepartout, perché questa competenza è rara in Italia, a quali problemi reali risponde nelle PMI manifatturiere, e perché il mix con le competenze moderne (Next.js, Python, AI) è quello che rende possibili integrazioni serie tra gestionale tradizionale e web contemporaneo. Competenza maturata come sviluppatore interno, non come partner certificato. - [Chatbot "Rolando": assistente di vendita multilingua con product extraction inline, prompt caching Claude e contesto dinamico di pagina](https://andreapellizzari.it/lavori/chatbot-rolando/): Un chatbot conversazionale live dentro l'ecommerce B2B/B2C della PMI ferramenta, con la voce e il tono del fondatore storico dell'azienda. Widget React che parla in nove lingue, estrae in real-time i codici prodotto dalle risposte e genera schede card inline con immagine e prezzo, segue l'utente tra brand diversi e tra catalogo shop e flipbook PDF, ottimizzato via prompt caching Claude per tenere i costi sotto controllo su volume alto. Non un chatbot generico — un commesso AI che conosce il catalogo, il contesto della pagina e cosa l'utente ha nel carrello. ## Diario tecnico - [LangExtract: estrazione strutturata da testo, con la prova di dove viene](https://andreapellizzari.it/diario/2026-06-04-langextract-estrazione-verificabile/): Un esempio, non un modello addestrato: LangExtract estrae dati strutturati da testo non strutturato e ancora ogni valore all'offset esatto nel documento. L'ho provato sui cataloghi prodotto, ma penso gia' ai DDT di carico. - [Il coseno manca i codici esatti: retrieval ibrido su cataloghi PDF](https://andreapellizzari.it/diario/2026-05-27-retrieval-ibrido-cataloghi-pdf/): Un agente di vendita cerca dentro i cataloghi PDF dei produttori per similarità semantica. Ma su contenuto pieno di codici e misure, il coseno sbaglia proprio sui termini esatti. La cura: una gamba lessicale fusa con RRF. - [Microsoft 365 sotto sorveglianza: un monitor fatto in casa dopo un phishing](https://andreapellizzari.it/diario/2026-05-26-monitor-microsoft-365-fatto-in-casa/): Dopo un phishing arrivato da un fornitore compromesso ho costruito un monitor di sicurezza per il tenant Microsoft 365: headless, sola lettura, e con un trucco per leggere i log di accesso senza pagare la licenza Entra P1. - [Arcocat, due settimane di hardening: domain contracts, knowledge graph, catalog RAG](https://andreapellizzari.it/diario/2026-05-14-arcocat-due-settimane-hardening/): Diario in presa diretta delle ultime due settimane su arcocat. Quattro ondate di lavoro che spostano peso dal prompt al runtime: guardrail deterministici, discovery enforcement, routing per brand, streaming, knowledge graph indicizzato, catalog RAG, e otto policy YAML come fonte unica. - [Cambiare backend al giudice LLM: da Anthropic SDK a OpenRouter](https://andreapellizzari.it/diario/2026-05-11-openrouter-refactor-brand-mcp/): Ho riscritto un sistema di validazione LLM da SDK Anthropic a SDK OpenAI puntato a OpenRouter. Dieci volte meno costo, qualche gotcha Windows, un path di rollback semplice. - [La differenza fra una skill che dice cosa è rotto e una che lo aggiusta](https://andreapellizzari.it/diario/2026-05-11-skill-self-healing-prescriber-fixer/): Una skill che rileva problemi è utile. Una che classifica le issue per priorità, propone i comandi e li esegue automaticamente cambia il modo in cui lavoro. La differenza non è cosmetica, è strutturale. - [Filtrare grossolanamente, validare in dettaglio: il consiglio emerge da solo](https://andreapellizzari.it/diario/2026-05-06-filter-then-validate-consiglio-comparativo/): Combinando un filtro grossolano (PIM con attributi tipizzati) e una validazione chirurgica (Knowledge Tool con LLM-judge), la shortlist diventa comparativa senza che tu lo chieda. Il consiglio emerge dalla composizione. - [Roll-out multi-brand di landing page in PMI: il valore del pre-check](https://andreapellizzari.it/diario/2026-05-04-porting-multibrand-landing-pmi/): Sto portando cinque landing brand di un'azienda manifatturiera. Dopo le prime fasi, le lezioni più utili non sono di codice ma di workflow: pre-check prima di partire, branch+tag per fase, smoke test SEO automatico, decisioni utente cristallizzate prima del codice. - [Da default Vercel a manuale d'officina: redesign del portfolio in 8 wave](https://andreapellizzari.it/diario/2026-05-02-redesign-portfolio-skill-impeccable/): Il sito era caduto nel default Vercel-cream. La skill impeccable forza scelte di brand, register e gate sequenziali (teach, shape, craft) che salvano dall'AI slop. Otto commit per arrivare a 'Manuale d'officina'. - [Da Q&A bot a piattaforma multi-catalogo: il design dei tre strati](https://andreapellizzari.it/diario/2026-05-01-bot-10-percento-del-problema/): Sessione di design partita per disegnare il flusso di un chatbot tecnico interno. Finita con il design di una piattaforma multi-catalogo a tre strati. Il bot copriva il 10% del problema reale. - [Da una distinta sbagliata a un eval set: misurare invece di sperare](https://andreapellizzari.it/diario/2026-04-30-eval-set-misurare-invece-di-sperare/): Un chatbot tecnico interno restituisce cinque codici inventati su sei. Il fix funziona, ma il vero salto è quando smetti di sperare che i fix reggano e inizi a misurare con un eval set. - [Il giorno in cui il chatbot ha imparato a correggersi](https://andreapellizzari.it/diario/2026-04-29-chatbot-feedback-loop-autofix/): Un chatbot tecnico interno è un asset statico finché non costruisci il loop che lo fa evolvere. In una sessione ho aggiunto il sistema feedback con AI auto-fix: l'utente segnala un errore, l'editor scrive la correzione, l'AI applica il diff sul file MD del wiki. - [Far leggere un decreto legislativo all'AI: pipeline da .docx a Word](https://andreapellizzari.it/diario/2026-04-28-analisi-normativa-strutturata-con-ai/): Mi è arrivato un decreto legislativo da 270 KB in formato .docx con 26 articoli e centinaia di reati richiamati, da mappare sui processi aziendali. Ho costruito una pipeline che lo macina dall'estrazione XML al documento Word finale. - [Aprire il sito agli agenti AI: llms.txt, JSON-LD esteso e versioni raw dei post](https://andreapellizzari.it/diario/2026-04-28-aprire-il-sito-agli-agenti-ai/): Metà del traffico di ricerca tecnica oggi passa per LLM, non per Google. Sei modifiche concrete — llms.txt, JSON-LD esteso, versioni raw .md dei post — per farsi trovare da ChatGPT, Claude e Perplexity. - [Quando il preventivo arriva con il prototipo allegato](https://andreapellizzari.it/diario/2026-04-28-prototipo-allegato-al-preventivo/): Un contatto, software house partner Mexal, mi chiede aiuto per un preventivo che deve fare a un suo cliente: dashboard agenti su un ERP custom. In quindici minuti gli ho preparato proposta tecnica, demo HTML e PDF. Non era la dashboard — era il fatto che si presentasse da sola. - [Quando il bug si vede al primo click: audit UX automatizzato con Playwright](https://andreapellizzari.it/diario/2026-04-27-audit-ux-playwright-headless/): Ho usato Playwright in modalità headless per simulare un agente che apre la nostra PWA su tablet e clicca tutto: in trenta minuti sono usciti tredici bug oggettivi che gli utenti veri avrebbero visto al primo uso. - [Benvenuto nel diario](https://andreapellizzari.it/diario/2026-04-24-benvenuto-nel-diario/): Apro questa sezione del sito come quaderno pubblico: appunti brevi dalle sessioni di lavoro quotidiane su gestionali, integrazioni, AI applicata. Meno strutturato delle case study, più vicino a come succedono davvero le cose. - [Diagnostica 'perché questo codice non è pubblicato': una query grossa batte dieci query puntuali](https://andreapellizzari.it/diario/2026-04-24-diagnostica-codice-non-pubblicato/): Un articolo sparito dal sito è la domanda settimanale in ufficio. Ho scritto un tool Python+tkinter che risponde in due secondi con una query SQL e due chiamate FTP — e mi ha costretto a leggere come si deve le viste dell'ERP aziendale. - [L'editor come fonte di verità: normalizzare a valle, non a monte](https://andreapellizzari.it/diario/2026-04-24-editor-normalizzazione-post-ingest/): Ingest massivo da PDF, IDML, schede tecniche e gestionale produce dati affidabili al 60%. Invece di pulirli alla fonte, ho scelto di normalizzarli a valle con un editor editoriale che diventa la fonte di verità canonica. - [Mermaid nei miei MDX: diagrammi architetturali che vivono nel sorgente](https://andreapellizzari.it/diario/2026-04-24-mermaid-diagrammi-mdx/): Ho cominciato a usare Mermaid per i diagrammi tecnici del portfolio. Il vantaggio vero non è graphical — è che il diagramma è testo, versionabile, editabile in 10 secondi, e spiega da solo cose che la prosa fatica a trasmettere. - [Quando il pull non basta: products.json in push + Vercel Blob](https://andreapellizzari.it/diario/2026-04-24-products-json-vercel-blob-push/): L'hosting blocca Vercel con un captcha anti-bot e lo shop si svuota a campione. La fix non è un retry più furbo: è invertire il flusso da pull a push e usare Vercel Blob come unico strato coerente tra container. - [Script custom per backup: ho impiegato due ore a capire che era la scelta sbagliata](https://andreapellizzari.it/diario/2026-04-24-script-vs-tool-maturo/): Avevo iniziato a scriverci sopra uno script Python: zip AES, upload FTP, rotation, una password aneddotica come domanda di sicurezza. Due ore dopo ho capito che Duplicati open-source fa già la stessa cosa, meglio. Piccola riflessione sulla pigrizia virtuosa. ## Studi (analisi tecniche evolutive) - [Arcocat in sintesi: sette scelte tecniche e perche' contano](https://andreapellizzari.it/studio/arcocat-in-sintesi/): Pagina di sintesi per chi conosce un chatbot AI ma non l'ha mai costruito. Le sette scelte tecniche distintive di arcocat in tabella sinottica e in sette brevi sezioni problema-scelta-beneficio. Riferimento a quattro studi tecnici per approfondire. - [Arcocat come piattaforma agentica: come funziona l'infrastruttura](https://andreapellizzari.it/studio/arcocat-infrastruttura/): Il funzionamento logico di arcocat dall'alto: il cervello e il tool-loop, i mattoncini deterministici, il layer dati come fonte di verita', la svolta a piattaforma con client separati, e la traiettoria di assorbimento agentico di un'app gestionale esistente. - [Agentizzare un'azienda: timeline e flussi reali](https://andreapellizzari.it/studio/flussi-agentici-pmi/): Volume operativo dello studio sull'agentizzazione PMI. Timeline grafica che mostra quando entra ogni strumento; cinque flussi reali end-to-end (onboarding, chat tecnica, query cross-brand strutturata, generazione offerta, ETL notturno) con strumenti specifici per ogni passo; diagramma complessivo del sistema allineato all'architettura v2.0 a 5 livelli. - [Onboarding catalogo PDF in CPQ multi-brand: playbook 7 fasi](https://andreapellizzari.it/studio/playbook-onboarding-catalogo-pdf/): Playbook operativo per chi vuole iniziare domani ad aggiungere un nuovo catalogo brand (PDF voluminoso) a un sistema CPQ multi-brand seguendo lo stack v2.1. Sette fasi con strumenti, prompt template per Claude Code, anti-pattern, stima tempi realistica per i primi N brand. Versione astratta del playbook usato in azienda; i passi sono trasferibili a ogni dominio con catalogo tecnico denso. - [Agentizzare una PMI: stack, architettura, strumenti](https://andreapellizzari.it/studio/stack-agentico-pmi/): Mappa architetturale per costruire sistemi agentici dentro una PMI manifatturiera. Modello bi-dimensionale (knowledge verticale per brand + cross-cutting orizzontale per dato strutturato), cinque livelli (typed query, supervisor filter-then-validate, fonti eterogenee, configuration context, infrastruttura), framing CPQ, sette principi guida, modello di esecuzione asincrono, memoria a tre livelli, quattro contratti tipizzati, strumenti open source, dimensionamento VPS. - [Wiki narrativo AI-maintained: architettura di conoscenza compilata per cataloghi tecnici](https://andreapellizzari.it/studio/wiki-narrativo-ai-maintained/): Pattern per costruire un chatbot tecnico interno su un manuale fornitore PDF voluminoso, senza allucinazioni sui codici articolo. Pipeline OCR doppia, wiki autoritativo a 4 categorie, single source of truth, cinque pattern di context engineering, eval set come gate. Nello stack v2.0 questo pattern descrive il livello *Knowledge editabile* (Knowledge Tools per brand + schema PIM + Rule Engine), una delle componenti del modello bi-dimensionale. - [Studio: cosa e' e come funziona](https://andreapellizzari.it/studio/manifesto/): Perche' esiste questa sezione, come si differenzia dal diario, come leggere lo stato 'in evoluzione' di un documento. Dichiarazione di metodo della sezione. ## Risorse - [Sitemap XML](https://andreapellizzari.it/sitemap.xml) - [Feed RSS del diario](https://andreapellizzari.it/rss.xml) - [Contenuto completo per LLM](https://andreapellizzari.it/llms-full.txt) - [Profilo LinkedIn](https://www.linkedin.com/in/andrea-pellizzari-43057329a/) - [Profilo GitHub](https://github.com/pellizzariandrea-art)