How much your people can take off, and asking when it is more
Set a dollar and a percent ceiling per role. Under it the discount applies at once; over it nothing comes off the ticket until somebody with the key says yes.
For owner, manager, service advisor · checked against the product on 2026-09-07
A shop with no limits set works exactly the way it always has: anybody who can work a ticket can take any amount off it. Typing a number into Settings › Discount limits changes what happens next, and touches nothing already discounted.
A limit does not refuse a discount. It reroutes it. Under the ceiling the money comes off immediately; over it, the request goes to somebody who can approve it and None of this is in the total above. It comes off the ticket only when somebody approves it. That sentence is on the ticket for a reason — until an approval lands, there is genuinely no discount on this order. Not a held one, not a pending one. Nothing.
Setting the limits
Open Settings and press Discount limits. You need the settings key, which owners and managers hold. Two roles get a row: Manager and Service Advisor. Nobody else can discount a ticket in the first place, so nobody else has a ceiling to set.
Each role has two boxes, Dollar limit and Percent limit, and they are independent. Fill both and both have to hold — the smaller one is what bites. The screen reads the row back to you in a sentence, like A service advisor discounting more than $10.00 sends it for approval instead of applying it.
Blank and zero are not the same thing, and getting them backwards is the mistake to avoid. Blank means no limit of that kind. Zero means not a cent without asking. Leave both blank and that role asks nobody.
Saving says Saved. Repair orders already discounted are untouched. A limit that is not a whole number, or a percent over a hundred, comes back with A limit is a whole number, or blank for no limit. The percent cannot be more than 100.
Asking for one
The Discount panel sits under the totals on the ticket. It is folded shut on an ordinary order — its one line shows what has already come off, and it opens itself whenever a request is waiting for an answer. Open the panel, then open + Take something off, which reads + Ask for a discount if you have a limit. Pick Dollars or Percent, type the amount, and write the reason — the reason is required, and 240 characters is the ceiling. The button tells you which world you are in before you press it: it reads Apply discount when you have no limit and Apply or send for approval when you do, with your own ceiling printed underneath.
Under the limit, the total moves as you watch. Over it, a block appears reading Waiting for approval with the amount, who asked and why. Anyone looking at the ticket sees it, including the customer-facing people who cannot approve it — their copy says a manager or the owner answers this, and that nothing else on the ticket is held up by it.
One open request per ticket. A second one is refused with Dana Reyes has already asked for a discount on this ticket — that one has to be answered first.
Approving and declining
You answer on the ticket, in the same panel. Approve takes an optional note and puts the money on the order there and then. Decline needs a reason — the box is headed Why not — and does nothing whatsoever to the ticket, because nothing had been done to it. The request closes with your name and your reason on it, and the advisor can ask again.
The key is called Approve a discount over the limit and owners and managers hold it out of the box. It is an ordinary row in the permission matrix, so a shop can move it — see changing what a role can do.
Nobody answers their own request, ever, including an owner who holds every key in the shop. The screen says You asked for this one, so somebody else has to answer it. If a manager is limited and asks, an owner answers. And an owner cannot be given a limit at all — there is nobody above them, so a request from an owner would be one nobody alive could answer.
When the line the discount was about is removed
A discount can be asked for on one line rather than the whole order — the ask is in that row's … menu on the labor and parts tables. So there is an obvious next question: what happens to the ask if somebody then takes that line off the order? The answer depends on one thing only, which is whether the money had already moved.
If the ask was still Waiting for approval, it is withdrawn along with the line, and pressing Remove labor line says so: Removed the line and withdrew its pending discount ask. Nothing had come off the order, so nothing has to be given back. The request is not deleted — it closes as declined, with the reason recorded as the line having been removed, and it reaches whoever asked on their bell like any other answer. The ticket is then free for a new request, because only one can be open at a time.
If the discount was already approved and applied, the line will not come off. You get A discount somebody approved is on this line, so it stays on the ticket — decline the whole service if the customer is not having the work, which takes its price and its discount off the total together. That is the honest way out: a declined service prices at zero, so the work and the money off it leave the order together, and the approval still points at the job it was granted against instead of quietly becoming a discount on the whole car.
Every step is on the audit trail as money: the limit being set, the ask, the approval or the decline, and the reason in the sentence rather than buried. Reports credits the discount to the person who asked for it, not the person who signed it off, which is the number you actually want when you are looking at who gives money away.
You do not have to be told a request is waiting, and you do not have to open the car to find it. Discount requests is a screen of its own — search for it, or follow the bell, which links straight to the row rather than to the top of a list. It says how many are waiting, flags any that can no longer be approved because the car was invoiced in the meantime, and answers them in place. The count in the header of Settings › Discount limits is the same set of requests.