The same order arrives twice, once under the post and once in your inbox. Here is how to give it one identity and reconcile the two before Sunday.
Sailo team13 min read
"Mine po." Three of them under the same photo, inside two minutes. Then a DM from someone called Jhen saying she commented earlier, and you cannot find a Jhen in the comments because in there she is @jhen.thrifts.
You now have somewhere between three and five orders. You genuinely don't know which.
Managing orders across DMs and comments comes down to one decision you make before the post goes up: pick the single place where an order becomes real, and treat everything else as a pointer to it. A comment isn't an order. A DM isn't an order. They're both requests, and until you've written the request into one list with one code on it, you're holding two half-records of a ₱450 sale and hoping they're the same person.
That's the whole idea. The rest of this is the mechanics, the timestamps trick, and what happens on the Saturday when it goes wrong.
Nobody designed this. It's what happens when a platform gives you two inboxes that don't know about each other.
Here's the path a normal buyer takes. She sees the post. She types "mine" in the comments, because that's what your caption told her to do and because she can see three other people typing it and she's in a hurry. Then, thirty seconds later, she gets nervous. Did that count? Did you see it? So she opens your profile and sends a DM, saying she commented.
She's not being difficult. She's doing exactly what a person does when a system gives no confirmation. The comment vanished into a list of forty others and nothing came back.
So the duplicate isn't a buyer problem. It's a receipt problem. She sent the second message because the first one didn't produce anything she could hold on to.
Which tells you what the fix has to be. Whatever else you change, the buyer needs something back, fast, with a code in it. Everything in this article is downstream of that.
This is the part that quietly costs you the most time, and it's specific to how the apps display people.
In Instagram comments you see the username. @jhen.thrifts. In your DM inbox you see the display name, which is whatever she typed into her profile, and which might be "Jhen", might be "jhenn", might be her real full name, and might be a nickname you have never seen before. On Facebook it's the reverse problem: comments show a full name, and you've got three Maria Santoses.
So when a DM says "I commented earlier po", you have to open her profile to get the handle before you can match it to anything. That's ten seconds. Do it forty times on a Saturday and you have burned nearly seven minutes on nothing but identity lookup.
Two habits kill most of it:
The order of those two questions matters more than either one. Match the person first, then the item. Do it the other way round and you end up with an item, a size, an address and no idea which comment it belongs to.
You need a ledger. Not a vibe, a ledger.
It can be a Google Sheet. It can be a notebook. It can be the orders list in a shop tool. What it cannot be is the comment section, and it cannot be your DM inbox, because both of those are sorted by recency and both let the other party edit history.
The rule is that an order exists when it's in the ledger and not before. A comment saying "mine" creates nothing. A DM saying "I'll take the blue one" creates nothing. The moment you put a row in the list, it's an order, and from then on you only ever look at the list.
What goes in a row, minimum:
| Field | Why it's there |
|---|---|
| Code | So the buyer and you can both say the same word |
| Handle | The username, not the display name |
| Item | With the variant, because "the blue one" is not an item |
| Where it came from | Comment or DM, with the time |
| Amount | Including shipping, as one number |
| Paid | Yes, no, or partial with the amount |
The "where it came from" column looks like padding until the first time two rows look identical and you need to know whether they're one person hedging or two people who both want it.
A comment is a request. A DM is a request. Neither is an order until it is written somewhere neither of you can quietly edit.
A code does two jobs at once. It gives the buyer the receipt that stopped her sending a second message, and it gives you a search term.
Keep it short and human. Date plus a number works: 0809-14 for the fourteenth order on the eighth of September. So does the first three letters of the item plus a number. What matters is that you can type it into the DM search box and land on the right thread.
Then use it everywhere. In the comment reply. In the DM. In the payment reference you ask for. In the parcel label. When she asks "kailan po ship?" three days later, she sends the code and you're at the right row in four seconds instead of scrolling.
The payment reference is the one that earns its keep. If you're taking GCash or a bank transfer, ask her to put the code in the message field. Now your transaction history and your ledger share a key, and reconciliation stops being a memory exercise.
One more habit, and it's the one most sellers skip and then regret. Screenshot the comment thread the moment you close the round, before you start replying. Instagram lets a buyer delete her own comment, and if she deletes a claim after you've shipped and then disputes it, your evidence is a blank space where a comment used to be. The screenshot takes four seconds and you will need it about twice a year.
Once a week, sit down with three things open: your ledger, your payment history, and your unfulfilled pile.
Work in this order.
That third pass is the one everyone skips, and it's the one that finds lost revenue rather than lost admin. A claim with no row is a person who wanted to give you money and couldn't get your attention.
Expect it to take twenty minutes the first time and eight after that. If it's taking an hour, the problem isn't the reconciliation, it's that too much is being created in the wrong place during the week.
One email on pricing, photographs, delivery and getting paid. No pitch, no filler.
In the Philippines this is most of your orders, and it changes the reconciliation completely.
With a transfer, the money and the order arrive close together, so a paid order is nearly a settled order. With COD, the order exists for days before any money does, and the money arrives from the courier in a batch that doesn't look anything like your order list. J&T remits a lump sum covering fourteen parcels. Your list has twenty-two orders on it. Six were prepaid, two were returned to sender, and now you're doing subtraction.
So the ledger needs one more column for COD sellers: remitted. Not paid, remitted. An order can be delivered and not yet remitted, and if you mark it paid on delivery you'll double-count when the courier's payout lands.
The other COD reality is refusals. Some percentage of parcels come back, and every returned parcel is a shipping cost you paid twice for an order that generated nothing. Which is exactly why the claim-then-vanish buyer matters more here than in a card market. There's a fuller treatment of the money side in keeping track of who has paid, and the local picture is in selling online in the Philippines.
Marinel sells thrifted denim. Jackets at ₱450, jeans at ₱380, shipping ₱180 nationwide via J&T. She posts a drop most Saturdays at 8pm, usually 60 to 70 pieces, one of each, no restocks.
Her old routine: post the album, watch the comments, reply "mine noted" to each claim, then work through the DMs afterwards. A drop generated about 80 comments and about 50 DMs, and she'd finish sorting them around 1am.
The double-sells were running at three or four per drop. Every one of them cost her a message she hated sending and, twice, a buyer who told her followers about it.
What she changed, in order:
The number that moved wasn't sales. It was the drop finishing at 9:20 instead of 1am, and double-sells going to zero, because two people can't both complete a checkout for one unit. The page refuses the second one. That's not a clever feature, it's just what happens when stock lives in one place instead of in your head.
Her revenue per drop went up too, from about ₱21,000 to about ₱26,000, and she thinks that's mostly the buyers who used to comment at 11pm, get no reply, and buy something else.
It will happen. Handle it in the first ten minutes and it costs you a small refund. Handle it on day three and it costs you a reputation.
The order of operations that works:
Do not offer a discount as the apology. A discount asks them to spend more money with the person who just let them down.
Comments create urgency. DMs create trust. Neither one can hold state.
That's the honest division of labour. A comment section is the cheapest reach a small seller has, and it works precisely because it's public and fast. A DM is where somebody decides you're real. But if you ask either of them to remember that jacket 14 is sold, size L is gone, and Jhen paid ₱630 on Thursday, they will fail, because they're chat surfaces and chat has no state.
A page holds state. One unit of stock, one buyer, one refusal for the second person. The order arrives written out, with the item, the variant, the address and the total, instead of assembled by you from nine messages.
The wider case for splitting the job across three surfaces is in selling on social media without a website. If comment-claiming is the bulk of what you do, the rules and holding times are in selling in comments without losing track. And the DM side, including why Instagram makes this harder than WhatsApp does, is in turning Instagram DMs into orders.
Worth saying plainly, because this is the article where somebody's going to hope otherwise.
Sailo has no inbox. It does not read your comments, it does not read your DMs, and there is no feature that watches a post and turns "mine" into an order. The reconciliation between what's in your comments and what's in your list is done by you, by hand, every time. What Sailo can do is be the one place where the order becomes real, so that the list you're reconciling against is a real list and not a thread.
The money is the same story. There's no GCash or Maya rail. You can put your GCash number and name into the bank transfer instructions field so buyers see it at checkout, but Sailo can't see your GCash account, so it can't tell you a ₱630 payment landed. Only your GCash app can. Every manual rail on the platform works this way: you're the one who marks an order paid.
The free plan holds 10 products, which for a one-of-each thrift drop of 60 pieces means you're either listing in batches or paying $19 a month for the 100-product tier. Worth knowing before you build your Saturday around it.
Don't reorganise everything. Do this for a single post and see what happens.
Count two numbers at the end: how many double-claims you had to resolve, and how many claims never became orders. Those two numbers are the entire scoreboard. If the second one is bigger than the first, your problem was never the comments in the first place.
Written by
Sailo team
One link, your whole shop.
One email on pricing, photographs, delivery and getting paid. No pitch, no filler.
Sailo just gives it a front door — so people can browse, compare and see prices before they message you.
Get your linkFree while in beta · No card required