
Customer Asks for a Discount? Trade, Don't Cut
'Best price?' is a buying signal, not a price complaint. Here is the margin math behind a quick discount and the WhatsApp reply that holds your price.
A customer asking for a discount on WhatsApp should not get a lower number as the first reply. Hold the listed price and offer a trade instead: something extra for the customer in exchange for something that helps the shop, such as paying today or collecting the item themselves. "Best price?" is the message most shops receive right after "how much?", and the way your team answers it decides your margin more than any promotion does.
"Best price?" is a buying signal, not a complaint about your price. A customer who has decided against the item does not negotiate. They just leave. So the reply should protect the price and move the sale forward with a trade, such as free delivery for payment today or a bundle price for two units. A discount typed into WhatsApp is also a written record that gets screenshotted, forwarded and quoted back to you long after the sale.
Why is a lower number the wrong reply to "best price?"
Because the customer has not rejected your price. They have asked whether it is real. A quick discount answers that question in the worst possible way.
Three things happen when a shop replies to "last price?" with a smaller number.
The customer learns the first price was not real. If RM100 comes off in ten seconds, the reasonable conclusion is that another RM100 is sitting behind it. The next message is "can less some more?", and now you are negotiating against yourself.
WhatsApp writes it down. A discount offered at the counter disappears when the customer walks out. A discount typed into a chat is a screenshot. It goes to a sister, a colleague, a residents' group. It comes back three months later as "you gave my friend RM1,700".
Your number becomes someone else's opening bid. A customer comparing shops will often forward your reduced price to the next one and ask them to beat it. You have done the negotiating for a competitor, in writing, for free.
Here is the part most sales advice skips. Replying "sorry, fixed price" is not the fix either. It is honest, but it is a closed door. The customer asked a question that shows intent, and the reply gave them nothing to say yes to. The answer that works sits between the two: the price stays, and something else moves.
The wording changes by market. In Kuala Lumpur it is "boleh kurang?" or "last price?". In Singapore it is "can give discount?". In Jakarta it is "bisa kurang?". The structure of a good reply does not change.
What does a 10% discount really cost a small shop?
More than 10%. A discount does not come out of the price. It comes out of the margin, which is a much smaller number.
That figure comes from large listed companies (McKinsey Quarterly, 2003). For a small shop the arithmetic is simpler and harsher.
Take a furniture and mattress shop in Kepong selling a queen mattress at RM1,899. Say the gross margin is 30%, which is about RM570. A customer asks for 10% off. That is RM190, and every ringgit of it comes out of the RM570. The shop gave away a tenth of the price and a third of the profit.
To earn the same gross profit after that discount, the shop has to sell more units. The table below shows how many more, for an item with a 30% margin. The numbers are arithmetic, not a survey.
| Discount given | Margin left on a 30% margin item | Extra units needed to earn the same gross profit |
|---|---|---|
| 5% off | 25% | 20% more |
| 10% off | 20% | 50% more |
| 15% off | 15% | 100% more (double) |
| 20% off | 10% | 200% more (triple) |
The formula is the discount divided by what is left of the margin. Run it with your own numbers. If your margin is 20%, a 10% discount means selling twice as many units to stand still.
No single WhatsApp chat brings 50% more customers because you said yes to one of them. A discount given to close one enquiry does not buy volume. It is a gift, paid for out of profit.
Who is actually asking? The four customers behind "last price?"
Not every discount request is the same request. Four different customers type nearly the same words, and each needs a different reply.
| The customer | What they type | What it usually means | What to reply with |
|---|---|---|---|
| The habit asker | "Best price?" seconds after your quote | They ask every shop, every time. Many will buy at the listed price if the answer is warm and firm | Hold the price and offer one trade |
| The comparer | "Other shop quoted RM1,750" | There is a real alternative, or they are testing whether you will move | Ask what that quote includes: delivery, warranty, model year |
| The budget buyer | "My budget is RM1,500 only" | A real ceiling, not a tactic | A different product that fits the budget, not the same product for less |
| The volume buyer | "If I take three, how much?" | Real leverage. The one case where the price should move | A tiered price that only applies at that quantity |
The habit asker is the most common and the cheapest to answer well. They are not unhappy with the price. Asking is simply how they shop. Shops that publish prices openly, for example in a WhatsApp catalog that works as a price filter, still get the question. The catalog answers "how much?". Only your reply answers "is that real?".
The budget buyer is the one shops handle worst. Dropping a RM1,899 mattress to RM1,500 is a 21% discount on a 30% margin item. Showing them the RM1,499 model is a full-margin sale to the same person.
How do you reply to "best price?" on WhatsApp?
Confirm the price in the first sentence, offer one trade in the second, and ask for the next step in the third. The whole reply should fit on one phone screen.
Customer: Last price how much boss?
Shop: Ok for you I give RM1,700.
Customer: Last price how much boss?
Shop: RM1,899 is already our best price for this model, and it comes with the 10-year warranty. If you confirm today, I can include free delivery within Klang Valley. Shall I send the payment link for the deposit?
Harga RM1,899 tu memang dah harga terbaik untuk model ni, termasuk waranti 10 tahun. Kalau boss confirm hari ni, saya boleh bagi penghantaran percuma dalam Lembah Klang. Nak saya hantar link bayaran deposit?
The second reply gives the customer a win. Free delivery might cost the shop RM60. That is about 3% of the price, compared with the RM190 the first reply gave away. It is also tied to a condition, "if you confirm today", so when the screenshot travels, the condition travels with it.
How to Respond to a Customer Asking for a Discount on WhatsApp
A trade works because it has a fixed cost you already know, while a percentage discount scales with the price of the item. These are the trades small retailers can usually afford.
Frequently Asked Questions
What if three staff give three different prices?
Then customers learn to keep asking until someone says yes. The problem stops being the customer and becomes the shop.
What we have seen inside MSME sales operations, before a team moves onto one shared number, is that nobody has decided what gets recorded. Everyone replies in their own format on their own phone, and the owner cannot see what the team is doing. Discounts are where that gap costs the most. The owner holds RM1,899 on Monday. The weekend part-timer, wanting to close, types RM1,750 on Saturday. Neither knows about the other, and the customer has both in writing.
The fix starts on paper, not in software. Write down three things: the listed price, the trades anyone may offer, and who is allowed to go beyond them. A discount rule that lives in the owner's head is not a rule.
Then put the team on one number where the rule is visible. This is what Raion HUB for retail shops is built for. The team answers from a single WhatsApp number, managers can see every conversation, and the AI chatbot answers price questions from the price list you upload, in English, BM or Mandarin. You give it the approved trades as rules. It confirms the price, offers the trade, and labels the conversation with the product and budget the customer mentioned. For how the document-based answering works, see the guide to AI chatbots on WhatsApp.
There is a clear point where the AI should stop. It does not read photos. When the comparer sends a screenshot of another shop's quote, the image is saved to the thread for a person to look at, and the chat is handed to your team. The same goes for the volume buyer. A real negotiation belongs with someone who has the authority to make it.
What happens when the customer goes quiet after you hold the price?
Usually nothing bad. They are checking the other shop, asking a spouse, or waiting for payday. Silence after a firm price is not a no.
The mistake is following up with a lower number. That teaches every customer that going quiet works better than asking. What we have seen is that the follow-up message that gets a reply brings something new, such as an offer, a voucher, an event or a new product, or it gives advice that feels personal. It never hard-sells.
For the mattress shop, that looks like this. Day 3: a helpful note, such as how to check which firmness suits a side sleeper. Day 7: something new, for example the next shipment arriving or the bundle price for two. Day 14: a different angle, such as the trade-in or disposal of the old mattress. A follow-up sequence sends these on schedule and pauses the moment the customer replies.
The same pattern applies outside retail. Home services teams face a version of it when a customer asks the price and then disappears. In both cases the customer who went silent was rarely lost on price. They were lost on the reply.
The bottom line
A discount request is the cheapest sales opportunity a shop gets. The customer has already chosen the product and is asking for a reason to buy it from you today. Give them a reason that costs RM60, not RM190.
When a customer asks for a discount on WhatsApp, the lower number is the expensive answer. On a 30% margin item, 10% off removes a third of the profit and needs 50% more sales to recover. Hold the price, offer one trade with a condition attached, and ask for the next step in the same message. Then make sure every person and every chatbot answering your number is working from the same written rule.


