Help Center

Recording expenses

Chris Muench
Chris Muench
  • Updated

Use the Expenses module to record what the business spends — date, amount, tax, payment type, category, recipient and optional cash pulled from a register. Root and child categories keep reporting clean, and Profit and Loss only tells the full story when expenses are entered.

Sales show money coming in. The Expenses module records the money spent running the business — rent, supplies, reimbursements, contractor payments — so you can see where money goes, run expense reports, and get a Profit and Loss that reflects the real picture instead of just revenue. Open it by clicking Expenses in the left menu.

Create a new expense

  1. Click Expenses in the left menu.
  2. Click + New expense in the top right.
  3. Fill out the New Expense page — any field in red is required — and click Save in the bottom right.

The fields, in order:

  • Date (required) — when the expense occurred. Defaults to today; change it when you are catching up on paperwork.
  • Amount (required) — the amount of the expense minus tax.
  • Payment (required) — the payment method used, chosen from your payment types (cash, check, card, and any custom tenders).
  • Tax — the amount of tax paid as part of the expense, entered as an amount (not a percent). Enter 0 when there was none.
  • Description (required) — a brief description for your records; it is what you will scan for in the expense list.
  • Type (required) — a short free-text label for the kind of expense.
  • Reason — an explanation of why the expense happened.
  • Category (required) — pick from your expense categories so reports group cleanly. You can also click Add Category right on the form to create one without leaving, or open the full category manager (see below).
  • Recipient Name — a dropdown of your employees naming who received the money; it defaults to you (the signed-in employee). Change it when someone else spent their own money and needs to be reimbursed.
  • Approved By — a dropdown of your active employees; start typing a name to filter. Record who signed off on the spend.
  • Expenses Note — any additional internal notes.
  • Remove Cash from Register — if the expense was paid with cash from a till, select which register the cash came out of (see below). Only registers that are currently open are listed, and the field appears once cash tracking is set up under Track Cash In Register in Store Config → Sales.
  • Pop Open Cash Drawer — shown while creating a new expense for employees with the Sales permission Add Remove Amounts From Cash Drawer; it opens the connected cash drawer so you can take the money out at the counter.
  • Add Files — attach files of any format to the record: the receipt, an invoice, a photo.

Each expense is automatically stamped with the location you are logged into, so multi-location stores can report spending per store.

Pull cash from a register

When you select a register under Remove Cash from Register, PHP Point Of Sale subtracts the expense total — amount plus tax — from that register's expected cash count and writes an entry in the register's audit log naming the expense. That keeps the drawer honest at closeout: the missing cash is explained by the expense record instead of showing up as a shortage. Editing the expense later reverses the old register entry and applies the new one. Drawer workflow itself is covered in registers and cash management.

Edit an expense

  1. Click Expenses in the left menu.
  2. Locate the expense and click Edit in the Actions column.
  3. Adjust anything on the Update Expenses page and click Save in the bottom right.

Delete and restore expenses

To delete: tick the checkbox on one or more expense rows, click Delete above the list, then OK in the confirmation popup. Deleting is soft — the record is hidden, not erased.

To restore a deleted expense: click the ellipsis (...) in the top right, select Manage Deleted Expenses, tick the row(s), click Undelete, then Done to return to the normal expenses page.

Expense categories

Categories are how expense reporting stays readable: create groupings that match how you think about the business — Occupancy, Marketing, Supplies, Payroll reimbursements — before you have dozens of uncategorized rows.

  1. Click Expenses in the left menu.
  2. Click the ellipsis (...) in the top right and select Manage categories. (This requires the Manage Categories permission on the Expenses module.)

The manager offers:

  • Add root category — a top-level grouping. Enter the Category Name in the popup and click Save.
  • Add child category — a subsection of another category. Pick the Parent Category from the dropdown, type the Category Name, and Save. Any category can have multiple children, and children can have children of their own — for example a root category Property with children Landscaping and Building, and a Seasonal child under Landscaping.
  • Edit — rename a category; click Edit next to its name, change it, and Save.
  • Delete — removes the category from the manager and from the Category dropdown. It cannot be undone from the interface. Deleting a parent also hides all of its child categories, and expenses already filed under the category keep it — the name still shows in the expense list and reports, but you can no longer pick it for new or edited expenses.

If you type a category that does not exist yet while creating an expense, it is created for you on save.

Permissions

Expense access is controlled per employee in permissions and templates:

Permission What it allows
Expenses module access See Expenses in the left menu
Add Update Create and edit expenses
Delete Delete and undelete expenses
Search Search and list expenses
Manage Categories Create, edit and delete expense categories

The Expenses permission under the Reports module separately controls who can run expense reports.

Where expenses show up

  • Expenses Summary Report — expense totals grouped by category.
  • Expenses Detailed Report — each expense with date, category and amount.
  • Profit and Loss — combines sales revenue, cost of goods and the operating expenses you log here; if expenses are not entered, P&L can only show part of the story. See running reports for date ranges, exporting and emailing.
  • Register reports and closeout — expenses paid with register cash appear in the register's audit log and reduce its expected cash; see registers and cash management.
  • QuickBooks — when your accounting sync posts journal entries, expense accounts are mapped in the connection described in QuickBooks and accounting.

Common questions

Should Amount include the tax? No. Amount is the pre-tax figure, and Tax holds the tax amount separately. When cash is removed from a register, the full amount-plus-tax is subtracted from that register's cash.

Who should I pick as Recipient Name? It defaults to the signed-in employee. If the money did not go to a specific employee, leave it on the employee who handled the purchase — the field exists mainly so reimbursements are traceable.

How do I record an expense paid from the till? Create the expense with payment type cash and choose the register under Remove Cash from Register; use Pop Open Cash Drawer to physically take the money. The register's expected cash drops by amount plus tax and the audit log records why.

I deleted an expense by mistake — can I recover it? Yes: ellipsis (...) → Manage Deleted Expenses, tick it, Undelete. Deleted expenses are never purged, so this always works.

What happens to expenses in a category I delete? They keep their category name in lists and reports, but you can no longer select it — reassign them first if you want them under a live category. Deleting a parent also hides its children, and category deletion cannot be undone.

Do expenses affect my Profit and Loss automatically? Yes — every recorded expense flows into the Profit and Loss report for its date and location. That is the main reason to enter expenses promptly and consistently.

Can each store track its own expenses? Yes. Expenses are stamped with the location you were signed into when creating them, and expense reports can be run per location.

Was this article helpful?

0 out of 0 found this helpful

Have more questions? Submit a request

Comments

0 comments

Please sign in to leave a comment.