This question evaluates system design and distributed-systems competency, focusing on transaction processing, idempotency and deduplication, monetary precision and rounding, consistency models, data modeling, and operational controls like observability and fraud prevention.
You are designing a service that awards loyalty points for purchase transactions denominated in USD at a fixed conversion rate of 1 USD = 1.5 points. The service must support awarding, querying balances, and redeeming points at scale, with correctness and auditability.
Assume transactions arrive from a card/payments platform and that points should be awarded only for posted/settled transactions (not authorizations). Redemption must prevent double-spend.
Cover the following:
Login required