Skip to content

Case study · MyDTDC · Android · Doorstep pickup · 2026

A doorstep pickup that keeps its promise, or tells you early.

My own paid pickup never came.

Role
Product designer, solo
Timeline
Sep – Oct 2026
Scope
Booking to refund, Android
Status
Concept · clickable prototype
Home, with the pickup tracker for today, 10 am to 1 pm, docked above the bottom menu.Your pickup: executive assigned, with an ID and separate call buttons for the executive and the Koramangala branch.A missed pickup that apologises, confirms the ₹100 refund and recommends a free new time.

Chapter 01 of 05

Context

A solo concept: research, flows, screens, a design system and a prototype, from public reviews, the live app and six other courier apps.

The whole story, in 30 seconds.

  • 3 daysI waited for a pickup I’d already paid for
  • 306one-star reviews describe a missed or late pickup
  • 13 → 5steps to book a pickup
  • 2 → 9pickup stages the app shows you

Paid ₹535. Promised “today”. Nobody came.

My bookingBengaluru → West Bengal
Shipping
₹435
Doorstep pickup
₹100
Paid upfront
₹535

Pickup promised: “within a stipulated time”

  1. Day 0Booked and paid“Pickup today.”
  2. Day 1Waited all day. No call, no message.
  3. Day 2Called support“It will be done today.”
  4. Day 3Same answer. Cancelled.

Chapter 02 of 05

Problem/Opportunities

Paid upfront. Then silence. Hundreds of reviews describe the same thing.

306 reviews, read by hand.

Google Play reviews · bars to scale
  • All reviews8,369
  • One-star6,065
  • Pickup missed or late306
“Evrytime I call the Customer service, they just tell that the pickup will be done today.”
One-star review · Aug 2022 · spelling as written

Where people get stuck.

15notesSupport dead-ends
  • “They just pick the call and dont even respond.”Aug 2024
  • “No response only from service centre.”Dec 2025
15notesPickup not done, cancel fails
  • “They will schedule your pickup but never pickup on time.”Feb 2023
  • “Booked a pickup for an urgent international shipment… still no sign of any pickup.”Apr 2026
13notesPayment and refund
  • “My money is debited but no pick up is done.”Feb 2023
  • “I had requested for refund before 15 days but still the refund amount not received.”Jan 2025
Play Store one-star reviews, Jan 2023 – Sep 2026, grouped by hand. Names removed.

Four places to look. None knows your pickup.

The live app · v3.8.2

  • The live app's side menu with twelve links.

    Twelve links, none about your pickup

  • Bookings showing 'No Bookings!' with a Retry button.

    “No Bookings!”, right after you booked

  • Tracking, asking for an AWB number.

    Asks for a number you don’t have yet

  • Contact us, with a phone number, a service query button and a chat button.

    A phone number, and a long wait

Others charge less and promise more.

What a sender needsMyDTDCDelhiveryBlue DartIndia PostPorterShiprocket
Choose a pickup timeNoYesNot statedYesYesYes
ConfirmationNoYesNot statedYesYesYes
Agent detailsNoNot statedNot statedPartlyNot statedPartly
Status before pickupNoYesNot statedNot statedYesYes
Arrival alertNoYesNot statedNot statedNot statedYes
Reschedule in the appNoYesNot statedNoNot applicableNot applicable
A plan if they miss youNoPartlyNot statedNot statedNot statedNot stated
Pickup charge₹100Free—₹50₹40+₹45+
YesPartlyNot statedNoPublic sources, read 28 Sep 2026. MyDTDC charges the most for the weakest promise, and no one says what happens if they miss you.

The app speaks once, at payment.

Today Redesign
  1. 1 · PayYou pay, but get no timeA time before you pay
  2. 2 · WaitNo updatesStatus without asking
  3. 3 · Pickup dayNobody comesWarned early, while there’s time
  4. 4 · SupportNobody owns itAn owner for every problem
  5. 5 · Way outMoney stuckEasy rebook, a dated refund

Chapter 03 of 05

Scope

How might we turn a paid pickup into a promise you can see, and a missed one into a plan, not a phone call?

Three promises to design for.

  1. 01Name the time before the payment
  2. 02Warn while there’s still time
  3. 03Give every failure an owner and a date

Two kinds of people sending parcels.

Primary · my own bookingThe one-off sender
“Parcel not picked, wasted my time waiting for pickup.”Pranay
  • A time to plan around
  • Who is coming
  • Updates without asking
  • A quick way out
missed-pickup reviews
306
match this pattern exactly
79
Secondary · review patternsThe time-critical sender
“After 30 hours of booking even pickup hadn’t happened. It was urgent.”Play review, Apr 2025
  • A guaranteed window
  • Early warning
  • A fast fallback
  • Premium refunded
reviews mention premium or express
52
of them missed or late
46
FigJamEmpathy map · the one-off sender
An empathy map for the one-off sender, with four quadrants — says, thinks, does, feels — above pains and gains wanted. 'Says' quotes one-star reviews verbatim.

Map every stage. Show only the next one.

Shown today · 2 Added · 7
  1. Booked and paidShown today
  2. Time confirmed
  3. Executive assigned
  4. On the way
  5. Picked upShown today

No executive by 9 am

  1. At risk
  2. Missed: case open
  3. Refund in progress
  4. Refunded
  • Within a stipulated timeThu 1 Oct, 10 am – 1 pm
  • No updateExecutive assigned · ID DX-2041 · Call
  • It will be done todayExecutive not confirmed yet. Next update by 11 am.
  • Refund in some days₹435 is on its way. By Thu 8 Oct.

One new screen. Three ways in.

  • Three ways in
  • Home · your pickup card
  • Bookings
  • Any alert
New · Pickup detailThe new Pickup detail screen: executive assigned, who is coming, and what happens next.
  • On it
  • Status and the pickup time
  • Who is coming, with a call button
  • Reschedule or cancel
  • Help with this booking
  • A case, if it’s missed
  • The refund, tracked
  • The bottom menu stays as people know it.

29 ideas. 14 kept. These three cut.

  • DroppedA live map of the ExecutiveOne Executive, many pickups. A jumping dot promises more than DTDC can keep.
  • Built, then droppedAn “Ask AI” support tabA worried sender needs a person and a deadline, not a bot.
  • ReversedCharge the ₹100 after pickupTwo payments. A dated refund builds the same trust with one.
FigJam29 ideas, by value and effort
An impact versus effort matrix of 29 ideas in four quadrants — quick wins, big bets, fill-ins and not now — with the ideas listed per quadrant on the right.

Ten decisions, from booking to log in.

1Your pickup lives on HomeBookings said “No Bookings!”. Now the pickup is the first thing you see.
Before · live appLive app: Bookings says 'No Bookings!'.
After · redesignRedesign: Home with the pickup tracker.
2A named Executive by 9 amTracking asked for an AWB you don’t have yet. Now you see who is coming.
Before · live appLive app: Tracking asks for an AWB number.
After · redesignRedesign: Your pickup, with the executive assigned.
3The app notices a miss firstThe only way out was a phone number. Now a case opens, with an owner.
Before · live appLive app: Contact us, a phone number.
After · redesignRedesign: Sorry, we missed your pickup, with an owner.
  • When should we pick it up? Three-hour times, today shown as full.

    01BookingReal 3-hour times, full ones shown

  • Review and pay, with the promise card above Pay ₹535.

    02BookingThe promise sits right above Pay

  • Pickup booked, with three dated next steps.

    03BookingConfirmation says what’s next

  • Home, with the pickup tracker above the bottom menu.

    04BookingYour pickup lives on Home

  • Your pickup: executive assigned, ID and call buttons.

    05Pickup dayBy 9 am, a named Executive

  • Executive not confirmed yet, in amber, with three choices.

    06Pickup dayAmber, with choices, hours early

  • Sorry, we missed your pickup: the ₹100 refunded and a team lead who replies by 3 pm.

    07Missed pickupA case with an owner opens itself

  • ₹435 is on its way, tracked across five dated steps.

    08Missed pickupThe refund is tracked to the day

  • Log in or sign up, with the phone suggesting two SIM numbers.

    09Log inYour phone suggests your number

  • Confirm it's you, with the code suggested from Messages.

    10Log inThe code fills itself

Chapter 04 of 05

Solutions

Map first. Pixels second.

Five steps, from map to review.

  1. 1MapEvery path, the bad ones too · FigJam flows
  2. 2SketchEach screen starts from a question · wireframes
  3. 3DesignFinal screens on a small design system
  4. 4WireTotals, timers and typing · ≈100 variables
  5. 5Review16 decisions checked, 11 changed

Every bad path ends with a new time or your money back.

FigJamBooking, pickup day, missed pickup
Three FigJam flows: booking a doorstep pickup, pickup day, and recovering a missed pickup, each with decision points and every bad path ending in a new time or a refund.
FigmaBooking wireframes · each screen starts from a question
Wireframes for the booking flow, five screens, each headed by the sender's question it answers, with annotated design principles below.

Solved on the map, before the final design.

Today is fullFull times stay visible, and the earliest open one is picked.
Friday is a holidayHolidays are labelled, so nobody picks a closed day.
Still nobody at 11 amWe say sorry and offer the next open day, free.
The code didn’t arriveA 30-second timer shows when to ask again.

One colour, one meaning.

  • NavyDTDC is on it
  • BlueYour next step
  • GreenDone, or you’re covered
  • AmberAt risk, we’re acting
  • RedWe failed, or money moves
FigmaInput field · 7 states
The input field component in seven states, and in use.
FigmaButtons · loading says what’s happening
Primary and secondary buttons in three sizes, in default, hover, focus, disabled and loading states.

Every state, designed. One clear line each.

  • On Home: the tracker above the bottom menu.

    1On Home

  • Executive assigned, with ID, call button and branch.

    2Assigned

  • May be late: three choices at 9:05 am.

    3May be late

  • Still no executive at 11 am: sorry, and Sat 3 Oct offered.

    4Still none

  • Missed: a case with an owner.

    5Missed

  • New pickup time: holidays marked, no charge.

    6New time

  • Cancel: the numbers shown first.

    7Cancel

  • Refund: ₹435 by Thu 8 Oct.

    8Refund

Totals, timers and typing that work.
  • Log in
  • Booking
  • Pickup day
  • Missed pickup
  • ≈100 variables
Play the prototype(Figma, opens in a new tab)
The prototype's log-in code screen.The prototype's review and pay screen.

Chapter 05 of 05

Outcomes

No results yet: it’s a concept, so I’m not claiming impact. Here is what I did beyond the brief, and how I’d know it works.

Four things nobody asked for.

  • 444reviews kept of 695, read by hand instead of a keyword count
  • 5colours, one job each, so status reads the same everywhere
  • 11/16of my own decisions changed after a design-lead review
  • ≈100variables, so the prototype behaves like the app
FigJam16 decisions: what each broke, and the fix
A table titled 'Decisions I made, what they broke, and how v2 fixes them': sixteen decisions, each with why it was made, what it broke, a verdict of reverse, change or keep, and the resolution.

How I’d know it works.

  1. 1The booking promisePickup times and the promise above Pay
  2. 2Pickup-day updatesHome tracker, the 9 am Executive, the amber warning
  3. 3Missed-pickup recoveryCases with owners and dated refunds
  • −50%“Where is my pickup?” calls, within 3 months
  • 0drop in people who finish a booking
  • On timepickups inside the chosen time, at today’s rate or better
  • < 2%of one-star reviews about pickup, within 6 months
Pass · 4 of 5
First test · 5 recent senders“Book for Thursday. It’s 9:30 am and nobody’s assigned. What do you do?”Pass: they say when and who is coming unaided, and find the refund date in 10 seconds. If DTDC can’t keep the 3-hour time on most days, the fix is the promise, not the screens.

What I’m taking with me.

  1. 01A screen can’t keep a promise operations can’t
  2. 02Talk to senders before sketching
  3. 03Fix the moment, not the whole app
  4. 04Faster with AI, decided by me

The next pickup should come with a time, a name and a way out.

A self-initiated concept, not made for or approved by DTDC. Review quotes are from public Google Play reviews, with names removed.