Biller Plus

How Biller Plus calculates every number

Biller Plus is deterministic: the same Jira worklogs, rates and settings always give the same numbers, and every number traces back to the worklogs that produced it (Project → Breakdown → click a row → worklogs).

Money and rounding

  • All amounts are stored as whole cents (minor units) with a currency. No floating-point money.
  • One worklog’s amount = hours × hourly rate, rounded to the nearest cent (half away from zero).
  • Invoice lines are priced as total hours × rate, so each line multiplies out exactly.

Which rate applies (most specific wins)

  1. Project + person · 2. Project + role · 3. Client + person · 4. Client + role · 5. Person · 6. Role · 7. Default

Within a level, the rate with the latest effective date on or before the worklog date applies. A raise never changes old worklogs. A person’s role is also effective-dated. The applied rate, its level and any exchange rate are stored with each calculated worklog.

Currency

Each project has one currency. A rate in another currency is converted with the exchange rate effective on the worklog date (entered by a finance administrator). Historic conversions never change.

Which project a worklog belongs to

A worklog belongs to at most one financial project. If scopes overlap, the most specific scope wins: selected issues → Epic → JQL filter → Jira project; ties go to the project created first.

Billable time

A worklog is billable if someone marked it billable, otherwise it uses the project default (internal projects default to non-billable). Cost always applies; billable value applies only to billable time.

Formulas

Number Formula
Labour cost Σ hours × effective cost rate
Billable value Σ billable hours × effective billing rate
Total cost Labour cost + expenses
Revenue (T&M) Billable value + billable expenses
Revenue (fixed fee) Contract value × % complete (max 100%) + billable expenses
Revenue (retainer) Monthly fee for each month elapsed (part months by days)
Revenue (milestones) Sum of completed milestones
Revenue (internal) 0
Profit Revenue − total cost
Margin Profit ÷ revenue (“—” when revenue is 0)
Value written off (fixed fee) Billable value − recognized revenue
Budget consumed Total cost ÷ current cost budget
Current budget Original budget + approved changes

% complete (one method per project)

  • Hours (default): hours logged ÷ (hours logged + remaining estimates). With no estimates: hours logged ÷ hours budget. With neither: unknown (“—”), never zero.
  • Issues: done issues ÷ all issues in scope. Story points: done points ÷ all points. Manual: entered.

Forecast cost (one method per project)

  • Actual ÷ % complete (default). With the hours method this equals actual + remaining hours × blended rate.
  • Remaining estimates: actual + remaining estimate × blended cost per hour so far.
  • Weekly burn: actual + average weekly burn (last 4 weeks) × weeks until the end date.
  • Manual: actual + expected remaining hours × blended rate, or a manual forecast cost. A forecast is never lower than the actual cost. Forecast total cost adds expenses to date.

Health

  • Budget check: forecast ÷ budget ≤ 90% Healthy, ≤ 100% At Risk, above Over Budget.
  • Margin check: ≥ 35% Healthy, ≥ 20% At Risk, below Over Budget.
  • The worst check wins. Thresholds are configurable per project and in Settings.

Hidden rate mode

People without rate access see money only for groups of 3 or more people. Person and worklog rows show hours only. When one small group is hidden, the next smallest group is hidden too, so a hidden amount cannot be found by subtracting visible rows from the total.

Coming soon to the Atlassian Marketplace

Questions first? Email support@transactful.com.