PracHub
QuestionsPremiumCoachesLearningGuidesInterview Prep
|Home/System Design/DoorDash

Design an async donation payment platform

Last updated: Mar 29, 2026

Quick Overview

This question evaluates a candidate's ability to design scalable, reliable payment systems and asynchronous processing pipelines, covering competencies in distributed systems, idempotency, data modeling, security/PCI compliance, retry and dead-letter strategies, and observability.

  • hard
  • DoorDash
  • System Design
  • Software Engineer

Design an async donation payment platform

Company: DoorDash

Role: Software Engineer

Category: System Design

Difficulty: hard

Interview Round: Onsite

Design an online donation platform for a three-day campaign. Users submit personal info and choose amounts to donate to multiple organizations, but your service only needs to charge users and deposit funds into the company’s account. Specify an end-to-end architecture and data model; compare synchronous vs asynchronous payment flows and justify when to use async. Detail an async workflow (API layer, idempotency keys, queue, workers, retries with backoff, dead-letter handling) and how you guarantee idempotent charges across network retries. Cover failure handling, reconciliation/reporting, duplicate submission prevention, security/PII and payment compliance, rate limiting, observability, and scaling for bursty traffic. Provide API contracts, database schema, and a strategy for partial failures and eventual consistency.

Quick Answer: This question evaluates a candidate's ability to design scalable, reliable payment systems and asynchronous processing pipelines, covering competencies in distributed systems, idempotency, data modeling, security/PCI compliance, retry and dead-letter strategies, and observability.

Related Interview Questions

  • Design a resilient bootstrap API - DoorDash (medium)
  • Design Real-Time Driver Pay Aggregation - DoorDash (hard)
  • Design personalized restaurant search and recommendations - DoorDash (medium)
  • Design Food Ratings and Driver Payouts - DoorDash (medium)
  • Design a Customer Review Page - DoorDash (medium)
DoorDash logo
DoorDash
Sep 6, 2025, 12:00 AM
Software Engineer
Onsite
System Design
6
0

System Design: Online Donation Platform for a 3-Day Campaign

Context

You are designing a donation platform for a time-bounded, high-traffic, three-day campaign. Users provide minimal personal information and donate arbitrary amounts split across multiple organizations. The platform's payment scope is limited to charging donors and depositing funds into the company’s account. No real-time fund-splitting to organizations is required; allocation is recorded for later internal distribution.

Assume:

  • High burst traffic around campaign marketing pushes.
  • Use of a third-party payment processor (PSP) that supports idempotent charges and webhooks.
  • PCI scope is minimized via tokenization/hosted fields.

Requirements

Design an end-to-end architecture and data model. Address:

  1. Synchronous vs asynchronous payment flows; justify when to use async.
  2. Detailed async workflow: API layer, idempotency keys, queue, workers, retries with exponential backoff and jitter, dead-letter handling.
  3. How to guarantee idempotent charges across network retries.
  4. Failure handling, reconciliation/reporting, duplicate submission prevention.
  5. Security/PII and payment compliance, rate limiting, observability, and scaling for bursty traffic.
  6. API contracts, database schema, and a strategy for partial failures and eventual consistency.

Solution

Show

Submit Your Answer

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More DoorDash•More Software Engineer•DoorDash Software Engineer•DoorDash System Design•Software Engineer System Design
PracHub

Master your tech interviews with 8,500+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.