Under Thai law, a seller is liable for a defect in what they sold whether or not they knew about it — but that liability disappears the moment a customer accepts a visibly defective item “without objection.” Which side of that line a chat lands on is usually decided in the first reply after “ของมาแล้วแต่ชำรุด,” not by whoever reads the policy page first.
What the law actually makes you liable for
Section 472 of the Civil and Commercial Code holds a seller liable for a defect that lowers an item’s value or makes it unfit for ordinary use, “whether or not the seller knew the defect existed” (Section 472). It doesn’t matter whose fault the damage was — a manufacturing flaw, a wrong item, or a pre-existing crack all fall under it the same way.
Section 473 then carves out when a seller is not liable: the buyer already knew of the defect, or should have using ordinary care — or the defect was “plainly visible at delivery” and the buyer “accepted the goods without objection” (Section 473). A defect hidden inside packaging doesn’t meet that bar; a crack visible the moment the box opens does, if nothing is said about it. Section 474 then gives a one-year window to raise a claim, counted from when the buyer discovered it (Section 474) — a damaged case found a year later is a different conversation from a cracked screen reported that afternoon.
The reply that decides which side of Section 473 you land on
None of this is about the courier — a parcel damaged in transit is a claim against the courier, running on its own window, not a product defect (what to check before filing that claim). This is about the product itself: wrong color, cracked casing, a missing accessory, a unit that won’t turn on.
As a recommended default, not a legal requirement: ask for a photo or short unboxing video in the same message where you acknowledge the complaint, before any back-and-forth about whether it’s even damaged. That photo does two things at once — it shows whether the defect was visible at delivery, which is what Section 473 turns on, and it’s the record that the customer raised it promptly rather than something reconstructed weeks later.
Set up in 1CS
Build an Automation rule so a damage report never sits unseen in a queue. Automation in 1CS runs as trigger → condition → action: trigger on a new message, condition it on the message containing words customers actually type — “ชำรุด,” “แตก,” “ไม่ตรงปก,” “เสีย,” “damaged,” “wrong item” — and set the action to add a label such as “damage claim” and assign the conversation to a team member who can see the order and photos together. This sits inside 1CS’s AI Agent tools; the Thai help center walks through the same screen in สร้างกฎอัตโนมัติ (Thai only).
Save the request-for-photo line as a reply template so every agent asks the same way — 1CS calls these quick replies, triggered with / and a shortcode while answering a conversation.
The message to send before you approve anything
Keep the first reply short, and ask for evidence before anything else:
Sorry to hear that, [customer name] — we’ll sort this out. Before we go further, could you send a photo or short video of [item] showing the damage, along with the order number? That’s all we need to process an exchange or refund, usually within [X business days].
Three checks for whoever reads it next: does the photo show the defect clearly enough to judge, or need a follow-up? Did the complaint arrive soon after delivery, or is this the first message in months? And is it a product defect at all, or packaging damage that points to the courier instead — in which case the courier claim process applies, not this one. If the conversation came in through an escalation rule for refund requests, check that the rule actually caught it rather than a phrase it missed.
None of this makes the decision for your team — a confirmed defect still leaves the shop choosing between an exchange, a refund, or a repair as a matter of its own policy, not something Section 472 spells out. What the photo habit buys is a record of which one was fair to offer, made when the complaint came in rather than reconstructed after the fact.