Billing & QuickBooks
How billing flows When a case reaches Shipped, Casetop writes a charge per unit and files them onto that account's open monthly invoice — one invoice line per unit, priced from the account's price list (see Accounts & price lists). A unit with no price still ships — the line lands at $0 marked "unpriced" and the health banner nags you until it's fixed. Charges — more than one per case The case page has a Charges panel. The restoration charges appear there when the case ships; + Add charge puts anything else on the same case — a rush fee, an implant component, shipping, or a credit (enter a negative amount for a remake credit or a digital-scan discount). Add a charge before the case ships and it waits; add it after and it lands on the open draft immediately. Once the invoice is issued its charges are locked — void the invoice to reopen them. Each charge says whether it is on an invoice yet and which moment billed it — when the order came in, on a stage, when the practice approved — which is the answer when one appears at a time you did not expect. A charge you added by hand says nothing there, because somebody typed it. Invoices Office → Invoices: A/R aging tiles and a per-dentist monthly invoice list with a Due column, status chips, and an All dentists filter. Open an invoice to Issue invoice (draft → issued; the due date follows that practice’s own payment terms — Net 45 on the account means a due date 45 days out, not 30), Record payment for money received outside QuickBooks (check, ACH, card, cash, other — Casetop never writes payments into QBO, so record it there too if the invoice was pushed), Void (the shipped cases immediately re-bill onto a new draft, and any monthly fee on it is released so it posts again; invoices already paid, already pushed to QuickBooks, or with any payment recorded against them can't be voided — undo the payment first), Push to QuickBooks, and ✍️ Draft reminder for overdue balances. Issued invoices flip to overdue automatically after their due date. Typed a payment wrongly? Each manual payment on the invoice has an Undo next to it: the amount comes off, the balance goes back, and a paid invoice returns to issued (or overdue, if its due date has passed). A payment that came in from QuickBooks has no Undo — it is QuickBooks’ record and the sync would re-import it, so reverse it there instead. A card · portal payment can be undone, but undoing it does not refund the card: the dentist paid through Stripe, so refund it there as well if that is what you mean. Undoing is on your audit log, because money leaving the ledger is exactly what that trail is for. Record payment also takes the date the money arrived. It defaults to today; set it back for a cheque banked last month, because statements date payments by when they were received and a wrong date puts the payment in the wrong month on both statements. QuickBooks Online Connect once in Lab → Settings → Integrations. Pushed invoices create/match the QBO customer automatically (set a QBO customer id on the dentist's record to override); payments recorded in QBO sync back every 4 hours and mark invoices paid. Push is blocked until the invoice is issued and every line has a price. Sync errors surface immediately in the app-wide banner — bad data never flows silently. If you ever reconnect to a different QuickBooks company — moving off a sandbox, or changing accountants — the customer links Casetop stored point at the old company and QuickBooks rejects them with *Invalid Reference Id*. You do not have to do anything: the next push notices, drops the dead link and matches or creates the customer in the new company, then sends the invoice. Remakes When work comes back, open the case and use ↻ Log a remake in the Remakes panel. Casetop creates a NEW case carrying the same doctor, patient reference, restoration, material and units — including which arch a per-arch product was for — so the tech never retypes a crown, night guard or denture they already described — starting at the first stage with its own case number. Both cases link to each other, so the original shows what had to be redone and the remake shows what it replaces. Say whose fault it was: Our fault, Doctor, Shipping, or Not yet decided. Leaving it undecided is a real choice — a tech logs the remake the moment it arrives and an admin attributes it later from the same panel. A lab-fault remake is not billed: the ship-time charges price the work and then credit it in full, so the doctor sees what the remake was worth AND that they were not charged. A remake you CHARGE for — doctor fault, or fault not yet decided — is subject to the practice’s credit hold like any other new case; one you are absorbing is not, because freezing your own free rework would punish the practice for your mistake. Tick Don’t charge for this remake to override it either way — it defaults to on for our fault, and ticking it on a doctor-fault remake is how you absorb the cost to keep an account. Office → Insights carries the report: remake rate over 30 days, 90 days or a year, the count by fault and by reason, what your own remakes cost you in credits, and the rate broken down by doctor, technician and material — worst first, because that is the list you read to find the problem. Materials inventory Shipping a case deducts the catalog material matching the case (by name) by that material's units per case, with a ledger entry per case. Restock or correct counts from Office → Materials; set a low-stock threshold to get a banner, and use Usage report for consumption and days-of-cover. Both Dentists and Materials have Export CSV. Edit on any material fixes its name or description and sets the three numbers the deduction depends on: units per case (how much one case consumes), the low-stock threshold that triggers the banner, and a reorder URL so whoever spots the banner can buy more without hunting for the supplier.
This page uses JavaScript to render its full interactive content. Enable JavaScript, or continue reading at
https://casetop.io/docs/billing-and-quickbooks.