AI-basert bilagsassistent for små håndverksbedrifter
Bilagspilot er et porteføljeprosjekt som viser hvordan AI kan spare tid i første del av bilagsarbeid. Appen leser fakturaer og kvitteringer, foreslår nøkkelfelt, lar brukeren kontrollere og rette data, og eksporterer godkjente bilag til CSV.
Dette er en demo, ikke et godkjent regnskapssystem.
- Laster opp PDF, PNG og JPG.
- Bruker OpenAI Vision/API til å hente ut leverandør, dato, totalbeløp, MVA, valuta, bilagsnummer og kategori.
- Viser resultatet i et redigerbart skjema.
- Merker bilag som
OK,Må sjekkesellerMangler data. - Lagrer godkjente bilag i SQLite.
- Eksporterer godkjente bilag til CSV.
- Backend: Python, FastAPI, SQLite
- Frontend: React, Vite, TypeScript
- AI: OpenAI Responses API med bilde/PDF-input
- Eksport: CSV
git clone https://github.com/wessel05j/bilagspilot.gitWindows PowerShell:
cd bilagspilot\backend
py -m venv .venv
.\.venv\Scripts\activate
pip install -r requirements.txt
copy .env.example .env
uvicorn app.main:app --reloadLinux/macOS Bash:
cd bilagspilot/backend
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp -n .env.example .env
uvicorn app.main:app --reloadIkke bruk Bash-kommandoer med && i gammel Windows PowerShell. Bruk PowerShell-blokken over.
Legg inn din egen API-nøkkel i backend/.env:
OPENAI_API_KEY=your_key_hereBackend kjører på http://localhost:8000.
Frontend kjøres i en annen terminal. Kjør kommandoene fra mappen der du klonet repoet.
Windows PowerShell:
cd bilagspilot\frontend
npm install
npm run devLinux/macOS Bash:
cd bilagspilot/frontend
npm install
npm run devFrontend kjører på http://localhost:5173.
- Start backend og frontend.
- Åpne
http://localhost:5173. - Last opp et falskt bilag, for eksempel
demo/fake-bilag.pdf. - Kontroller feltene AI foreslår.
- Rett eventuelle feil direkte i skjemaet.
- Trykk
Godkjenn, ellerAvvis og sletthvis bilaget ikke skal brukes. - Trykk
Eksporter CSVfor godkjente bilag.
Hvis frontend sier at OPENAI_API_KEY mangler selv om du har lagt den inn:
- Sjekk at nøkkelen ligger i
backend/.env, ikke bare i.env.example. - Restart backend etter at du har endret
.env. - Åpne
http://localhost:8000/api/healthog se atopenai_configuredertrue. - Hvis backend kjører på en annen port enn
8000, oppdaterfrontend/.envmed riktigVITE_API_BASE_URL.
Hvis PowerShell sier at && ikke fungerer, bruk Windows PowerShell-kommandoene i README.
Backend:
cd backend
pytestFrontend:
cd frontend
npm test
npm run buildBackend bruker backend/.env lokalt. Eksempel ligger i backend/.env.example.
Viktige variabler:
OPENAI_API_KEYOPENAI_MODELDATABASE_URLUPLOAD_DIRFRONTEND_ORIGIN
Frontend kan bruke frontend/.env hvis API-adressen skal endres:
VITE_API_BASE_URL=http://localhost:8000- Ikke commit
.env. - Ikke commit
uploads/. - Ikke commit lokal SQLite-database.
- Ikke bruk ekte kundedata eller ekte bilag i demo.
- Bruk bare syntetiske testbilag.
- Appen er ikke et regnskapssystem.
- AI-forslag må alltid kontrolleres av et menneske.
- CSV-eksporten er enkel og laget for demo/portefølje.
- Det finnes ikke innlogging eller rollebasert tilgang ennå.
MIT
- Excel-eksport.
- Bedre håndtering av flere sider og store PDF-er.
- Innlogging.
- Flere kategorier og regler per bedrift.
- Bedre revisjonsspor for manuelle endringer.
