Annoyed with Harvest's awkward work-around for invoicing day rates? This script allows you to track your hours against a project as normal, but generate the daily expenses, as suggested by Harvest, automatically.
It looks at your previous month's time entries, finds those that are non-billable, sums them
up per project per day, and creates expenses for any of those that exceed your MIN_HOURS_PER_DAY
setting.
- Copy
.env.example
to.env
- Add an Expense Category for your day rate in Harvest
- Set
HARVEST_EXPENSE_NAME
in.env
to the Expense Category's name - For the projects you wish to generate billing for, set their "Project Type" to "Time & Materials"
- Set the tasks within those projects that you use to record your time entries to non billable
- Create a Personal Access Token over at https://id.getharvest.com/developers and add the details to your
.env
file yarn install
- Run this script before doing your invoicing:
node generate.js