What the buyer sees
Buyers never install anything or create an account. They open your shop at yourshop.tellsell.app, put products in the cart, fill in one short form and pay by PromptPay QR. This page walks through every step as the buyer sees it, so you can answer their questions and know what happens behind each button.
The steps at a glance
Section titled “The steps at a glance”- Add to cart on a product page.
- Cart: check quantities, then Check out.
- Checkout: name, phone, optional email, pickup or delivery, optional note. A quick check that the buyer is a person. Place order.
- Tellsell recalculates everything on the server and saves the order: status Awaiting payment.
- Order page: a PromptPay QR with the exact amount.
- The buyer pays in their banking app and attaches the slip on the same page.
- You check your bank and tap Paid in LINE. The order page and the buyer’s email follow every change.
1. Add to cart
Section titled “1. Add to cart”Each product page has an Add to cart (ใส่ตะกร้า) button. If the product has options, for example sizes S, M and L, the buyer must choose one first. The cart is kept in the buyer’s browser, on their phone, until they order.
2. The cart
Section titled “2. The cart”The Cart (ตะกร้า) page lists each item with its photo, price and a quantity box, a Remove (ลบ) link, and the Subtotal (ราคาสินค้า). Buttons: Continue shopping (เลือกสินค้าต่อ) and Check out (สั่งซื้อ).
Prices and stock in the cart always come fresh from your shop, never from what the browser remembers. If something changed since the buyer added it, the line shows why and Check out is blocked until the buyer fixes the cart:
| What happened | The buyer sees |
|---|---|
| You deleted the product | “[name] is no longer available” (… ไม่มีขายแล้ว) |
| Sold out | “[name] is sold out” (… หมดแล้ว) |
| Fewer left than in the cart | “Only 2 left of [name]” (… เหลือเพียง 2 ชิ้น) |
| An option wasn’t chosen | “Choose a size for [name]” (กรุณาเลือก…ของ …) |
A cart holds up to 30 different items, and at most 99 of one item.
3. The checkout form
Section titled “3. The checkout form”The Checkout (สั่งซื้อสินค้า) page shows the items and totals on one side and the form Your details (ข้อมูลผู้สั่ง) on the other.
| Field | Required | Notes |
|---|---|---|
| Full name (ชื่อ-นามสกุล) | Yes | |
| Phone number (เบอร์โทรศัพท์) | Yes | A Thai number: 0 and 9 or 10 digits in all, e.g. 081-234-5678. +66 works too. |
| Email (optional) (อีเมล (ไม่บังคับ)) | No | Hint: “We will email you a link to follow your order”. |
| How to receive it (รับสินค้าอย่างไร) | Yes | Pick up at the shop (รับเองที่ร้าน) and/or Delivery (จัดส่ง) with its fee, depending on what you offer. |
| Delivery address (ที่อยู่จัดส่ง) | For delivery | Appears only when Delivery is chosen. |
| Note to the shop (optional) (หมายเหตุถึงร้าน (ไม่บังคับ)) | No | Up to 500 characters. |
Under the form:
- The person check. A small Cloudflare Turnstile box checks that the buyer is a person, not a bot. Usually it passes by itself; sometimes it asks the buyer to tick a box.
- The privacy notice. A short note that the buyer’s details are used only for this order, that your shop is the data controller and Tellsell runs the system for you, and that the data is deleted or anonymised within 2 years, under Thailand’s PDPA.
- Place order (ยืนยันการสั่งซื้อ).
Delivery fees are explained in Delivery and pickup.
4. What the server checks
Section titled “4. What the server checks”When the buyer taps Place order, nothing from the browser is trusted. Tellsell:
- checks the form fields and the person check;
- reads every price, the delivery fee and the stock again from your shop;
- checks that this phone number doesn’t already have 3 unpaid orders in your shop;
- saves the order and takes the stock in one step, so two buyers can never both get the last item.
If something fails, the buyer stays on the form with a message:
| Problem | The buyer sees |
|---|---|
| A field is missing or wrong | e.g. “Please enter a valid phone number, e.g. 081-234-5678” |
| The person check failed | “We could not check that you are not a bot. Please try again.” |
| An item ran out meanwhile | “Some items are not available in that quantity. Please update your cart.” |
| 3 unpaid orders on this phone | “This phone number already has 3 unpaid orders. Please pay or wait for one to expire first.” |
| Too many orders from one place in a short time | “Too many orders in a short time. Please wait a moment and try again.” |
5. The order page
Section titled “5. The order page”After a successful order, the buyer goes straight to the order page. Its address ends in a long random code, for example /order/k3Jx… (43 characters), never the order number, so nobody can open someone else’s order by guessing.
At the top: Order #1024 (ออเดอร์ #1024), the status, and “Keep the link to this page to follow your order” (เก็บลิงก์หน้านี้ไว้เพื่อติดตามออเดอร์).
While the order awaits payment, the page shows Pay with PromptPay (ชำระเงินด้วย PromptPay):
- the amount, for example ฿385;
- the QR code: “Scan the QR with your banking app. The amount, ฿385, is filled in.” (Or, for shops using their own QR image: “Scan the shop’s QR with your banking app and type the amount, ฿385.”)
- “Transfer note: order #1024” (ใส่หมายเหตุการโอน: ออเดอร์ #1024);
- “Please pay by 14 Oct 2026, 10:30” (กรุณาชำระภายใน …).
Below that: the items, the Subtotal, the Delivery fee if any, the Total, and how the order will be received.
6. Attaching the slip
Section titled “6. Attaching the slip”Under the QR is Attach your payment slip (แนบสลิปการโอน): “A screenshot of the slip from your banking app (JPG, PNG or WebP, up to 10 MB)”. The buyer picks the image and taps Send slip (ส่งสลิป).
Then:
- the status changes to Slip received, the shop is checking (ได้รับสลิปแล้ว รอร้านตรวจสอบ);
- the page says “Slip received. The shop will check the payment and confirm your order.”;
- you get an email and, on paid plans, an instant LINE alert;
- the slip is stored privately: only you can see it, through a link that works for 15 minutes;
- the buyer can still replace it with Send a new slip (ส่งสลิปใหม่) until you tap Paid.
An order with a slip never expires by itself, because the buyer may have paid. It waits at the top of your Orders list, and you get a reminder email each day until you tap Paid or Cancel.
7. Order statuses
Section titled “7. Order statuses”The order page always shows the current status. If the buyer gave an email, they get an email at each change, in Thai and English, with a link back to the order page and your shop’s LINE contact button if you have one.
| Status on the order page | When | Email to the buyer |
|---|---|---|
| Awaiting payment (รอชำระเงิน) | Right after the order | “Order received”, with the QR reminder and the pay-by time |
| Slip received, the shop is checking (ได้รับสลิปแล้ว รอร้านตรวจสอบ) | After the slip upload | — |
| Paid (ชำระเงินแล้ว) | You tapped Paid | “Payment confirmed” |
| Shipped (จัดส่งแล้ว) | You tapped Shipped or Picked up | “Order shipped” with the tracking number, or “Order handed over” for pickup |
| Payment time is over (หมดเวลาชำระเงิน) | The pay-by time passed without a slip | — |
| Cancelled (ยกเลิกแล้ว) | You cancelled an unpaid order, or Tellsell cancelled it after the pay-by time (checked every hour) | “Order cancelled”, or “Order expired” with a link to order again |
| Refund due (รอคืนเงิน) | You cancelled a paid order | “Order cancelled, refund coming” |
| Refunded (คืนเงินแล้ว) | You tapped Refunded | “Refund sent” |
Unpaid orders without a slip expire 24 hours after the order, unless you set a different time on the account pages. Their stock goes back to the shop.