Portfolio

Project Info

Project Type

Laravel Applicatie
TALL-stack

More Info

Een dashboard waarmee een distributeur van supermarktproducten wekelijks Excel-prijslijsten van meerdere leveranciers uploadt, automatisch vergelijkt en klantprijslijsten genereert met een instelbare marge per klant.

Tailwind, Alpine, Livewire, Laravel (TALL-Stack)

In opdracht van Before Sales

In veel bedrijven neemt het vergelijken van leveranciersprijzen een flinke hap uit de werkweek. Zeker wanneer die prijzen in verschillende Excel‑lijsten binnenkomen en handmatig naast elkaar gelegd moeten worden, kan het gevoel ontstaan dat je meer bezig bent met administratieve rompslomp dan met écht inkopen. Voor dit project bouwde ik een dashboard voor een distributeur van supermarktproducten dat dit proces automa­tiseert: in één keer leveranciersprijzen overzichtelijk naast elkaar, met direct inzicht in de beste inkoopopties en gepersonaliseerde verkooplijsten.

Context & Scope

  • Aanleiding:
    Een distributeur van supermarktproducten ontvangt wekelijks Excel-prijslijsten van meerdere leveranciers. Het handmatig vergelijken van deze lijsten kostte veel tijd en was foutgevoelig. Ook het doorberekenen van de juiste marge per klant was een arbeidsintensief proces.
  • Mijn rol:
    Full-stack developer. Verantwoordelijk voor de import-pipeline, opbouw van de database, productmatching, prijsvergelijkingslogica en het genereren van gepersonaliseerde klantprijslijsten.
  • Doelgroep:
    Interne gebruikers van de distributeur die dagelijks werken met leveranciersprijzen en klantcommunicatie.
  • Uitkomst:
    Inkoopbeslissingen die voorheen veel handwerk kostten, zijn nu in één oogopslag zichtbaar. Klantprijslijsten worden automatisch gegenereerd en zijn direct verzendklaar.

Geïmplementeerde Functionaliteit

  • Excel Import & Productmatching:
    Leveranciers leveren wekelijks een Excel-bestand aan. Na upload worden de regels automatisch gekoppeld aan bestaande producten in het systeem op basis van productnaam of -code. Is een product nog onbekend, dan wordt er automatisch een nieuw product aangemaakt.
  • Prijsvergelijking per product:
    In het overzicht ziet de gebruiker per product wat het kost bij elke leverancier, naast elkaar met de goedkoopste leverancier bovenaan. Zo is direct duidelijk waar het voordeligst ingekocht kan worden en hoe prijzen zich week op week ontwikkelen. In de verkooplijsten ziet men altijd de meest actuele prijs.
  • Klantprijslijst met instelbare marge:
    Per klant kan een opslagpercentage worden ingesteld. Op basis daarvan genereert het systeem een gepersonaliseerde prijslijst: de inkoopprijs plus de gewenste marge, netjes opgemaakt en klaar om te versturen.
  • Productbeheer:
    Producten worden centraal beheerd in het systeem. Nieuwe producten uit een importbestand worden automatisch toegevoegd en kunnen daarna worden aangevuld met extra informatie zoals categorie of eenheid.
  • Uitbreidbaar fundament:
    De architectuur is opgezet met toekomstige uitbreiding in gedachten, zoals een bestelmodule waarmee klanten direct vanuit het systeem kunnen bestellen en het verwerken van facturen van leveranciers.

Resultaat

Wat voorheen uren handwerk kostte (prijslijsten vergelijken, marges berekenen, documenten opmaken) is teruggebracht tot een werkproces van enkele minuten. De distributeur heeft altijd een actueel overzicht van leveranciersprijs per product en kan voor elke klant met een paar klikken een gepersonaliseerde prijslijst genereren en versturen. Het systeem is daarnaast klaar voor een volgende fase waarin nog meer handwerk geautomatiseerd kan worden.