Refactoring and Adapting Yandexpayproxysdk for Beeline
Restoring checkout conversion in a high-load SwiftUI app and aligning the architecture with enterprise standards
Overview
How we restored payment conversion in a SwiftUI app and brought the codebase up to corporate engineering standards.
Project Team

Maksim Ermilov
Head of Project / Architecture
Vasiliy
Swift Architect (Core Logic & XCFramework)
Nikita
Swift Developer (UI Layer & SwiftUI integration)
Technology and Business Value
Technology
Swiftui and Uikit Compatibility Layer
Business value
Stable revenue. We fixed a critical issue where the app could “lose” payment status. Every transaction now completes cleanly, without a stuck screen after the charge.
Technology
Automatic Delegate Lifecycle Management
Business value
Reliability under load. We added memory-safety around delegates to prevent crashes at checkout—so users don’t lose trust at the worst possible moment.
Technology
Binary Distribution (Xcframework)
Business value
Protection and fast rollout. We packaged the SDK as a protected module partner teams at the operator can wire up in minutes—safer handoffs and faster releases.
Technology
Separated UI Builders
Business value
One toolkit for everyone. The SDK now serves both legacy UIKit and SwiftUI surfaces without duplicate implementations per team.
Technology
Rich Logging and Error Handling
Business value
Lower support cost. Instead of generic failures, the system surfaces concrete causes (network, bank decline, etc.), so support closes tickets much faster.
How We Worked
We delivered the engagement in 44 working hours, turning a monolithic prototype into a flexible toolkit.
Audit and Refactor
Improved readability and split core concepts (events, errors, APIs) into modules—making the system easier to evolve.
UI Layer Implementations
Built independent paths for different UI frameworks.
Safety and Stability
Tuned logging and memory behavior so the app stays responsive even on older iPhones.
Builds and Documentation
Shipped three distribution variants (including SPM sources and a ready framework) with a detailed Readme.
Client Outcomes
- 01
Problem Solved
The app reliably receives payment status callbacks.
- 02
Expanded Functionality
Integrated a universal Ultimate Badge widget to improve payment-method recognition.
- 03
Code Ready to Scale
The SDK now follows a modular architecture any engineering team can extend.
If you need SDK refactors, reliable checkout, or modules that bridge SwiftUI and UIKit, we can scope the work and propose a collaboration model.