Dasa POS SumUp Integration
Completed
Jul 2025 - Aug 2025 (2 months)
Dasa POS SumUp Integration is an Android implementation project that adds SumUp merchant login and card checkout into an existing multi-flavor POS/e-commerce codebase.
The work focused on safely integrating a second payment processor, wiring it through existing cart/payment UI and activity-result flows, and hardening release behavior so SumUp is available only on stores configured for Sum Up.
Built with: Kotlin, Android, Jetpack Compose, Hilt, Mavericks (MvRx), SumUp Merchant SDK, AppAuth, Firebase (Analytics/Crashlytics/Performance/Remote Config), Ktor, Retrofit/OkHttp, and SQLDelight.
Links
Project Activity
Recent updates for Dasa POS SumUp Integration. Completed
August 2025
-
Finalized store-level SumUp gating so SumUp actions are shown only for stores configured with `paymentProcessorName = Sum Up`, and restricted card-triggered SumUp login flow to eligible stores.
-
Prepared and cut D3P/D3M release `2.24+114`, including flavor/version metadata updates after SumUp merge stabilization work.
-
Executed the main SumUp stabilization batch: merged SumUp branch changes, fixed compilation regressions, patched print-bill compatibility, completed checkout/refund-path adjustments, and finalized release readiness for version `2.24 (108)`.
July 2025
-
Added menu-driven SumUp login/logout controls with runtime login-state handling so operators can authenticate SumUp directly from primary navigation surfaces.
-
Completed end-to-end SumUp checkout integration across main/cart/payment flows, including payment-result handling and UI wiring needed to execute card transactions in production paths.
-
Integrated core SumUp implementation by adding helper/activity/viewmodel payment modules, updating manifest/DI/payment boundaries, and connecting login + checkout callbacks into the existing app architecture.
-
Bootstrapped SumUp integration by installing SDK dependencies/repositories and introducing dual card payment options (MyGuava vs SumUp) in cart flows as the initial branch point for processor selection.
Objective Link to heading
- Integrate SumUp card processing into an existing Android e-commerce/POS app without breaking the established MyGuava payment flow.
- Deliver a production-ready flow that supports SumUp SDK initialization, merchant login/logout, card checkout, and store-level gating so SumUp appears only for eligible stores.
Integration path Link to heading
- Added SumUp SDK repositories/dependencies and initialized SDK state during app startup.
- Introduced dedicated SumUp payment components (
SumUpPaymentHelper,SumUpPaymentActivity,SumUpPaymentViewModel) to isolate checkout/login handling. - Wired SumUp actions into existing payment and cart surfaces so card checkout can branch between processors.
- Added menu-level SumUp login/logout controls and activity-result handling for login and payment callbacks.
- Applied compile/stability fixes and release hardening across merge and patch commits, then enforced final store-specific SumUp visibility rules.
Architecture and reliability focus Link to heading
- Preserved existing payment architecture by layering SumUp alongside MyGuava rather than replacing existing flows.
- Used store-scoped processor checks (
paymentProcessorName == "Sum Up") to control SumUp availability at runtime. - Kept SDK interaction centralized in helper/activity boundaries to reduce duplicated checkout/login code.
- Completed release-cycle fixes (compilation, print-bill regression patch, flavor/version updates) to ship stable builds.