← Questions

Model a business identity verification (KYC) workflow

0
StripeOO designLast asked Mar 2026

Design the classes for verifying a business before it can accept payments. The country and business type decide which checks are required (for example the business's identity, its representative, its address, its tax details). Each check starts pending and becomes verified or rejected once its evidence is reviewed; the application is verified when every required check is, and rejected as soon as one is. A rejected check can get new evidence and go back to pending.

Cover the object model, the interfaces for creating an application, attaching evidence, recording a review result and reading the decision, and how you ignore a review result that refers to evidence that has since been replaced. One process only; vendors, storage and UI are out of scope.

Your canvas
Draw your answer hereBoxes, arrows and notes, saved for you to come back to.Sign in to start drawing