Quick answer: Difficult situations (angry customers, complaints, bad news) are exactly the conversations a chatbot should hand to a human. The reliable structure is validate first, then inform, then resolve: acknowledge the feeling before explaining anything, take ownership of the experience without necessarily accepting blame, and offer a concrete next step. Frameworks like HEARD (Hear, Empathize, Apologize, Resolve, Diagnose) and ASAP (Apologize, Sympathize, Accept responsibility, Prepare to help) give your team a repeatable spine for the moments that decide whether a customer stays or leaves.
A chatbot handles volume and predictable questions. It cannot, and should not, handle a furious customer whose order arrived broken. Those are the conversations that need a person, and they are also the highest-stakes moments in support: handled well, a complaint can build more loyalty than a smooth order ever would. This guide gives your team the scripts for them. It is part of our ecommerce AI chatbot guide, covering the human side the bot escalates to.
Why these are human conversations
When a customer is angry, they are not being difficult for sport. Anger in ecommerce almost always comes from two things: broken expectations and a loss of control. They paid, they waited, something went wrong, and they cannot fix it themselves. As research summarized by edesk notes, a large share of customers feel their complaint is ignored, which is the fastest path to escalation, and a frustrated buyer reads every cold, automated reply as proof the brand does not care. This is precisely why a chatbot is the wrong tool here: the customer needs to feel heard by a person, and a bot cannot do that. A well-designed bot escalates these on sight.
The sequence that works: validate, inform, resolve
Across every de-escalation framework, the order is the same, and it is the opposite of most people’s instinct. Do not lead with the explanation. Lead with the feeling.
- Validate first. Acknowledge the emotion before any logistics. “You are right to be frustrated, this is not the experience we wanted for you.” This calms the conversation enough for the customer to actually hear you.
- Take ownership of the experience. Not necessarily the blame, but the responsibility to fix it. Never deflect to another department or the carrier. “This is ours to sort out.”
- Then inform, then resolve. Once the customer feels heard, explain briefly and offer a concrete remedy, ideally before they have to demand one.
Two frameworks encode this. HEARD (Hear, Empathize, Apologize, Resolve, Diagnose) and ASAP (Apologize, Sympathize, Accept responsibility, Prepare to help). Pick one, train your team on it, and the hardest conversations get a repeatable structure.
Scripts
Adapt these to your voice. Placeholders in brackets are yours to fill.
Script 1: The angry customer (broken expectation)
Hi [FIRST_NAME], you are right to be upset. You ordered [PRODUCT] expecting [EXPECTATION], and we did not deliver that. I am sorry, and I am going to make it right.
Here is what I can do right now: [CONCRETE_REMEDY]. I will also [FOLLOW_UP] so you are not left wondering. Does that work for you?
Script 2: Delivering bad news (cannot do what they asked)
Hi [FIRST_NAME], I looked into this properly, and I want to be straight with you: [HONEST_LIMITATION]. I know that is not what you were hoping to hear.
What I can do is [ALTERNATIVE], and I would genuinely like to. If that does not work for you, tell me and we will find another way.
Script 3: The repeat contact (they have chased more than once)
Hi [FIRST_NAME], I am sorry you have had to follow up more than once about this. That should not happen, and I am going to see it through personally so it does not need a fourth message.
Here is exactly where things stand: [STATUS]. My next step is [ACTION] by [TIME]. I will update you either way.
Script 4: Setting a boundary (abusive language)
I want to help you, and I will. I need us to keep this respectful so I can focus on fixing the problem. If we can do that, tell me what happened and I will get straight to work on it.
That last one matters. Empathy is not endless tolerance. A calm, firm boundary (“I want to help, and I need the conversation to stay respectful”) protects your team without escalating, and most customers reset when it is offered kindly.
What to do after the resolution
The fix is often the smallest part. A customer who was angry and is now sorted out is a customer at a fork: a good recovery can make them more loyal than they were before the problem, the service recovery paradox. Once the situation is genuinely resolved, a brief, sincere follow-up (and where appropriate a gesture) turns a complaint into retention. That later re-engagement is a marketing touch and belongs with your email or win-back flows, not the live conversation.
Common mistakes
- Explaining before acknowledging. Leading with logistics while the customer is still angry guarantees they do not hear you. Validate first.
- Deflecting blame. “That is the carrier’s fault” reads as “not my problem.” Own the experience.
- Over-apologizing. One sincere apology beats five. Then move to the fix.
- Making them repeat themselves. If the bot escalated, the agent should already have the context. Never start cold.
- Tolerating abuse to seem helpful. Set a kind, firm boundary. Endless tolerance helps no one.
- Ending at the fix. The follow-up after resolution is where a complaint becomes loyalty.
Frequently asked questions
How do you handle an angry customer in ecommerce? Validate the emotion before explaining anything (“you are right to be frustrated”), take ownership of the experience without deflecting to another department or the carrier, then offer a concrete remedy, ideally before the customer demands one. Anger usually comes from broken expectations and loss of control, so being heard by a person is what calms it.
What is the HEARD framework? HEARD stands for Hear, Empathize, Apologize, Resolve, Diagnose. It is a de-escalation structure: listen fully, show genuine understanding, apologize sincerely for the experience, resolve with a concrete action, and diagnose the root cause so it does not recur. It gives agents a repeatable spine for high-stakes conversations.
Should a chatbot handle complaints? No. Complaints and emotionally charged situations need human empathy, judgment, and authority that a chatbot does not have. A well-designed bot detects these (through sentiment and sensitive keywords) and escalates them to a person immediately, passing full context so the customer does not have to repeat their story.
How do you set a boundary with an abusive customer? Calmly and kindly, without escalating: “I want to help you, and I need us to keep this respectful so I can focus on fixing the problem.” Empathy does not require tolerating abuse. Most customers reset when a firm, warm boundary is offered, and your team’s wellbeing matters too.
The hardest conversations are the ones your chatbot should never touch, and the ones that most decide whether a customer stays. Validate before you explain, own the experience, resolve concretely, and follow up after. A complaint handled this way does more for loyalty than a flawless order, which is exactly why these belong with trained people, not automation.
Want a full set of customer service scripts for the difficult situations your team faces, complaints, delays, refunds, and the awkward edge cases? That is our customer service scripts service. To keep these conversations off your team by answering the definitive questions automatically, see AI chatbot setup, or book a free store audit.
About the author
Mustajab Haider Bukhari is the founder of Organic Cart Studio, an ecommerce SEO, product copywriting, and customer communication agency specializing in Shopify and WooCommerce stores. Connect on LinkedIn.
This guide is educational and not legal advice; consult a qualified professional for compliance specific to your business and regions.

Leave a Reply