The Freelancer Kit  

← Back to all products

Free Freelancer Receipt Organizer Tool

Python Tool Runs locally — files stay private

Free Freelancer Receipt Organizer Tool

What this is

Who it's for: Freelancers keeping receipt files organised for tax time who are comfortable running a Python command.

Sort a folder of receipt images and PDFs into Year/Month folders, rename each one date-vendor-amount, and get a CSV log for tax-time record keeping — with Python 3, fully offline.

Free in full — download it and use it on your own freelance work.

Safety: this tool runs locally on your own computer in plain Python — your files stay private and nothing is uploaded. NO OCR: this tool never reads text inside an image or PDF. Date, vendor and amount come from the FILE NAME only. Files whose names carry no usable date or vendor are flagged needs_review=YES in the CSV log instead of being guessed. Accepted files are .jpg, .jpeg, .png and .pdf only; other files are skipped and reported, not moved. The CSV log is a plain record of what was filed. It is not a tax return and this tool is not tax advice.

User manual

  1. Put your receipt images and PDFs in one input folder.
  2. Run: python3 receipt_organizer.py <input_folder> <output_folder> (add --dry-run first to preview without moving anything, or --copy to keep the originals in place).
  3. Find the organised receipts in Year/Month folders, and the log as receipt-log.csv in the output folder.
  4. Check any row flagged needs_review=YES and rename those files with a date and vendor, then re-run.

Requirements

Python 3.8 or newer; no extra packages needed; nothing is uploaded anywhere.

Download details

Format: Python Tool

What is inside: receipt_organizer.py + README.md + samples/ (5 sample receipt files) + cover.png

Download free — receipt_organizer.py (9.7 KB)

How to run this tool, step by step →

Safety: this tool runs locally on your own computer in plain Python — your files stay private and nothing is uploaded.

Questions

How does it know the date, vendor and amount?

From the FILE NAME only. There is no OCR and no reading of text inside an image or PDF.

What happens to files it cannot parse?

They are flagged needs_review=YES in the CSV log instead of being guessed. Rename them with a date and vendor, or supply a vendor map as described in README.md, and re-run.

Does it move or copy my originals?

By default it organises the files into the output folder. Add --copy to keep the originals in place, or --dry-run first to preview without moving anything.

Which files does it accept?

Only .jpg, .jpeg, .png and .pdf. Other files are skipped and reported, not moved.

What are the sample files for?

The samples/ folder holds five small sample receipt files made for testing only — clearly labelled samples, not real receipts, containing no real purchase data.

Related products

← Back to all products