Quote Costs & Billing: Pay Cycle Billing

Vehicle costs, taxes, projected value, and pay cycle billing

Pay Cycle Billing

Pay Cycle Billing calculations are applied to quotes when the Quotes / Contract "Pay Cycle" is not 'Monthly'. e.g. 'Fortnightly' or 'Weekly'.

When a quote is accepted or settled, the Contracts / Billing "Periodic Interval" is set to 'Monthly' and the budget records will contain monthly values, or it can use values calculated from the quote's "Pay Cycle". This is determined by the settings in the client record.

A contract with monthly billing values can still be edited and changed away from 'Monthly' if needed later.


Quotes

The Quotes / Contracts "Pay Cycle" defaults in from the driver's record.

  • If no driver has been selected, or their "Pay Cycle" is blank, the Clients / Quote Defaults "Pay Cycle" is used.

  • If the "Pay Cycle" field is left blank, the Clients / Contract Defaults "Billing Interval" (which is 'Monthly') will be applied.

This field can be edited and the list of available pay cycles comes from the table.

If you create, copy, or edit a quote and the quote's "Pay Cycle" does not match the driver's "Pay Cycle", you will be warned when saving.


Accepting or Settling Quotes

If the Clients / Contract Defaults "Contract Pay Cycle From Quote" is checked AND the selected Quotes / Contract "Pay Cycle" is set with = 'yes' THEN:

  • The Quotes / Contract "Pay Cycle" will be used to populate the contract when a quote is accepted or settled.

  • The Contracts / Billing "Billing Interval" and "Total Billings" are created to match the calculated quote values.

  • The Contracts / Lease budget amounts are calculated to match the selected pay cycle. See the section below for the calculation that is used.

If Clients / Contract Defaults "Contract Pay Cycle From Quote" is unchecked, or = 'no':

  • The contract's billing values are created using monthly values.


Roundings for Calculations

Values being calculated for "Total Billings" or for budget amounts are rounded by the factor that is stored in the Global Control "paycyclebillingroundingmethod".

Values may be 'floor', 'ceil', 'round' or 'none'. 'none' is not recommended.


New Contract Recalculation

Editing "Months Deferred"

If the contract has not yet invoiced, editing the "Months Deferred" value will re-calculate the pending budgets.

Example Scenario

  • "Lease Term" is '36'

  • "Periodic Interval" is 'Monthly'

  • "Months Deferred" is being changed from '0' to '2'

  • "Total Billings" is '36'

Calculation

Description

Calculation

Example

Calculate the new Total Billings

Term - Months Deferred

36 - 2 = 34

Calculate the existing Finance budget LTD Total

FIN Budget * Existing Total Billings

$1,000.00 * 36 = $36,000.00 FIN LTD Budget

Calculate a new monthly Budget

ROUND ( FIN LTD Total / New Total Billings , 2 )

$36,000.00 / 34 = $1058.823529 FIN (Monthly raw)

Apply paycyclebillingroundingmethod

ROUND ( FIN , 2 )

ROUND ( 1058.823529, 2 ) = $1,058.82 FIN (Monthly rounded)

Editing "Periodic Interval"

If the contract has not yet invoiced, editing the "Periodic Interval" value will update the contract and re-calculate the pending budgets.

Example Scenario

  • "Lease Term" is '36'

  • "Periodic Interval" is being changed from 'Monthly' to 'Fortnightly'

  • "Months Deferred" is '2'

  • "Total Billings" is '34'

Calculation

Description

Calculation

Example

Calculate the existing Total Billings

Term - Months Deferred

36 - 2 = 34 Total Billings (Monthly)

Convert the existing Total Billings into Years

Total Billings (Monthly) / 12

34 / 12 = 2.83333 (Years)

Multiply by the new Periodic Interval

Years * Periodic Interval (Fortnightly) = Total Billings (Fortnightly)

2.83333 * 26 = 73.66667 (Fortnightly raw)

Apply paycyclebillingroundingmethod

ROUND (Total Billings (Fortnightly), 0)

ROUND (73.66667, 0) = 74 Total Billings (Fortnightly rounded)

Editing "Periodic Interval" and "Months Deferred"

If the contract has not yet invoiced, you can edit both the "Periodic Interval" and "Months Deferred" fields to re-calculate the pending budgets.

However, changing "Months Deferred" requires the total budget value to be re-calculated before the "Periodic Interval" re-calculation can be performed.

Example Scenario

  • "Lease Term" is '36'

  • "Periodic Interval" is being changed from 'Monthly' to 'Fortnightly'

  • "Months Deferred" is being changed from '0' to '2'

  • "Total Billings" is '36'

Calculation

Description

Calculation

Example

Calculate the new Total Billings

Term - Months Deferred

36 - 2 = 36

Calculate the existing Finance budget LTD Total

FIN Budget * Existing Total Billings

$1,000.00 * 36 = $36,000.00 FIN LTD Budget

Calculate a new interval Budget

FIN LTD Total / New Total Billings

$36,000.00 / 74 = $486.4864865 FIN (Fortnightly raw)

Apply paycyclebillingroundingmethod

ROUND ( FIN , 2 )

ROUND (486.4864865, 2) = $486.49 FIN (Fortnightly rounded)


Existing Contract Recalculation

If the contract has commenced billing, changing the "Periodic Interval" to another interval will not recalculate the Budgets, but it will calculate the new "Total Billings" and "Remaining".

Example Scenario

  • "Lease Term" is '36'

  • "Periodic Interval" is being changed from 'Monthly' to 'Fortnightly'

  • "Months Deferred" is '2'

  • "Total Billings" is '34'

  • "Remaining" is '30' (4 months have been invoiced)

Calculation

Description

Calculation

Example

Convert the Billed Periods into Billed Periods (Fortnightly)

Billed Periods / 12 * Periodic Interval(fortnightly) = Billed Periods (Fortnightly)

4 / 12 * 26 = 8.66667

Apply paycyclebillingroundingmethod

ROUND(Billed Interval Periods,2)

ROUND(21.66667, 2) = 9 Billed Periods (Fortnightly)

Calculate Total Billings

Total Billing(Fortnightly unmodified) - Billed Periods (Fortnightly) + Billed Periods (Monthly)

74 - 9 + 4 = 69 Total Billings (Fortnightly modified)

Remaining

Modified Total Billings - Monthly Billed Periods

69 - 4 = 65 Remaining


Timing and Data Entry Issues

If you change the rounding method you use in the system to calculate Billing Periods, timing issues can arise.

  • Quote rounding is applied based on quote effective date and effective date of

  • Contract rounding is applied based on system date and effective date of (used when setting up a pay cycle billing schedule)

This means an inconsistency can occur if quotes raised before the changeover are accepted and then have pay cycle billing applied (pre-change quotes that are set-up as monthly contracts are unaffected).

The outcome would be that the budget values/Lease Rate could potentially not match what was quoted on the Quote (i.e. 48 months 2 months deferred = 199.33 pds (none), 199 pds (floor), 200 pds (ceil) and thus different answers would result).

"Term" and "Months Deferred" are used to calculate "Total Billings". This is the number that is used to derive any budget recalculations. If you edit "Periodic Billings" directly, any budget recalculations will not match.


Set up Notes

  • Check the list of records in the table, these are all available for selection in the Quotes / Contracts "Pay Cycle" list box. Remove any that you do not want to use.

  • Check which pay cycles you want to make available for billing.

  • Set as 'yes' for these.

  • Only these records can be selected in the Contracts / Billing "Periodic Interval" field listbox.

  • Additional pay cycles can be added to if needed, making sure is set to 'yes' to make them available in the "Pay Cycle" list box.

  • Other fields in the gbpaycycles table will need to be updated to complete the set up. i.e.: number of pay cycles and/or tax cycles needed per year.

  • They will still respect other settings when set up.

  • If you are using Driver Reports, check that your selected pay cycles are available for driver reports.

  • Driver Reports currently support the use of Weekly, Fortnightly ('fortnightly' & 'fortnightly2'), Monthly, 4 Weekly, Quarterly and Annual pay cycles.

  • Bi-monthly and semi-annual pay cycles are not supported.

  • For newly added pay cycles, please discuss this requirement with your Account Manager.

  • If you want to use a second fortnightly choice to your system, 'fortnightly2' needs to be added to the gbpaycycles table to enable its use.

  • The calculations are identical to the 'fortnightly' record.

  • This allows you to identify fortnightly contracts with different billing parameters.

  • Check the Clients / Quote Defaults "Pay Cycle" defaults as required.

  • The standard default is set as 'monthly', but can be updated in Setup / Reference Data → gbcontrols "fmclientspaycycle_default".

  • Check the setting of Clients / Contract Defaults "Contract Pay Cycle From Quote" defaults as required.

  • This is set to default as 'no' by default, but can be updated in Setup / Reference Data → gbcontrols "fmclientscontractpaycyclefromquoteflag_default".

  • Setting this to 'yes' brings the pay cycle of accepted quotes across to the new contract for billing.


Global Controls

Setup / Reference Data → gb_controls

Module

Name

gb


Useful Queries

List the Pay Cycles that can be used in your system when Clients / Contract Defaults "Contract Pay Cycle From Quote" is checked.

SELECT pay_cycle_code AS billing_interval,pay_cycles_per_year FROM gb_pay_cycles WHERE billing_flag = 'yes' ORDER BY pay_cycles_per_year DESC;