I used 4 prompt templates to reply to 200 WhatsApp vendor orders: which formula per task

I tested four prompt templates to automate WhatsApp replies for 200 jewellery orders. Here's which formula worked best for each task—and why.

KKryotta TeamProduct & research · · 10 min read
Hands holding phone with WhatsApp chat, handmade jewellery and order notes visible in soft background light
Hands holding phone with WhatsApp chat, handmade jewellery and order notes visible in soft background light

Why I built templates instead of writing each reply fresh

I sell handmade jewellery and accessories through Instagram. Orders come through WhatsApp—someone sends a screenshot of the piece they want, I quote a price, they transfer the money to my GTBank account, I confirm and ship. Simple, until you're doing thirty orders a week and every single one needs a confirmation message, a delivery update, maybe a payment reminder, maybe an apology because the piece sold out between the DM and the transfer.

By mid-November I was spending two hours a day just typing WhatsApp replies. I'd open a chat, see "I've sent the ₦8,500 for the gold hoop earrings", check my bank app, confirm the alert, then type out some version of "Got it, thanks! Your order is confirmed, I'll pack it today and send it out tomorrow with a rider. You should have it by Thursday. I'll send the tracking details once it's on the way." Repeat forty times, with tiny variations for delays, out-of-stock items, customers who paid the wrong amount, customers who hadn't paid yet.

I knew I needed a system. I'd been using Kryotta's Compare arena to test models for product descriptions, so I tried something new: write four reusable prompt templates—one for each type of reply I sent most often—and feed them real order details. Customer name, item, amount, delivery zone, bank reference. Let the model write the message, I'd tweak it if needed, paste into WhatsApp, done. Over two weeks I used these templates for two hundred actual customer conversations. Some worked better than others. Here's what I learned, formula by formula.

Template one: order confirmation after payment received

What it does: Customer transfers money, you see the bank alert, you need to confirm the order and set delivery expectations.

The formula I used:

You are replying to a WhatsApp customer who just paid for an order. Confirm you received ₦[AMOUNT] from [NAME] for [ITEM]. Let them know the order is confirmed, you'll pack it [TODAY/TOMORROW], and delivery to [AREA] usually takes [X] days. Tone: warm, brief, professional. One short paragraph, no emojis.

Why this structure works: It forces you to fill in every variable before you run the prompt. Amount, name, item, area, timeline. That specificity keeps the reply accurate and stops the model from inventing details. I tested this with Claude Sonnet 4.5 and Gemini Flash. Claude's replies felt slightly more natural—"Your ₦12,000 payment just came through, thank you"—while Gemini was faster and cheaper. For a confirmation message where the facts matter more than the warmth, Gemini won. I used it for 110 of the 200 replies.

Real example: Customer sent ₦15,500 for a beaded necklace, lives in Lekki. I filled the template: ₦15,500, Chioma, beaded necklace (blue and gold), Lekki, 2 days. Gemini Flash gave me: "Hi Chioma, I've received your ₦15,500 payment for the blue and gold beaded necklace. Order confirmed! I'll pack it this evening and send it out tomorrow morning. Delivery to Lekki usually takes two days, so expect it by Thursday. I'll share tracking details once the rider picks it up." I pasted it, sent it, moved on. Thirty seconds, done.

Template two: delivery delay or rider issue

What it does: Something went wrong. Lagos traffic, fuel scarcity, rider broke down, dispatch company mixed up the address. You need to apologise, explain, and give a new timeline without sounding like you're making excuses.

The formula I used:

You are messaging a WhatsApp customer whose order is delayed. They ordered [ITEM] on [DATE], expected delivery was [ORIGINAL DATE], but [REASON FOR DELAY]. Apologise briefly, explain what happened in one sentence, give the new expected delivery date [NEW DATE]. Tone: honest, apologetic, not over-the-top. Two short paragraphs max.

Why this structure works: Delays make customers anxious. They've paid, they're waiting, they want to know you haven't forgotten them. The template makes you state the reason and the new date, which keeps the reply grounded. I tested this with Claude Haiku 4.5 and Llama 3.3 70B. Claude's apologies felt more human—"I'm really sorry for the delay"—but Llama was cheaper and still sounded sincere. For bulk delay messages (I had fifteen orders stuck in traffic the same day in early December), Llama made sense. For a high-value order or a repeat customer, I switched to Claude.

Real example: Customer ordered a bracelet set on Monday, I promised delivery by Wednesday, but the rider's bike broke down in Ojota on Tuesday afternoon. I filled the template: bracelet set (silver), Monday 2nd, Wednesday 4th, rider's bike broke down in Ojota, Friday 6th. Llama gave me: "Hi, I'm really sorry—your silver bracelet set was supposed to arrive today, but the rider's bike broke down in Ojota yesterday. He's sorted now and your order is back on the way. You should have it by Friday morning. I'll follow up to make sure it gets to you." I added a "Thanks for your patience" at the end and sent it. Customer replied "No problem, thanks for letting me know." Crisis managed.

Template three: payment follow-up for pending transfers

What it does: Customer said they'd pay, you sent account details, two days pass, no alert. You need to check in without sounding pushy or assuming they're dodging you.

The formula I used:

You are following up with a WhatsApp customer who hasn't sent payment yet. They ordered [ITEM] on [DATE], total is ₦[AMOUNT], you sent account details ([BANK NAME], [ACCOUNT NUMBER]). Check if they've sent the transfer or if they need the details again. Tone: polite, assuming good intent, not accusatory. One paragraph, casual.

Why this structure works: People forget, or they screenshot your account details and lose the image, or they sent money to the wrong account number. The template keeps the message friendly and assumes the best. I tested this with Gemini Pro and DeepSeek V3. Gemini's replies were gentler—"Just checking in"—while DeepSeek was more direct. For first-time customers I used Gemini; for repeat customers who know the process, DeepSeek was fine and faster.

Real example: Customer ordered a pair of anklets on Thursday, I quoted ₦9,000 and sent my GTBank details. By Saturday, no payment. I filled the template: anklets (gold-tone), Thursday 7th, ₦9,000, GTBank, 0123456789. Gemini Pro gave me: "Hi! Just checking in on the gold-tone anklets you ordered on Thursday—total was ₦9,000. Have you had a chance to send the transfer? If you need the account details again, let me know. No rush, just want to make sure nothing got lost." She replied an hour later: "Oh sorry, I thought I sent it! Sending now." Payment came through that evening.

Template four: out-of-stock or sold-out item

What it does: Customer wants something you've already sold or don't have in stock. You need to say no, offer an alternative if you have one, and keep them interested without wasting their time.

The formula I used:

You are replying to a WhatsApp customer who wants [ITEM], but it's out of stock. Let them know it sold out [WHEN], apologise briefly. [IF APPLICABLE: Mention similar item [ALTERNATIVE] that's available, price ₦[AMOUNT].] [IF NOT: Let them know when you expect new stock, [DATE/TIMEFRAME].] Tone: apologetic but not desperate, helpful. One or two short paragraphs.

Why this structure works: Out-of-stock messages lose sales if you don't give the customer a next step. The template forces you to either offer an alternative or give a restock date, so the conversation doesn't just die. I tested this with Claude Sonnet 4.5 and Mistral Large. Claude was better at suggesting alternatives that felt natural—"The silver version is still available"—while Mistral sometimes suggested things that didn't quite fit. For this one, I stuck with Claude. It's worth the extra cost when you're trying to recover a sale.

Real example: Customer asked for a chunky gold chain I'd posted on Instagram two weeks ago. Sold out three days after I posted it. I filled the template: chunky gold chain, three days after posting, similar item: thinner gold chain with pendant, ₦11,000. Claude Sonnet gave me: "Hi! That chunky gold chain sold out pretty quickly, sorry—it went three days after I posted it. I do have a thinner gold chain with a small pendant that's a similar style, ₦11,000. I can send you photos if you'd like to see it? Otherwise I'm restocking the chunky style in about two weeks." She asked for photos, bought the alternative. Sale saved.

When Auto routing picked the wrong model and I overrode it

Kryotta's Auto routing usually picks Gemini Flash for short, simple tasks and Claude Sonnet for anything that needs more nuance. Most of the time it was right. But twice it sent a delivery delay message to Gemini Flash and the apology felt flat—too brief, almost robotic. I reran the same prompt with Claude Haiku and the tone improved immediately. Now I manually pick Claude for any message where tone matters more than speed: apologies, out-of-stock replies, anything going to a repeat customer or a high-value order.

For confirmations and payment follow-ups, Gemini Flash is still my default. It's fast, it's cheap, and the replies are accurate. I've sent over a hundred confirmation messages with it and I've only edited maybe ten, usually just to add a "Thanks so much!" at the end because I felt like it.

What I'd change if I were starting today

I'd add a fifth template for refund or complaint replies. I've had three customers ask for refunds in the past two months—one because the item arrived damaged, one because the colour didn't match the photo, one because delivery took a week and she'd already bought something else. I winged all three replies and they took forever to write. I should have had a formula: acknowledge the issue, apologise, explain the refund process (how many days, which bank details you need), offer a discount on the next order if appropriate. Tone: calm, professional, not defensive. That's the next template I'm building.

I'd also keep a swipe file of the best AI-generated replies. I've deleted most of them after sending, but a few were so good I should have saved them as starting points for future edge cases—customer paid half the amount by mistake, customer's bank reversed the transfer, customer wanted to change the delivery address after I'd already shipped. The templates cover 90% of my messages, but that last 10% still needs a human brain and a good example to work from.

Questions people ask

Can I use these templates if I sell on Jumia or Konga instead of Instagram?
Yes, but you'll adjust the placeholders. Instead of "delivery to [AREA]", you'd say "Jumia courier will deliver by [DATE]" or "Your order is now with Konga Logistics, tracking number [NUMBER]". The structure stays the same—confirm payment, set expectations, give a timeline. The platform details change.

Do I need to pay for Claude Sonnet if Gemini Flash is cheaper?
Not for every message. Use Gemini for confirmations and straightforward follow-ups. Save Claude for apologies, out-of-stock replies, or any message where you're trying to keep a customer happy after something went wrong. The cost difference is tiny per message, but it adds up if you're doing fifty replies a day and only ten of them need the extra warmth.

What if the AI writes something that doesn't match how I talk to customers?
Edit it. The template gives you a solid first draft in ten seconds, but you know your customers and your brand voice. If the reply feels too formal, cut a sentence or add a "No wahala" at the end. If it's too casual, tighten it up. The goal isn't to copy-paste blindly—it's to spend thirty seconds editing instead of three minutes writing from scratch.

How do I stop the model from inventing delivery dates or bank details?
Fill in every placeholder before you run the prompt. If you leave [AMOUNT] blank, the model will guess. If you skip [NEW DATE], it'll make one up. The formula only works if you give it the real details. I keep a notes file on my phone with my bank name, account number, and typical delivery times for each Lagos zone (Mainland 2 days, Island 1-2 days, Lekki 2-3 days). I copy-paste those into the template so I'm never prompting from memory.

Two hundred replies in two weeks, and I got back six hours I used to spend typing the same messages over and over. The templates aren't magic—they're just a system for turning order details into customer-ready text without starting from a blank WhatsApp chat every time. If you're running a small shop and your DMs are eating your day, try Kryotta's Compare arena with one of these formulas. Pick the model that fits the job, fill in the blanks, edit the output if you need to, send it, move on. That's the whole workflow.

K
Written by
Kryotta Team
Product & research

Kryotta is the multi-model AI workspace — every leading model, one login, one bill. Try it free →

Related reading