
How to Run an Instagram Shop from Your DMs (Without Losing Orders)
- Author
- Abdur Rouf Jibon
- Publish Date
- Latest Update

To run an Instagram shop from your DMs without losing orders, you need three things: a short, repeatable message flow that takes every buyer from "price?" to a confirmed order, a single place outside the chat where every order is written down, and one stock count that you update the moment something sells. The inbox is where customers talk to you. It should never be the place you keep track of orders.
This guide walks through the whole system step by step, with message templates you can copy, an order sheet layout, and the point at which it makes sense to automate.
Why selling in DMs breaks as you grow
Selling through Instagram DMs works beautifully at the start. Customers like it: they can ask a question, see a real person answer, and buy without filling in a checkout form. You like it: no website to build, no fees, and every sale feels personal.
Then it stops working, usually all at once. You'll recognise the signs:
Lost orders. A customer confirmed in a thread that's now 40 conversations down, and you only find it when they message "where is my order??"
Overselling. You promised the last medium to two people because you checked your memory, not a stock count.
Unanswered "price?" messages. Dozens a day, each needing the same reply, and the buyers who waited three hours have already bought elsewhere.
No idea what you sold. At the end of the month you can't say how many orders came in, how many were paid, or what's still waiting to ship.
Only one person can do it. All the order details live in your head and your phone, so you can't hand the inbox to anyone.
None of this means DM selling is the wrong model. It means the inbox is doing a job it was never built for. The fix is to keep the conversation in Instagram and move everything else out of it.
Step 1: Set up your account for selling
Use a professional account
Switch to a professional account (business or creator) in your Instagram settings if you haven't. It gives you the inbox tools below, insights on your posts, and the option to manage messages from a computer.
Manage messages from a computer
Answering orders on a phone is slow and error-prone. Use Meta Business Suite (or the Instagram inbox on desktop) so you can type faster, copy order details accurately and keep your order sheet open next to the chat.
Use the inbox folders on purpose
Instagram splits business messages into folders such as Primary and General. Pick a rule and stick to it. A simple one:
Primary: buyers who have asked about a specific product, price or delivery.
General: everything else (collaboration requests, compliments, spam).
When an enquiry becomes an order, move it to Primary so you never miss the follow-up.
Save your most-used replies
Instagram lets professional accounts save quick replies, triggered by a short keyword. Save one for each of the messages in the templates below so you can answer the common questions in seconds and keep the wording consistent across your team.
Step 2: Answer questions before they're asked
Most DMs a small shop gets are the same five questions: price, size, availability, delivery cost and how to pay. Every one you answer in advance is a message you don't have to type, and a buyer who doesn't have to wait.
Put the price in the caption. "DM for price" generates conversations, but many buyers won't bother asking and will scroll on. Showing the price filters for serious buyers and saves you dozens of replies a day.
Pin a "How to order" post and create a Story Highlight with the same steps: pick an item, DM the product code and size, confirm address, pay.
Give every product a short code (e.g.
TS-014) in the caption and on the image. "I want TS-014 in M" is far easier to process than "the blue one from Tuesday".Make a size guide and a delivery Highlight. One image each. Link to them instead of explaining every time.
Step 3: Use one standard order flow
The fastest DM sellers don't improvise. Every conversation moves through the same six stages, and every stage has a template. This is what makes the inbox learnable by someone else.
Stage | Goal | Done when |
|---|---|---|
1. Enquiry | Answer the question and move toward an order | Buyer names a product |
2. Details | Confirm product, size or variant, quantity | You have exact item(s) |
3. Delivery | Get full name, address, phone; quote delivery cost | You have a full address |
4. Summary | Send a single message with everything | Buyer replies "yes" |
5. Payment | Send payment instructions or confirm cash on delivery | Payment received or COD confirmed |
6. Dispatch | Send tracking and set expectations | Parcel handed to the courier |
Templates you can copy
Edit the tone to match your brand. Put anything in [brackets] in your own words.
1. Price or availability enquiry
Hi [name]! Yes, [product] is available in [sizes/colours] for [price]. Would you like me to reserve one for you? Just tell me the size and I'll check stock.
2. Size help
Happy to help! It runs [true to size / slightly small]. If you usually wear [size] in [brand or similar item], go for [size]. Our full size guide is in the "Sizes" highlight on our profile.
3. Collecting delivery details
Great choice! To send it, I just need:
1. Full name
2. Full delivery address (with area or postcode)
3. Phone number for the courier
Delivery to [area] is [cost] and usually takes [X–Y days].
4. Order summary (the most important message)
Here's your order, please check it's all correct:
🛍 [Product code, name] – [size/colour] × [qty] – [price]
🚚 Delivery to [address] – [cost]
💰 Total: [amount]
💳 Payment: [method]
Reply YES to confirm and I'll get it packed.
Never skip this. A single summary message that the buyer explicitly confirms prevents most wrong sizes, wrong addresses and "I never ordered that" disputes. It is also the message you copy into your order sheet.
5. Payment instructions
Thank you! You can pay [amount] here: [payment link / account details]. Once it's received, I'll pack your order and send tracking.
6. Cash-on-delivery confirmation (if you offer COD)
Your order is confirmed for cash on delivery. Please keep [amount] ready for the courier. They'll call [phone] before delivery. If anything changes, just message me here before [day] so I can update it.
7. Dispatch and tracking
Good news, your order is on its way! 📦 Tracking: [link/number]. Expected delivery: [date]. Message me here if you need anything.
8. The polite nudge (for buyers who went quiet after the summary)
Hi [name], just checking: would you still like the [product]? I'm holding it for you until [time], after which it goes back on sale.
Step 4: Write every order down outside the chat
This is the step that stops orders getting lost. The moment a buyer replies "YES" to your summary, the order goes into one list, and from then on you work from the list, not the inbox.
A shared spreadsheet is enough to start. Use these columns:
Order # | Date | Instagram handle | Name | Phone | Address | Items (code, size, qty) | Total | Payment method | Payment status | Order status | Tracking | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
1048 | 2026-10-28 | @buyer | Sam Lee | ... | ... | TS-014 M ×1 | 34.00 | Card link | Paid | Packed | – | Gift wrap |
Rules that make it work:
Give each order a number and use it in the chat ("Your order #1048 is packed"). It makes support questions instant.
Use a fixed list of statuses: New → Awaiting payment → Paid / COD confirmed → Packed → Shipped → Delivered → Returned / Cancelled. Use data validation (a drop-down) so nobody invents a new status.
Each morning, filter by status, not by scrolling the inbox. "Awaiting payment" is your follow-up list. "Paid" is your packing list.
One person per order. If you have a team, add an "Owner" column.
Step 5: Make payment simple and certain
Every extra step between "YES" and "paid" loses buyers. Reduce it to one action:
Send a payment link where your payment provider supports it, rather than asking buyers to type in account numbers.
Mark an order as paid only when the money has arrived, not when the buyer sends a screenshot. Screenshots can be edited.
If you offer cash on delivery, confirm the order and the amount in writing before dispatch (template 6). Unconfirmed COD orders are the biggest source of returned parcels for chat sellers.
For larger or riskier COD orders, it's reasonable to ask for a small advance. Say why, politely: "For orders over [amount] we ask for a [X] advance to cover delivery, and the rest is paid on arrival."
Step 6: Keep one stock count
Overselling happens when stock lives in more than one place: your memory, a notebook, the website, the shop counter. Pick one source of truth and update it at a fixed moment.
Reserve stock when the buyer confirms the summary, not when they first ask. Asking isn't buying.
Release the reservation if the order isn't paid or confirmed by a deadline (template 8 tells them when).
If you also sell on a website or in a shop, every sale in every channel has to reduce the same number. This is where spreadsheets start to fail, because nobody updates them in real time at a busy counter.
Mark sold-out items in the caption or post ("SOLD OUT in M") so buyers stop asking.
Step 7: Follow up, because that's where repeat sales are
The order isn't finished when it ships.
Send tracking the same day it ships (template 7).
Check in after delivery: "Did it arrive OK? How does it fit?" It catches problems early and is the best moment to ask for a review or a photo you can repost with permission.
Know the messaging rules. If you ever use automated messages through Meta's tools or a connected app, Meta's platform policies limit when a business can message a customer after their last message to you (generally a 24-hour window, with narrow exceptions). Read the current policy before automating follow-ups.
Note what each customer bought so you can tell them when something they'd like is back in stock. That's a sale with no ad spend.
Step 8: Set inbox rules if more than one person answers
Once a second person touches the inbox, write down:
Response time target (e.g. every enquiry answered within 1 hour during opening hours).
Who owns which conversations (by order number, or split by morning and afternoon).
Which templates to use and what they may not change (prices, delivery times, refund rules).
What needs the owner's decision: refunds, discounts, complaints, anything unusual.
The rule that every confirmed order goes into the sheet before the conversation is closed.
When to automate, and what not to
Once you're handling more than a few dozen conversations a day, doing all of this by hand becomes the bottleneck. Automation helps most where the work is repetitive and the answer is always the same:
Good to automate:
Answering price, size, stock and delivery-cost questions from your actual product data
Collecting delivery details
Sending the order summary and recording the confirmed order
Payment and COD confirmation messages
Dispatch and tracking messages
Back-in-stock and reorder messages
Keep a human for:
Complaints and refunds
Custom requests and negotiations
Anything where the buyer is upset or confused
Final decisions on risky orders
The test: if you'd give the same answer every time, automate it. If the right answer depends on judgement, a person should handle it.
The other thing to watch is that automation doesn't create a second set of records. A chatbot that answers "Yes, available!" without checking your real stock, or takes orders that never reach your order sheet, recreates exactly the problems this system is meant to fix. Whatever you automate needs to read from and write to the same orders and stock you use for everything else.
This is the problem Nodi was built for. Nodi Commerce connects your Instagram, Facebook and WhatsApp inbox to one product catalog, one stock count and one order list. Its AI answers buyers from your real product data, builds the order summary, records the confirmed order and keeps stock in sync with your website and shop counter, and your team can take over any conversation at any time. See how Nodi runs a DM shop →
Checklist: your DM shop system
☐ Professional account, messages managed from a computer
☐ Inbox folder rule written down
☐ Saved replies for every template
☐ Prices in captions, product codes on every post
☐ "How to order", "Sizes" and "Delivery" highlights
☐ Order summary sent and confirmed for every order
☐ Every confirmed order in one sheet, with a number and a status
☐ Payment marked only when received; COD confirmed in writing
☐ One stock count, updated when an order is confirmed
☐ Tracking sent the day it ships; check-in after delivery
☐ Inbox rules written down if more than one person answers
Selling in the UAE? Read How to Sell on Instagram in the UAE and What Is an AI Agent?.
See it in Nodi: Selling in chats with Nodi
Common questions
How many DM orders can one person handle?
It depends on how many questions each order takes, but most sellers find the inbox becomes a full-time job somewhere between a few dozen and around a hundred conversations a day. Answering common questions in advance and using saved replies raises that ceiling a lot; automation raises it further.
Should I put prices in my Instagram captions?
Usually, yes. "DM for price" creates conversations, but it also creates work and loses buyers who won't wait for a reply. Listing the price filters for serious buyers and cuts repetitive messages.
Is a spreadsheet enough to manage Instagram orders?
For a small shop, yes, as long as every confirmed order goes into it and you work from it every day. It starts to break when several people update it at once, or when you also sell on a website or in a physical shop and need stock to update everywhere instantly.
How do I stop customers ordering things that are sold out?
Reserve stock when an order is confirmed, mark sold-out sizes on the post, and keep a single stock count that every channel reduces. Most overselling comes from stock being tracked in more than one place.
Can I take payments directly inside Instagram DMs?
Availability of in-chat payment features has varied by country and changed over time, so check what Instagram currently offers where you are. A payment link from your payment provider works almost everywhere and is the simplest option.
Do I need a website if I sell on Instagram?
Not to start. Many shops run entirely from DMs. A website becomes useful when you want buyers to order without waiting for a reply, appear in Google searches, or sell when Instagram is down or your account has a problem.

Abdur Rouf Jibon
Founder, Nodi AI
Abdur Rouf Jibon is the founder of Nodi AI, which builds Nodi Commerce: one system for shops that sell through Instagram, Facebook, WhatsApp, a website and a shop counter.


