Stop shipping COD orders nobody confirmed.
Confirmly calls your cash-on-delivery customers 15 minutes after checkout, talks to them in their own language, and confirms the name, the items, the amount and the delivery address. You read what they actually said before the parcel moves.
360 free credits on install · ₹7.50 a minute of talking · No monthly fee
- Picked up
- Yes · 48 seconds
- Name confirmed
- Yes
- Items and amount confirmed
- Yes
- Address confirmed
- Corrected by the customer
- Language
- Hindi
Corrected address, in the customer's words
“Flat 402, not 401 — B wing, Sai Residency.”
Shown to you as a suggestion. Confirmly never edits a Shopify address on its own.
An illustration of the record Confirmly stores after every call — not a screenshot of a real customer.
The problem
You lose money on RTO twice.
Once when the parcel comes back — forward shipping, return shipping, packaging, and a product that has been around the country. And once before it ever ships, when a real customer got an automated call they did not understand, hung up, and got filed as “unconfirmed”. The second one is more expensive, and you never find out it happened.
A press-1 menu sorts your orders. A conversation saves them.
Keypad systems are built to be short, because every extra second costs the vendor money. Short means confusing, confusing means hangups, and a hangup gets filed as a no.
“Sorry, how much was the total?”
- Press-1 IVR
- Does not hear it. Repeats the menu.
- Confirmly
- Reads back the items and the total.
“The flat number is wrong — it is 402, not 401.”
- Press-1 IVR
- Does not hear it.
- Confirmly
- Writes down the corrected address for you to approve.
“Yeah, I'll take it.”
- Press-1 IVR
- No key pressed, so it counts as no reply.
- Confirmly
- Marks the order confirmed.
“Actually, I want to cancel.”
- Press-1 IVR
- Counts as a no — or as nothing at all.
- Confirmly
- Records a cancel request before the parcel moves.
“Who is this? I did not order anything.”
- Press-1 IVR
- Keeps reading the menu.
- Confirmly
- Marks it a wrong number and stops calling that number.
An order that only needed a question answered should not be a cancelled order.
How it works
Live before your next COD order.
Four steps, none of which need a developer.
- 1
Install and connect
One click from Shopify. Confirmly imports your last 7 days of orders, then keeps up with new ones over Shopify webhooks. No code, no theme edits.
- 2
Choose who gets called
COD only, prepaid only, or both. Set the wait after checkout, the number of attempts, the language, and whether calls are recorded. Out of the box: COD orders only, 15 minutes after checkout, 3 attempts, in Hindi.
- 3
Turn calling on
Calling stays off until you switch it on. Installing the app never starts dialling your customers, and you start with 360 free credits — about 2 calls — to hear it first.
- 4
Read the result before you ship
Each order carries what happened: confirmed, cancel requested, wrong number, address corrected, or no answer. Nothing is changed in Shopify on its own — you decide what to do.
The wait before the first call is deliberate. An order cancelled in the first few minutes is never called at all — and 15 minutes is only the default. You can set anything from immediate to a full day.
Features
Everything a keypad menu cannot do.
Each of these is something the app does today. The order sync, the settings, the eligibility rules, the queue, the call record, the address approvals and the retention job are all built and running.
A conversation, not a keypad
The agent reads back the name, the items and the amount, and asks the customer to confirm. They answer in words. A question gets an answer instead of a repeated menu.
7 languages, chosen per store
Hindi, English, Gujarati, Marathi, Tamil, Telugu and Bengali. You pick one language for your store's calls in settings.
Address corrections you approve
The delivery address is read out and checked. A correction is stored exactly as the customer said it, shown beside the address Shopify has, and applied only when you click. Confirmly cannot edit a Shopify order — it never asked for the permission.
Every attempt kept, not overwritten
Open an order and you see each dial in order: when it went out, what it confirmed, how long it ran, and the transcript. "No answer at 10am, confirmed at 4pm" is a fact worth keeping.
Retries on a ladder you set
No answer is not a cancellation. Confirmly waits 30 minutes and tries again, up to your attempt limit — 3 by default, and up to 5.
The outcome is derived, not announced
An order is only marked confirmed when the name, items and address were each actually confirmed on the call — never because the agent said the words "your order is confirmed".
Four statuses, and the reason under each
Completed, Pending, Failed, or Not calling — that is the whole list. An order that is not being called carries the exact rule that stopped it: no phone number, wrong payment type, already fulfilled, attempts used up, or simply waiting for the interval.
Transcript, notes and recording
Every call stores its transcript line by line, its length, and any question the agent would not answer — in the customer's own words, never a summary. Recording is a switch, off by default.
Forgets on a schedule
After 30 days the personal details go and the row stays: name, phone, address, items, transcript and recording are removed, while the order number, totals and outcome survive so last month's numbers do not change.
Settings apply to orders already queued
Change the wait, the attempt limit or who gets called, and orders already waiting are rescheduled. A setting that only affects future orders is not a setting anyone can use.
Inside the app
Four screens, and nothing hidden behind them.
Confirmly runs inside your Shopify admin. Your orders, everything that happened on the phone about one of them, the rules that decide who gets called, and what every call costs — that is the whole app.
| Order | Customer | Total | Payment | Call |
|---|---|---|---|---|
| #1042 | Anjali Rao | ₹1,499 | COD | Completed |
| #1041 | Rakesh Patel | ₹899 | COD | Pending |
| #1040 | Meera Iyer | ₹2,250 | COD | Not callingNo phone number |
| #1039 | Sameer Khan | ₹640 | Paid | Not callingNot selected for calling |
| #1038 | Divya Nair | ₹1,120 | COD | Completed |
| #1037 | Harsh Mehta | ₹3,400 | COD | FailedAll attempts used |
Four statuses, not twenty-two — and an order that is not being called carries the exact rule that stopped it underneath. A missing phone number is something you can find and fix, rather than a row that quietly never appears.
These are accurate renderings of the app's own screens — same filters, same labels, same wording — drawn rather than photographed, because the app is not yet on a public store.
Why merchants use it
Ship the orders that are real. Find the ones that are not.
Fewer parcels shipped to nobody
A COD order that the customer never meant to place costs you forward shipping, return shipping, packaging and a product that has been around the country. A confirmation call finds those before the parcel moves.
Fewer real orders cancelled by mistake
A customer who hung up on a keypad menu is not a customer who said no. Confirmly hears "how much was it again?" and answers it, instead of filing the order as unconfirmed.
Wrong addresses caught before dispatch
A wrong flat number is worse than an RTO — the parcel goes to a real address that is not your customer's, and nobody finds out for days.
A bill you can read line by line
₹7.50 a minute of talking — a typical confirmation call is about 2 minutes, so around ₹15. A call nobody answers costs nothing. No monthly fee, no plan tiers, no minimum.
Nothing happens without you
Calling is off until you switch it on. Corrections are suggestions until you apply them. Confirmly does not cancel orders or edit addresses on its own.
Your team keeps the phone down
Confirmation calling is the job a small ops team does by hand and hates. It runs on a schedule instead, and the ones that need a person are the only ones flagged.
Eight outcomes, so you know what to do next
The outcome is worked out from what was actually confirmed on the call, never from what the agent said. An order is only marked confirmed when the name, the items and the address were each settled.
- ConfirmedName, items and address all checked out.
- Confirmed, address changedThe customer gave a corrected address, in their own words.
- Customer wants to cancelThey said no. Better now than after the parcel ships.
- Needs a personThe agent handed over, or ran out of time without settling it.
- Wrong numberSomebody else answered. Retrying the same number is pointless.
- Call back laterThe customer asked for another time.
- No answerNobody picked up. Not charged, and it earns another attempt.
- Could not connectBusy, failed or unreachable. Not charged.
Pricing
Pay for time spent talking. Nothing else.
Most COD apps charge you whether you took twelve orders or twelve hundred. Confirmly charges by the minute, and only when someone picks up.
Per minute of talking
₹7.50
90 credits per started minute
A confirmation call runs about 2 minutes, so a typical one costs around ₹15.
Billed in dollars instead? $0.09 a minute, top up from $1.
Join the waitlistWhat that includes
- 360 free credits on install — about 2 calls
- A call that is not answered costs nothing
- No monthly fee, no plan tiers, no minimum
- Top up from ₹50 — any amount, not fixed packs
- Paid through Shopify's own billing, so your card never reaches us
- Every credit movement is one row in a history you can read
- Run out and calling pauses — orders keep their place in the queue
How the minutes are counted
Every started minute counts, the same way our telephony supplier charges us. A 40-second call is one minute. A 65-second call is two. There is no hidden rounding beyond that, and every call's length is in your history.
A hundred confirmation calls a month is roughly ₹1,500 at typical length. The rate does not change with volume, and there is nothing to cancel if you stop.
Your customers' data
It forgets, on a schedule.
Confirmly copies a customer's name, phone number and home address so an agent can read them back. That is useful for a day. It is a liability for a month.
After 30 days, the details go
The personal parts are removed and the row stays, so your past months do not silently change.
- Removed
- Customer name · Phone number and email · Street address and postcode · The line items · The call transcript · The recording
- Kept
- Order number and totals · COD or prepaid · Dates · The call outcome and how long it ran · City, state and country
Shopify's data requests are wired up
All three privacy webhooks Shopify requires of any app that touches customer data are handled, not just declared:
- customers/data_request
- customers/redact
- shop/redact
Uninstalling deletes your store's data.
What Confirmly never asks for
- Permission to change your orders. It asks Shopify to read orders and customers, nothing more.
- Your card. Credits are bought through Shopify's own billing.
- Anything from your storefront. There is no script on your theme.
Recording is off unless you turn it on. Transcripts are kept either way, and both are removed with everything else after 30 days.
The full detail is in the privacy policy.
FAQ
Questions merchants actually ask.
Will customers know they are not talking to a person?
How am I charged?
What does it cost to try?
What is the smallest top-up?
What happens when I run out of credits?
What if the customer does not answer?
Does Confirmly change my orders in Shopify?
Which orders get called?
Can I stop it quickly?
How is this different from an IVR app?
Do I need a developer?
Are calls recorded?
Stop cancelling orders your customer wanted.
The Shopify side is built and working — orders sync, the queue runs, call results and transcripts land against the order, and credits and billing are live. Real outbound calling is waiting on Indian telephony onboarding, so we are letting merchants in a few at a time.
360 free credits when you install · No card required to try