FinTech | Payments | System Design
Split-Payment System
Built a concept-level split-payment system enabling multi-source transactions (UPI + Card) with failure-safe logic and Razorpay test-mode integration.
How I got this idea
I designed and implemented a concept-level split-payment system that enables users to complete a single transaction using multiple payment methods (for example: part via UPI and part via Card).
Problem
- Traditional payment systems process one payment method per transaction.
- Users often want to combine payment sources (e.g., UPI + Card) or use partial balances.
- Retrying failed payments often leads to double deductions or partial success states.
Solution
- Multi-source payment flow logic (UPI + Card simulation)
- Razorpay Test Mode integration for payment gateway simulation
- Conditional execution to prevent partial payment capture
- Retry-safe transaction handling logic
- Failure detection and rollback simulation
JavaScriptNode.jsRazorpay (Test Mode)REST API
Hardest Technical Challenge
Maintaining transaction atomicity across multiple distributed payment sources. Specifically, ensuring no partial charges occur if one source fails, and managing retry logic to prevent duplicate deductions while keeping state integrity.
System Architecture
ORCHESTRATOR
UPI GATEWAY (Razorpay)
Partial ACARD GATEWAY (Razorpay)
Partial BATOMICITY GUARD: Ensures fail-safe rollback if either source fails
What I learned
- ●Distributed transaction management and atomicity
- ●Handling failure states and rollback simulations in fintech flows
- ●Integrating payment gateways for complex multi-source logic
- ●Designing for system reliability and retry-safety