PracHub
QuestionsPremiumLearningGuidesCheatsheetNEWCoaches
|Home/System Design/OpenAI

Design a scalable payment system

Last updated: Apr 8, 2026

Quick Overview

This question evaluates system design and financial-systems competencies, including distributed systems, transactional integrity, ledger and money-movement models, API and data-model design, failure handling, security, compliance, and operational concerns like scalability and auditability.

  • medium
  • OpenAI
  • System Design
  • Software Engineer

Design a scalable payment system

Company: OpenAI

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Technical Screen

Design a payment system that supports moving money between users and paying merchants. Your design should cover: - Core product requirements: user-to-user transfers, merchant payments, refunds/chargebacks (if applicable), payment status tracking, transaction history. - Non-functional requirements: correctness (no double-spend), idempotency, high availability, low latency, auditability, compliance considerations, and scalability. - Money movement model: ledger design (e.g., double-entry), authorization vs capture (if cards), holds, settlement, and reconciliation. - APIs and data model: key endpoints, request/response fields, idempotency keys, and how you represent accounts/balances/transactions. - Failure handling: retries, exactly-once vs at-least-once processing, deduplication, consistency guarantees. - Security and risk: authentication, authorization, encryption, fraud detection hooks, limits, and monitoring. Assume the system may integrate with external payment rails/providers (e.g., card networks, bank transfers). Explain key trade-offs and provide a high-level architecture diagram in words.

Quick Answer: This question evaluates system design and financial-systems competencies, including distributed systems, transactional integrity, ledger and money-movement models, API and data-model design, failure handling, security, compliance, and operational concerns like scalability and auditability.

Related Interview Questions

  • Design a Distributed Rate Limiter - OpenAI
  • Design a Distributed Crossword Solver - OpenAI (medium)
  • Design Mobile Model Usage Quotas - OpenAI (medium)
  • Design a Slack-Like Messaging System - OpenAI (medium)
  • Design a Real-Time Chess Service - OpenAI (medium)
OpenAI logo
OpenAI
Feb 2, 2026, 12:00 AM
Software Engineer
Technical Screen
System Design
29
0

Design a payment system that supports moving money between users and paying merchants.

Your design should cover:

  • Core product requirements: user-to-user transfers, merchant payments, refunds/chargebacks (if applicable), payment status tracking, transaction history.
  • Non-functional requirements: correctness (no double-spend), idempotency, high availability, low latency, auditability, compliance considerations, and scalability.
  • Money movement model: ledger design (e.g., double-entry), authorization vs capture (if cards), holds, settlement, and reconciliation.
  • APIs and data model: key endpoints, request/response fields, idempotency keys, and how you represent accounts/balances/transactions.
  • Failure handling: retries, exactly-once vs at-least-once processing, deduplication, consistency guarantees.
  • Security and risk: authentication, authorization, encryption, fraud detection hooks, limits, and monitoring.

Assume the system may integrate with external payment rails/providers (e.g., card networks, bank transfers). Explain key trade-offs and provide a high-level architecture diagram in words.

Solution

Show

Comments (0)

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More OpenAI•More Software Engineer•OpenAI Software Engineer•OpenAI System Design•Software Engineer System Design
PracHub

Master your tech interviews with 7,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.