See Why Every Entry Is Priced the Way It Is
Each line in the monthly billing review now shows which rule set its rate — client default rate, after-hours rate, project rate, prepaid block, and so on — with a plain-English explanation on hover. If an entry has no billable rate, the label now tells you exactly what to configure instead of leaving you guessing.
One-Click Fix for Prepaid Entries
Occasionally a time entry can be attached to a prepaid block without its hours ever being taken out of the block's balance. These entries are now clearly flagged in the billing review, and a new repair action re-applies the entry to its block in one click — recording the deduction once, updating the block balance, and turning the entry back into covered ($0) time. The repair checks everything first, so it can't leave an entry in a worse state than it found it.
Safeguards for Prepaid Accuracy
- Billing runs now stop rather than guess. If prepaid coverage can't be verified while preparing billing, the run halts with a clear message instead of quietly pricing covered time at the standard rate.
- Large billing periods are fully counted. Very busy months could previously have entries silently left out of the review; results are now fetched completely no matter the volume.
- Deleted rates no longer linger. A billing rate you've deleted can no longer keep pricing new billing runs — entries fall back to the client's current default rate. Prepaid time that was already covered stays covered.
- Billing detail PDFs fail safe. If the data behind a prepaid billing detail PDF can't be fully loaded, generation retries rather than producing a document with wrong remaining-hours figures.