Fintech Expense Sharing App
Secure, high-performance mobile application for expense sharing and financial management, integrating with cards and providing scalable APIs.
The Challenge
Smoov's founding team had a clear hypothesis: couples and housemates managing shared finances needed something between Venmo (too transactional) and a joint bank account (too formal). They wanted to build an app where users could link their existing cards, automatically categorize shared expenses, split them in configured ratios, and settle up on a chosen schedule without the social awkwardness of manual requests. The challenge was handling the financial data sensitivity requirements, building a reliable card-linking layer over fintech APIs, and calibrating the UX so that something inherently complex felt simple.
Our Solution
We built Smoov on iOS and Android in React Native, with a Node.js backend that connects to Plaid for card and bank account linking. Shared expense categories and split ratios are configured once per relationship, and the app automatically proposes assignments for new transactions based on the merchant category and past behavior. Settlements happen via ACH on a user-configured schedule (weekly, monthly, or on-demand). All financial data in transit and at rest is encrypted, and the app operates under a strict data minimization policy — we pull only the transaction fields needed for the split calculation, nothing else from the bank feed.
Our Approach
Financial API Architecture
Built the card-linking and transaction polling layer over Plaid Link, handling OAuth bank authentication, consent management, and webhook-based transaction ingestion. Implemented a retry queue for failed webhook deliveries so no transactions are silently dropped when bank APIs have downtime.
Expense Categorization & Split Engine
Built a categorization layer that maps Plaid's merchant categories to the app's simplified shared/personal taxonomy. Users can configure default split ratios per category (e.g., groceries split 50/50, streaming subscriptions covered by one partner). A manual override flow lets users reclassify transactions and those corrections feed back into the model.
Settlement & Notifications
Integrated Dwolla for ACH settlement between linked bank accounts, handling micro-deposit verification for new accounts. Settlement runs automatically on the configured schedule or on user request. Push notifications surface unsettled balances, new transaction assignments, and upcoming scheduled settlements to keep both parties informed without being intrusive.
Security & Compliance
Implemented AES-256 encryption for stored financial data, certificate pinning on API calls, and jailbreak/root detection to block compromised devices. Engaged a third-party auditor to review the Plaid integration and data handling practices before the public launch. Drafted and implemented a privacy policy in line with CCPA requirements for California users.
"The split engine just works. We demoed it to investors using a live bank account and they were impressed by how natural it felt. TESARK built exactly what we described and then made it better."
Let's Build Together
Have a similar challenge? We'd love to hear about your project.