Bookkeeping software for portable sanitation companies
What that weekend actually made.
Link the sub-hauler's check, the fuel, and the dump fees to the job they paid for, and the Job & Route Profitability report shows what that job actually made. The books come from the same records your crews work from.
Every cost, tied to the job it paid for.
An expense is one record with everything the books need on it. The ledger slices by vendor, category, payment method, or amount, and pulls up what the accountant asks about first.
- Vendor and category
- Who you paid and what for: the sub-hauler, the fuel, the landfill. Flag a sub-hauler as a 1099 vendor and the vendors list keeps what you've paid them this year.
- The job
- Link the cost to the job it paid for. In Job & Route Profitability, a job's costs are the expenses linked to it and its revenue is its paid invoices, so a job isn't profitable until the customer pays.
- The receipt
- Attached to the record, read from a photo or PDF. The Missing Receipts filter lists every expense still without one before the accountant asks.
- Tax deductible
- A switch on each expense. The ledger keeps a year-to-date total of deductible spend, and the Tax Deductible filter lists it line by line.
- Bills that repeat, and card fees
- Set the yard rent, the insurance, and the truck payments up once as recurring expenses. PortaPro logs each one on its date, or just reminds you. Each settled card payment books its processing fee as an expense on its own, from what was actually charged.
The leftovers are the point.
Connect your bank and card accounts and each transaction lands next to your payments and expenses. PortaPro suggests the match; you confirm it. Then look at what's left.
- A deposit with no payment
- is a customer who paid and never got recorded.
- A withdrawal with no expense
- is a cost missing from your margins.
Add as expense turns a withdrawal you never logged into a linked expense in one step. A transfer between your own accounts gets Ignore, not a forced match. Transactions update once a day, and Sync now pulls today's. The connection is read-only: PortaPro can see what cleared but can't move a dollar.
A receipt in, an expense out.
Receipts stop living in the truck's cup holder. Each one is read, matched to what left the bank, and filed on the expense it belongs to, ready for tax time.
- Snap it or drop it
- Photograph a receipt on your phone or drop a stack of photos and PDFs into Expenses, Receipts. PortaPro reads the vendor, date, total, tax, and line items.
- It finds the bank line
- Each receipt is matched to the bank transaction it paid for, or to an expense entered without one. Confirm it and the expense is created, the receipt attached, and the bank line reconciled in one step. Nothing files itself.
- One run, several categories
- The parts store receipt is tank parts, shop supplies, and fuel. Split it by category or by its line items, tax spread across them, and each part lands on its own Schedule C line.
- Rules for the regulars
- Check Always use this once and the next Shell or landfill charge arrives with its category and vendor filled in. Rules fill in the form; you still confirm every expense.
- Your Schedule C lines
- Settings shows the Schedule C line every expense category lands on, and you can change any of them. The year-end export reads exactly those lines.
Month end, already added up.
The Sales Tax Liability report totals what you collected for any period, cash or accrual, by state, city, and county, and exports to CSV or PDF.
On Growth, Reports adds Profit & Loss net of card fees, expenses by category and vendor, and a year-end Schedule C export with every line your preparer asks for. Any of them can arrive by email every month.
Questions operators ask
Which plan includes bookkeeping?
Expenses, vendors, bills, banking, and the Sales Tax report come with Core and every plan above it. The reports that roll the books up, Job & Route Profitability, Profit & Loss, and the Schedule C export, are on Growth. Starter has quotes, invoices, and payments, but not the books.
Do I still need QuickBooks, Xero, or FreshBooks?
If your accountant works in QuickBooks, Xero, or FreshBooks, keep it. Connect QuickBooks Online and PortaPro pushes customers, invoices, and payments into it every night, one way, and expenses with their receipts attached too if you turn that on. Leave that off when your bank already feeds QuickBooks, or every expense lands twice. On QuickBooks Desktop it's a real live sync through the QuickBooks Web Connector, not a file you export and import by hand. Xero gets the same nightly push, and can take your Stripe fees, payouts, and expenses too. FreshBooks gets clients, invoices, payments, and credits every night. Expenses also export as a CSV with the vendor, category, job, and receipt links on every row.
Can PortaPro move money out of my bank account?
No. The connection is read-only. You sign in to your bank in a window run by Stripe, so PortaPro never sees your banking password, and it cannot make a payment or a transfer. Only an admin can connect or disconnect an account; any office user can work the reconciliation queue. Disconnect any time and the matches you made stay.
Will it code transactions automatically, and what if my bank isn't listed?
Rules fill in the category and vendor for the merchants you code the same way every time, learned the first time you check Always use this. They fill in the form; every expense and every match is still a decision you confirm, and every one can be undone. Coverage is strong for national and regional banks but doesn't reach every small credit union. For those, and for history older than the connection reaches, import the CSV, OFX, QFX, or Excel statement from your bank's website. Lines already in PortaPro are skipped, so an overlapping statement never doubles up.
See a weekend's margin, down to the sub-hauler's check.
Expenses, vendors, and banking come with Core. Job margins and Profit & Loss come with Growth.