A customer rings up forty minutes after ordering and asks you to change the delivery address. Can you, and what does your system have to know to answer?
There is no single point of no return - each downstream hand-off has its own. Model the change as a request that can be refused, priced and re-screened rather than an edit to the order, because a new address can move the shipping cost, the tax base and the fraud risk.
What the interviewer is scoring
- Does the candidate locate the point of no return per downstream system rather than assuming one global cut-off
- Whether the amendment is modelled as a request that can be refused, rather than a mutation of the order record
- That the commercial consequences are raised - carriage cost, tax base, delivery promise - and not only the logistics
- Whether an address change is recognised as a fraud and account-takeover signal that should re-screen the order
- Does the answer say what the agent can promise the customer at each stage instead of leaving it to hope
Answer
There is no single point of no return
The wrong answer is a number. "We allow changes for thirty minutes" describes a policy invented to avoid understanding the pipeline, and it is either so conservative that agents refuse changes that were perfectly possible, or so generous that it promises changes that have already failed. The right answer is that the order has crossed a series of hand-offs, each of which took a copy of the delivery address for its own purpose, and the question is which of them can still be unwound.
Follow the order forward. It was accepted and priced. Payment was authorised against an amount that included carriage for the original destination. Inventory was allocated, possibly across more than one location. The lines were released to a warehouse management system, which planned them into a wave. Somebody picked them. A packing station generated a shipping label with the address printed on it and a tracking number registered with the carrier. The consignment was manifested to the carrier and physically collected.
flowchart LR
A[Order accepted] --> B[Payment authorised]
B --> C[Allocated to nodes]
C --> D[Released to warehouse]
D --> E[Picked]
E --> F[Label printed]
F --> G[Manifested to carrier]The interesting boundary is between release and label print: before it the address is only data in your systems, and after it the address exists on a physical object and in a third party's network.
Everything before release is cheap: the address is a field in your own datastore and nothing has consumed it irrevocably. Between release and picking it depends entirely on whether your warehouse system will accept a hold on an in-progress task, which is a real integration question and often the answer is no. After the label prints, the change is physical work on the packing floor. After manifest, you are asking a carrier to intervene in their own network. So the honest response to "can you" is "it depends where the order is, and I can tell you, because the fulfilment state is visible in the record the agent is looking at".
What an address change is not
It is not a text edit. Changing the destination can change three commercial facts at once, and a system that treats it as a field update will get all three wrong quietly.
Carriage cost moves. A different postcode may fall into a different zone, a different service level, a surcharge area, an island or an offshore territory, or outside your delivery footprint entirely. If the original order was charged free delivery on a threshold that the new destination does not qualify for, you now have a mismatch between what you charged and what it costs you to serve.
The tax base can move, because tax is generally a function of where the goods are delivered. Within one country and one rate this is invisible; across a border it changes the total, brings duty and import treatment into scope, and may make the item non-shippable. An amendment flow that cannot re-run the tax calculation and re-authorise a higher total is incomplete.
And the delivery promise moves. The date the customer was given was computed from a sourcing decision to a specific destination, and re-pointing the parcel may invalidate it. Silently keeping the old promise on the confirmation while the parcel takes two days longer is a complaint you have chosen to receive later rather than a conversation you have now.
An address change is a fraud signal before it is a logistics problem
This is the part that separates a strong answer, and most candidates never reach it. Redirecting goods to a new address shortly after an order is placed is a well-known pattern in account takeover and card fraud: the card details are legitimate, the original order looks clean because it went to the cardholder's address, and the amendment moves the goods somewhere the fraudster controls. Contact centres are the target because a persuasive caller is easier than defeating a fraud model.
So an amendment must re-enter risk assessment rather than bypass it. The signals are the same ones the original order was scored on plus the new one that the destination has changed: how the change was requested, whether the caller was authenticated to the standard the original order required, the value and resaleability of the goods, whether the new address has appeared on other orders, and how far it is from the billing address. Recording who requested the change, through which channel, and who authorised it is not bureaucracy — it is the evidence you will need when the transaction is disputed, and the deterrent that stops a compromised agent account being the cheapest attack on the estate.
A defensible design puts a value threshold on unauthenticated changes, restricts high-value amendments to the account holder acting through an authenticated channel, and treats a first-time address as different from one already on file.
Model the amendment as a request, not an edit
The design that survives all of this is to make the amendment a first-class object rather than a mutation. An amendment request records the desired change, its origin and requester, and moves through its own small lifecycle: submitted, risk-assessed, priced, attempted against the fulfilment pipeline, and then accepted or rejected with a reason. The order is only changed when the request succeeds.
That structure buys you several things at once. It is asynchronous, which matches reality, because the answer genuinely depends on a hold succeeding in a warehouse or an intercept being accepted by a carrier. It is auditable, so you can explain later why the parcel went where it went. It gives the agent something honest to say — "I have requested it and you will get a confirmation within the hour" — rather than a false certainty. And it makes rejection an ordinary outcome instead of an exception nobody designed for.
The compensating alternative is cancel and reorder, and it is worth being clear that it is not free. Cancelling releases the allocation, which may be immediately taken by someone else, so the customer can end up with nothing. The reorder is priced at today's prices under today's promotions, which may be worse than the ones they had. Loyalty accrual, a gift card that was partly consumed, and the original authorisation all have to be unpicked. It is the right tool when the change is large — a different country, a different set of lines — and the wrong tool when a single character of a postcode was mistyped.
The window after the label and before the door
Between label print and delivery there is a genuinely awkward region where your systems no longer control the outcome but the parcel has not arrived. Many carriers offer some form of redirect, intercept or hold-at-depot facility, usually chargeable and usually not guaranteed, and increasingly they offer it to the recipient directly rather than to you. Two consequences follow. First, if the carrier can be asked, your amendment flow should be able to ask, and the cost and the uncertainty should be surfaced rather than hidden. Second, if the recipient can redirect the parcel themselves, then your order record and the carrier's delivery record will disagree about where the goods went — which matters for a later dispute, and means you should ingest the final delivery address from the tracking events rather than assuming your own field is the truth.
If nothing can be done, the fallback is refuse-on-delivery or return-to-sender followed by a reshipment, and the useful thing to know is who bears the double carriage. Deciding that in policy, by fault and by value, is better than deciding it per call.
Do not answer with a time limit. Answer with the fulfilment state, because the pipeline decides what is possible and only the pipeline knows. Then treat the amendment as a priced, risk-assessed request that the pipeline is allowed to refuse.
Likely follow-ups
- The parcel is already manifested. What are your options and who pays for them?
- The new address is in a different tax jurisdiction and the total changes. Do you re-authorise, and what if that declines?
- How would you expose the amendment cut-off to a contact-centre agent so they never over-promise?
- Cancel and reorder loses the promotion the customer had. How do you handle that fairly?
Related questions
- A fill arrives for an order your system has already marked cancelled. What do you do?hardAlso on order-lifecycle5 min
- Walk me through the lifecycle of an equity order from the click to settlement.mediumAlso on order-lifecycle7 min
- Walk me through an order's journey from placement to delivery. How would you model its status?hardAlso on order-lifecycle6 min
- A maintenance script deletes rows it should not have touched, and nobody notices for six hours. Walk me through the recovery.hardSame kind of round: scenario6 min
- A customer ports their number away to another operator. What has to happen on your side, and what usually goes wrong?hardSame kind of round: scenario6 min
- A customer's API token turns up in a public repository. What do you do in the next hour, and what in your token design decides how bad this is?hardSame kind of round: scenario6 min
- A dependency that normally answers in 80ms starts taking eight seconds. What in your service reacts, and in what order?hardSame kind of round: scenario6 min
- A dividend is declared and half the client's holding is out on loan while part of the rest is pledged as collateral. Who receives the income, who votes, and what does your system show the client?hardSame kind of round: scenario5 min