Code RoomDesign a refund service
MediumPrep Room Coding #3239

Design a refund service

System designDistributed systemsMid–Senior~40 min

Design a refund service for a large e-commerce platform processing ~2M orders/day. Support full and partial refunds, multiple partial refunds against one payment (total refunded must never exceed captured amount), refunds that arrive via API and via async PSP webhook, and the case where the original payment used split tenders (gift card + card). Describe the model and how you prevent over-refunding under concurrent refund requests and duplicate webhooks.

What a strong answer looks like

Clarify scale and constraints first. Propose a clean component breakdown, then go deep on the hard parts (data model, bottlenecks, consistency, failure modes) and name the trade-offs you are making.

Clarify4:30 left
Estimate4:30 planned
Design13:30 planned
Deep dive10:30 planned
Failure7:00 planned
0:00
Which questions mattered is sealed until you submit. Telling you now would just be handing over the edge cases.