Cash on delivery order confirmation, before anything ships
Portantis texts every new cash-on-delivery order, updates your store from the customer's answer and, in beta, calls risky orders and checks addresses before shipping.
In cash-on-delivery markets, an order nobody meant to place, or one no courier can deliver, costs the seller shipping both ways and earns nothing.
Confirming orders and checking addresses stops that loss before the parcel leaves. The address check, still in beta, already runs daily on a live store running Portantis, where 94% of parcels left with a validated address.
Cash on delivery charges you for every bad order
With cash on delivery, the customer pays only when the parcel arrives. An order nobody really meant to place, a duplicate, or an address no courier can find still gets picked, packed and handed to the courier.
When that parcel comes back, you have paid shipping both ways and collected nothing. Phoning every order to check it would take someone all day, and a small team cannot spare that.
A yes from the customer before the parcel leaves
Every new cash-on-delivery order gets a short text, and the customer confirms or declines with one reply. Your store updates by itself: confirmed orders are marked, and declined ones can be cancelled and put back in stock without anyone opening them.
You start safely: see the message before it goes out, try it on your own phones first and choose how many texts go out each day. Unclear answers, orders nobody answered and anything that needs a decision wait in one list for your team, and you are warned if answers stop coming back.
Around confirmation sit the checks that catch the rest. Duplicate order protection, in beta, shows how much money was at risk. You see why orders were cancelled, you are told when an order is still open after its parcel came back, and marketplace orders sit in one list you can search, with AWBs and invoices printed in batches.
Orders has its own section in the menu with Confirmations, Draft orders and Address Validation. Marketplace orders have their own list you can search.
Customers answer in their own words; in beta, AI also makes the calls
Customers can answer the text however they like. Clear answers are applied to the order for you, and anything that is not clear waits for a person.
Phone calls are in beta. An AI voice calls customers during the hours you choose, starting with the orders most likely to come back. It confirms the order or takes a corrected address, and notes what changed on the order in your store.
How it works
1A cash-on-delivery order comes inThe customer gets a short text asking them to confirm the order.
2The customer answersA yes confirms the order. A no cancels it and puts the items back in stock, if you choose. Anything unclear waits for your team.
3Silent and risky orders get a call (beta)Customers who did not answer, or whose order looks risky, get an AI call during the hours you choose.
4The address is checked (beta)Addresses a courier might not find are fixed in your store where possible. The rest wait in one list for your team.
5Only confirmed orders ship (beta)With the shipping hold on, orders wait until the customer has confirmed and the address is good, then move on by themselves.
What changes for you
Declined orders cancelled and back in stock without anyone touching them
Unclear answers waiting in one list for your team
You choose how many texts go out each day
See whether confirming cuts refused parcels on your own orders
99% of addresses checked before the courier gets the parcel
94% of parcels left with a validated address
Measured on a live store running Portantis in September 2026.
Orders, feature by feature
Confirm cash on delivery orders by text
Every new cash-on-delivery order gets a short text, and the customer confirms or declines with one reply. The answer lands on the right order, so unwanted parcels are stopped before anyone packs them.
You write the message in your own words, with your store name, and see it before it goes out.
Customers answer with one simple reply, and you choose the words they use.
You decide how long to wait for an answer. Orders with no answer go to your team, or to an AI call (beta) when calls are on.
Only orders placed after you switch it on get a text, so older customers never get one out of the blue.
Confirming orders takes no phone time from your team, and every answer stays on the order it belongs to.
Declined orders cancelled and restocked in Shopify
A customer's answer updates the store order without anyone opening it. Confirmed orders are marked, declined orders can be cancelled and put back in stock, and customers can answer in their own words.
Clear yes and no answers are applied for you. Questions, change requests and anything unclear go to a person.
You decide whether a no cancels the order. The customer gets no cancellation email and no automatic refund.
You can also have declined orders removed from your store completely. You confirm this first, because it cannot be undone.
Late or unclear answers never change an order on their own.
Items from declined orders go back on sale right away, and nobody cancels orders by hand.
Stop shipping to customers who refuse parcels Beta
Customers who keep leaving cash-on-delivery parcels uncollected have their next order cancelled before you pay for a text, a call or a shipping label.
Only parcels that really came back uncollected count against a customer.
You choose when it starts, and orders already paid online are never cancelled this way.
The customer gets no message, and the order is marked so your team sees why it was cancelled.
You see how many of your customers refused parcels, across all your stores.
Repeat refusers stop costing you shipping both ways, because their next order never leaves.
Test confirmation texts before customers get them
You try confirmation texts on your own phones and set limits before real customers see them. The page warns you if answers stop coming back, so a problem shows up on screen instead of in refused parcels.
Test mode sends texts only to the phone numbers you choose, and you decide how many texts go out each day.
Before you switch on, you make sure no other text tool is also messaging your customers, so nobody gets two texts.
You see when the last answer arrived and are warned when answers stop while texts keep going out.
You can pause at any time, and the full history stays.
A wrong message or a broken reply line shows up on your own phones before any customer sees it.
AI calls that confirm cash on delivery orders Beta
When a text gets no clear answer, an AI voice calls the customer during your hours, confirms the order or takes a corrected address, and notes the result on the store order.
Calls happen only during the hours you set, and the orders most likely to come back are called first.
You decide whether orders nobody answers are cancelled. That stays off until you switch it on.
Change requests and company invoice details go to your team, and the order waits for them.
You try it on a few orders first. Every order is called only when you say so.
Silent and risky orders get a real conversation without anyone dialling, and only calls that need a decision reach a person.
Address check before every parcel ships Beta
Every new order's address is checked before it ships. Mistakes are fixed in the store where possible, and the rest go to a person with the problem named.
Fixed addresses are updated on the store order, and you can always see what changed.
Problems are named in plain words, such as a missing house number or a town that does not match its region.
When an address cannot be fixed, an AI call (beta) asks the customer, and your team steps in if that does not work.
One list shows every address waiting for a fix, with the oldest flagged, and a history shows every check and what it changed.
Parcels stop travelling to addresses couriers cannot find: 99% of addresses checked before the courier gets the parcel, on a live store.
Hold unconfirmed cash on delivery orders Beta
New cash-on-delivery orders wait until the customer has confirmed and the address is good. Then they move on to label printing by themselves.
An order leaves only after a yes from the customer, by text or by call, and a checked address.
Orders that were declined, need a change or are waiting for your team stay held.
An address changed on a call is checked again before the order ships.
Orders paid online are never held.
Parcels leave only after the customer said yes and the address is good, with nobody checking the list by hand.
Why orders were cancelled, and whether confirming pays off
Every cancelled order shows one reason, and refused parcels are compared by how the order was confirmed, so you see where cash-on-delivery losses start and whether confirming pays off on your own orders.
Each cancelled order shows one reason, such as not collected, declined by the customer, customer request, out of stock, fraud or duplicate.
You see how many customers said yes and how many said no to the text, day by day.
Refused parcels are compared for orders confirmed by text, by call and not confirmed at all.
You are told when an order is still open after its parcel came back.
You see which losses confirming removes and which need another fix, such as stock or repeat refusers.
eMAG and Trendyol orders, AWBs and invoices
Orders from marketplaces such as eMAG and Trendyol sit in one list you can search, and ready orders become one AWB file and one invoice file to print, instead of downloads from each marketplace.
You see every marketplace order with its status, delivery and AWB, and you can search the list.
Ready orders come together in one print batch, and you mark it printed so nothing is printed twice.
You choose your invoice series for each marketplace once, and invoices are made only after you confirm.
A sales overview compares orders, revenue, returns and your best channels with the previous period.
Printing comes down to two downloads per batch.
Catch orders placed twice Beta
When the same customer places the same order twice, the extra copy is cancelled before it ships, so you never pack, send and pay return shipping for a parcel the customer only wanted once.
You decide how far back to look for copies, or switch it off.
The extra copy is cancelled and marked as a duplicate, so you always see why.
The customer hears from you once about what they ordered, not once per copy.
Duplicates show up among cancellation reasons with their value, so you see how much would have shipped twice.
One customer gets one parcel, and the copy they would have refused never costs you return shipping.
What you can do with Orders
Stop packing orders nobody meant to place
Switch on confirmation texts and every new cash-on-delivery order asks for a yes. A no cancels the order and puts the items back in stock before anyone picks it, and with the shipping hold (beta), the warehouse packs only parcels a customer confirmed.
Launch confirmations on your own phones first
Put your team's numbers in test mode, choose how many texts go out each day and watch the answers come in. When the message reads right, switch to real orders.
Turn away customers who refuse parcels
In beta, customers who keep refusing parcels have their next order cancelled before you spend on a text, a call or a label, and you see how many of your customers refuse parcels.
Catch the same order placed twice
A customer taps order twice and two identical parcels would ship. Duplicate order protection, in beta, cancels the extra copy and shows duplicate as the reason.
Ship only addresses couriers will accept
In beta, each address is checked when the order comes in. Fixable ones are corrected in your store and the rest wait in one list with the problem named, before any label prints.
Let AI call silent orders for you
Orders with no clear answer get an AI call during your hours, a beta feature. The call confirms the order or takes a new address, and only change requests or company invoice details reach your team.
Print marketplace AWBs and invoices in batches
Put ready eMAG or Trendyol orders in one batch, download one AWB file and one invoice file, print, and mark it printed so the next batch starts where this one ended.
Prove confirmation pays on your orders
Compare refused parcels for orders confirmed by text, by call and not at all, on your own orders, and see every cancellation by reason and value before deciding what to switch on next.
The work it takes off your team
Task
By hand
With Orders
Confirming cash-on-delivery orders by phone
Someone calls or texts each new order, waits for the answers and types every result into the store by hand.
Customers confirm by text and your store updates by itself. Your team sees only the unclear answers.
Cancelling and restocking declined orders
Open each refused order, cancel it, put the items back in stock and leave a note for the warehouse.
Declined orders are cancelled and back in stock without anyone opening them.
Checking addresses before printing labels
Read every address, look up the postal code, check the courier delivers there and call the customer when something looks wrong.
Addresses are checked for you, in beta, and your team sees only the ones with a problem.
Spotting repeat refusers and duplicate orders
Search past orders before shipping and rely on memory for who refused parcels or ordered twice.
Both are caught and cancelled before a label is made. This is in beta.
Printing marketplace AWBs and invoices
Download each AWB and invoice from every marketplace order, one by one, and keep track of what was printed.
Ready orders become one AWB file and one invoice file, marked printed when you are done.
Everything Orders does
Status checked
Working today
Order confirmation by textEvery new cash-on-delivery order gets a short text. The customer confirms or declines with one reply.
Replies in the customer's own wordsCustomers answer however they like. Clear answers are applied for you; unclear ones go to a person.
Store updated from every replyConfirmed orders are marked in your store. If you choose, declined ones are cancelled and put back in stock without anyone touching them.
Safe confirmation rolloutSee the message first, try it on your own phones and choose how many texts go out each day before customers get it.
Confirmation attention queueOne list for everything that needs a person: unclear answers, orders nobody answered and anything that did not go through.
Reply channel health warningWarns you when customers' answers stop coming back while texts keep going out.
Does confirming pay offSee whether orders confirmed by text, by call or not at all get refused more often.
Cancellation reasonsSee why orders were cancelled, such as not collected, declined by the customer, duplicate or out of stock.
Returned but still open alertTells you when an order is still open after its parcel came back.
Marketplace orders listEvery marketplace order in one list you can search, with its status, delivery and AWB.
AWB and invoice print bundlesTurn ready marketplace orders into one AWB file and one invoice file to print, and nothing gets printed twice.
In beta
AI confirmation callsAn AI voice calls customers during your hours to confirm orders and fix addresses, and notes what changed.
Risky orders called firstThe orders most likely to come back are called first.
Text first, then callCustomers who do not answer the text get a call. You decide whether orders nobody answers are cancelled.
Hold shipping until confirmedCash-on-delivery orders wait until the customer has confirmed and the address is good, then move on by themselves.
Automatic address check and fixEvery new order's address is checked and fixed in your store when possible.
Address fix queueAddresses a courier might not find wait in one list, with the problem named, what the customer said on the call and a map.
Duplicate order protectionCatches orders placed twice and shows how much money was at risk. The customer gets one call, not one per copy.
One hub for every order, invoice and AWBEvery order from every store and marketplace in one list, invoiced, shipped or cancelled from the same screen.
Coming next
Cash-on-delivery handling feeAdd a small fee to cash-on-delivery orders automatically.
Questions about Orders
What is Orders in PortantisAI?
Orders is the PortantisAI module that confirms every new cash on delivery order with a short text and updates your store from the customer's reply. Unclear answers wait in one list for your team. In beta, it also calls risky orders and checks addresses before the courier collects the parcel.
Does Orders work with Shopify and marketplaces?
Yes. Shopify orders come in by themselves, and every answer updates the order in your store: marked, cancelled or put back in stock. Orders from marketplaces such as eMAG and Trendyol sit in their own list you can search, with AWBs and invoices printed in batches. One place for every order from every store and marketplace is in beta.
What happens when a customer's reply is unclear?
Clear answers are applied for you. Anything that is not clear goes to one list for your team, together with orders nobody answered and anything that did not go through, so a person decides. You are also warned if answers stop coming back while texts keep going out.
Are the AI confirmation calls ready to use?
Not fully yet. AI confirmation calls are in beta, which means they work and are in use but are still being improved. Confirmation by text is live. Calls happen only during the hours you set, reach the riskiest orders first and ring customers who did not answer the text.
Can it stop a bad address from reaching the courier?
That check is in beta. Every new order's address is checked and fixed in your store when possible. Addresses a courier might not find wait in one list with the problem named, and the shipping hold keeps those orders from leaving until they are confirmed and the address is good.
How do I know confirmation is worth it for my store?
Orders shows whether orders confirmed by text, by call or not at all get refused more often, on your own orders. Cancellation reasons show why orders were cancelled, such as not collected, declined, duplicate or out of stock, so you see where the losses start.
Where do the address figures on this page come from?
They were measured on a live store running Portantis in September 2026, while the address check was in beta. Your own results will depend on your customers, your products and your couriers.
Are orders paid by card also sent a confirmation text?
No. Confirmation is for new cash-on-delivery orders. Orders already paid online go through as usual, and only orders placed after you switch confirmation on get a text, so older customers never get one out of the blue.
Does the customer get an email or a refund when a reply cancels the order?
No. A declined order is cancelled and its items go back in stock, and the customer gets no cancellation email and no automatic refund. If you also chose to remove declined orders from your store completely, you confirm that first, because it cannot be undone.
What happens when an ordered product is out of stock?
In beta, calls about that order wait until the product is back in stock, so nobody calls a customer about something you cannot ship. Orders cancelled for missing stock are counted under their own reason, separate from refused parcels.
What if a customer answers too late?
The answer is saved but does not change the order. By then the order has already moved on: to your team, or to an AI confirmation call when calls are on, which is in beta.
Does pausing confirmations release held orders?
No. Pausing stops new texts and keeps the full history, but an order still waiting for a yes stays held until it is confirmed. AI calls, in beta, have their own pause, and one main switch stops all automation and AI spending.