Building Fisle on the Side
Furkan PortakalI work a corporate frontend job during the day. In the evenings we've been shipping Fisle — a tool that takes a photo of a receipt and turns it into a Luca-ready accounting entry. It's aimed at Turkish accountants (mali müşavirler) and small business owners who spend hours every month typing receipts into spreadsheets by hand.
Why this, why now
We kept running into the same problem in our own work — phone-camera receipts piling up, an Excel template that nobody wants to touch, hours that vanish at month-end. The work is repetitive enough that it should be automated, and the AI vision models that landed in the last year or two are finally good enough to do it well in Turkish.
The dominant accounting software here, Luca, accepts a specific Excel import format. So the loop is short: scan receipt → extract the fields an accountant cares about (vendor, line items, VAT, totals, account codes) → export the file Luca wants. We started a few months ago to see if that loop could be made small enough that nobody has to think about it.
What it does today
- Upload a photo or PDF → fields are extracted
- Mapped to the correct Turkish chart-of-accounts code (153 ticari mal, 191 indirilecek KDV, etc.)
- Exported as a Luca-compatible Excel
- A handful of free tools alongside it — KDV calculator, income tax calculator, account code lookup — that are useful on their own and also bring in search traffic
There's a free tier so people can try it without committing, and paid plans for accountants and businesses with real volume. First paying customers are in.
What's been hard
Two things, honestly.
OCR quality across a long tail of receipt formats. Turkish receipts aren't standardised. Thermal printer receipts from a market look nothing like a hotel folio or a restaurant invoice. Getting the extraction to be reliable across all of them — not just the easy 80% — takes a lot more iteration than the demos suggest.
Time, because this is a side project. A corporate job + a product means most of the meaningful work happens after 9pm or on weekends. The hardest part isn't the code, it's protecting the focus for it.
Stack
- Next.js 16 + Tailwind v4 on Vercel
- Cloudflare for DNS and the API (Workers, D1, R2)
- Better Auth for auth across client and worker
- A mix of vision/language model providers for the extraction step
Same shape as the rest of my work — written up in more detail in my stack post, kept small enough for a side project to maintain.