# Design a merchant settlement system: system design interview question

> Daily merchant payouts with delayed financial events, fixed cutoffs, reserve rules, and uncertain transfer outcomes.

Source: https://sysround.com/questions/design-merchant-settlement-system
Updated: 2026-11-05


Difficulty: hard. Levels: Senior, Staff+.

## How the interviewer opens it

"Design a system that computes merchant payouts from transactions, fees, refunds, and reserves. It must execute scheduled settlements without paying the same obligation twice."

## What to clarify first

- Merchants and currency
- Financial event volume
- Read and write mix
- Schedule and cutoff
- Financial rules
- Event delivery
- External payout provider
- Latency
- Correctness and durability
- Scope boundaries

## Scope of a strong answer

Core requirements:

- Record transactions, fees, refunds, and reserve changes.
- Compute each merchant's eligible payout for a daily cutoff.
- Submit scheduled payouts without paying the same funds twice.
- Track payout results and reconcile provider records.

Usually out of scope:

- Currency conversion
- Tax calculations
- Card payment processing
- Reserve risk decisions
- Construction of the external payout provider

## What interviewers probe

### Amounts available for payout

A merchant's total balance differs from the amount eligible at a cutoff. Refunds and reserve changes can arrive after that cutoff.

### Repeated settlement runs

Two runs can claim the same funds even when they use different transfer references. A unique transfer reference alone does not prevent this.

### Transfer outcomes

The provider can move money before the system records success. A timeout does not prove that the transfer failed.

### Daily settlement deadline

The system must process one million merchant decisions within two hours. Retries and isolated financial errors must not stop the whole run.

## Common mistakes

- Uses one mutable merchant balance without financial history.
- Treats a daily run ID as protection against reuse of the same funds.
- Changes a payout amount after transfer submission.
- Creates a new provider reference after a timeout.
- Returns uncertain payout funds to the available balance.
- Ignores negative carry, reserve releases, or late refunds.

## The bar by level

- **Senior:** Defines cutoff rules and negative carry. Atomically creates and funds each obligation. Handles concurrent runs, provider timeouts, repeated callbacks, reconciliation, and the batch deadline.
- **Staff+:** States end-to-end financial invariants and their external dependencies. Designs safe regional recovery and correction procedures. Quantifies provider limits and audit storage. Explains when provider changes make the duplicate-payment guarantee impossible.

Practice this question with an AI interviewer: https://sysround.com/practice/new?problem=merchant-settlement


---
SysRound (https://sysround.com) is an AI practice tool for system design interviews. It has a voice or typed AI interviewer and a shared whiteboard. At the end, you get feedback on each skill and a model answer. The AI feedback can be wrong.
