PortaPro

28-day billing software for portable toilet rentals

One rate card. Thirteen invoices a year.

Every site's units, rate, and service day live on the customer's rate card. Every 28 days PortaPro turns it into a draft invoice, and you approve the batch.

Start free trial

Every site, every unit, every rate.

The customer's rate card holds what each site pays and how often it's serviced. Each cycle's invoice is drafted from it, and the service jobs come from the same rows.

Thirteen cycles, not twelve.

A 28-day cycle matches four weekly services, and it adds one period to every account at the same rate.

JanAprJulOct

Thirteen 28-day cycles starting January 1. Cycle 13 runs Dec 3 to Dec 30.

Cycle 1 runs Jan 1 to Jan 28. Every cycle after it is 28 days, so most of them cross a month line.

Cycle 13 runs Dec 3 to Dec 30. Same rate, one more invoice.

From rate card to sent invoice.

The rate card already knows what everyone owes. Billing day is reading the batch and saying yes.

  1. The drafts cut themselves.

    Turn on automatic drafting and a nightly run cuts each customer's draft a few days before their cycle ends, or before it starts for a customer billed in advance. They wait in one queue, grouped by billing period.
  2. One sheet shows the whole batch.

    Or run it yourself. Pick the cycle and Generate Cycle Invoices lists every rate card customer due, with an estimate for each. Anyone already billed for that period is left out, so running it twice is safe. A draft with a prorated row, a site with no rate, or credit applied sorts to the top with the reason under the customer's name. Uncheck one to hold it, add the AP clerk to its recipients, or skip the period for that customer without leaving the list.
  3. Now, or on each cycle date.

    Send now runs on PortaPro's servers with a live count, so you can close the window and keep working. Or schedule the batch and each invoice sends itself on its own cycle boundary. Customers on autopay are charged as their invoice goes out.
  4. A second set of eyes on the book.

    Billing Health checks rate cards, cycle invoices, and credits overnight and emails the short list at 8:00, your time: a hand-wash station on a monthly rate while you bill every 28 days, two invoices for the same period, a new unit with no Bills from date. Each one says what to do. Nothing is changed for you.

Units on the ground you aren't billing for.

The rate card says what a site pays for. The unit pins say what's standing there. When a driver drops a seventh unit on a six-unit contract, PortaPro flags the site so the rate card catches up before the next invoice. Fewer units than the contract is left alone, on purpose.

Every shape of recurring work.

A rate card row is a unit count, a unit type, a rate, a rate period, and a service frequency. The rate period decides the bill. The frequency decides the visits.

By the pull
Front-load and pump routes bill per trip. The invoice reads “4 pulls included in base rate,” then “2 extra pulls @ $75/pull,” and a pull that finished late gets its own labeled line.
To the day
Each rate card row has a Bills from and a Bills until date. A cycle that only partly overlaps them bills prorated by days.
On their own day
Anniversary billing keeps a customer who started on the 8th billing on the 8th. Days run 1 to 28, so nobody skips February. Per month, per 28-day cycle, per week, flat, or per trip can all sit on one account, row by row.
Extras and freebies
Fuel surcharges, damage waivers, and hand-wash stations ride on the row as additional charges. A $0 rate is a complimentary unit, like the one donated to the city park: it prints at $0.00 so the customer sees it, and raises no flag.
The visits, too
The row's service frequency schedules the work. Save it and the service jobs land on the dispatch board marked Auto-scheduled, a few days before each visit is due.

Bill the city before the month starts.

Switch a customer to bill in advance and their draft is cut before the period it covers, carrying their PO number, so it clears approval while the units are in service. Last period's extra pulls ride along as a labeled true-up.

Questions operators ask

Does anything go out without me?

No. Every cycle invoice is a draft until you approve it. You can edit a line, change the period, or delete the draft before the customer sees it. Turn on automatic drafting and the drafts are cut a few days before each cycle ends; they still wait for you.

What if a site's rate is missing?

A row with no rate is left off the draft, and the invoice carries a review flag naming the site so it gets priced before it sends. The customer's Billing tab flags it too. A rate of $0 is different: that's a complimentary unit, and it bills at $0.00 on purpose.

I raised a rate mid-cycle. Which rate bills?

Your choice, set once for the company. By default every row bills at its rate on the day the invoice generates. Switch the rate basis to cycle start and a mid-cycle change waits for the next cycle. Moving a customer to billing in advance works the same way: expect one catch-up invoice on the first run and a steady rhythm after that.

Can the invoice show that the service was done?

Yes, when you turn on Show proof of service on invoices under Settings, Jobs. It's off by default. The invoice email says how many service visits the invoice covers, with a link to one page, no login needed, listing every completed visit in its service period with its own proof. The invoice PDF carries the same link, per-site invoice emails show Proof of service beside each site, and statements link it too.

Does it work with QuickBooks, and which plan is it in?

Rate cards, 28-day cycles, and batch cycle invoicing are in every plan, Starter included. Once sent, cycle invoices push to QuickBooks Online every night, or to QuickBooks Desktop through its live sync, with the rest of your invoices and payments. Drafts never go across.

See a month of cycle invoices drafted from one sheet.

We'll run Generate Cycle Invoices on a demo book with you.

Start free trial