Making the business model work in the real banking system. There was no existing blueprint for launching a tipping platform in Serbia. I had to work directly with banks, payment providers, and other parties to establish how money could legally and technically move through the platform. That included setting up a company specifically for Baksis, coordinating a four-party contractual structure, selecting the payment gateway and payout mechanism, and getting the model through the required approval process.
Turning several financial systems into one payment flow. Taking a tip looked simple from the user's perspective, but behind it were several independent systems, including the payment gateway, transaction processor, payout flow, banking infrastructure, and Baksis itself. Each had different rules and failure modes. I built the logic that connected them and controlled how transactions, platform fees, settlements, and payouts moved through the system.
Working around unreliable financial APIs. Several payment and banking integrations came with outdated documentation, differences between test and production environments, incomplete error responses, and behavior that sometimes had to be established experimentally. Integrations were built defensively, with explicit validation, retries, transaction tracking, and reconciliation rather than assuming the provider would always behave as documented.
Keeping financial data correct when something failed halfway through. Payments create awkward failure states, a payment can succeed while a later payout fails, an external service can time out after actually processing a request, or two wallet operations can happen at the same time. I handled those cases with database locking, idempotent operations, reconciliation jobs, and explicit recovery paths so that an integration failure did not silently create incorrect balances or duplicate transactions.
Owning the application stack without relying on a backend framework. The backend was built in Python without a web framework, so core application infrastructure, including authentication, sessions, CSRF protection, rate limiting, validation, security headers, database interactions, and transaction handling, was designed and implemented directly rather than inherited from a framework.