Skip to content

How do contracts and progress billing work?

Updated

Contracts and progress billing turns a corporate transport or service agreement into a single record, and makes that contract’s price, term and penalty clauses the ONLY source progress billing reads from. Instead of counting how many trips ran this month in a spreadsheet, the billing statement is built automatically from the trip log.

Who uses it

The module serves any business that agrees a price and scope with a customer up front and then runs that agreement day after day: transfer companies running staff shuttles or factory transport, businesses holding a school-service contract, taxi operators leasing out plates, fleet owners with long-term vehicle assignments. The shared need: the unit price comes from one place, and nobody counts the billing amount by hand.

How it works: price source, billing engine, penalty clause

The contract card carries the unit price; quotes, progress billing and invoices all read from this one price — a hand-typed billing amount is refused by the system. The billing engine sums the period’s completed trip records day by day into a breakdown by route, plate, driver and vehicle × day × unit price; a trip that didn’t run or was cancelled produces an automatic deduction line, and an ad-hoc extra trip enters the statement as its own separately-priced item.

The contract’s penalty clause (for example: a deduction after 3 delays in a month) applies to the billing period on its own; escalation coefficients (minimum-wage share, fuel share, PPI weighting) are fields on the contract card and fire on their own dates. A revision (an addendum) takes effect from its own start date forward — billing rows already approved in the past never change.

An approved statement renders as a signature-ready PDF, and its approval or dispute is recorded with who and when. Once approved, the statement converts into an invoice inside accounting in a single click, with no re-entry of data.

Example

Example: A transfer company signs a monthly service contract with a factory: 22 working days a month, two trips a day (morning and evening), a fixed 850 TL per trip. During the month one day’s trip is cancelled for a factory shift holiday, and two extra off-plan trips are added. At month end the billing engine rolls the 21 planned trips (minus the one cancellation), the 2 extra trips as their own line item, and the contract’s 5% fuel escalation into a single statement; the factory’s purchasing manager approves it, and the statement becomes an invoice the same day.

How it is done in Rotenta

  1. Sales opens a new contract card on the Contracts tab inside accounting, entering term, unit price, escalation coefficients and the penalty clause.
  2. Documents required for the vehicle/driver assigned under the contract are read from document tracking; an expired document blocks assigning a trip under that contract.
  3. Trips under the contract are tagged daily with the contract number on the trip record — no trip can be generated for that customer outside a plan, unless the firm has turned that rule off.
  4. At month end, “Generate statement” rolls every trip record from the period into the breakdown; deduction and extra-item lines are added automatically.
  5. The statement PDF goes to the customer’s authorised contact; their approval or dispute is recorded on the contract card.
  6. An approved statement converts to an invoice in one click and posts to the ledger as a single entry.
  7. A renewal task and expiry warning appear on the panel at 90/60/30 days before the contract ends.

A contract is also the price source for recurring shuttle planning: a plan generating a morning-and-evening route carries which contract it belongs to, so the billing period covers the trips that plan produced too. See how the module connects to the rest of the platform in our module guide.

Frequently asked questions

Can I hand-edit a billing amount?

No. The amount is calculated from the contract’s unit price and the trip records; a hand-entered figure is rejected. If a correction is needed, you fix the source — the trip record or the contract clause — and the statement recalculates.

If the contract price changes mid-month, does past billing change?

No. A revision only affects the period from its own effective date forward; previously approved billing rows are locked and never change.

Can a trip be generated without a contract?

That depends on a firm setting. With the contract requirement on, trip generation without a contract is blocked; businesses that do purely ad-hoc work can turn that rule off.

Do plate-lease agreements for taxi operators live here too?

Yes — taxi plate/vehicle lease contracts live in the same module; a payroll driver and a plate lessee are kept distinct, since one is a billing relationship and the other an employment one.

Does a contract start from a quote?

Usually, yes: an accepted quote in quotes and proposals can convert into a contract card, carrying its price lines over without re-entry. Check plan coverage on our pricing page, or reach us through contact.

More in this category

Get a quote

Leave your details and we'll get back to you the same day.

By submitting you acknowledge the Privacy Notice.