Skip to content

Integrate StoreKit for Premium Features #110

@DrunkOnJava

Description

@DrunkOnJava

📋 Sub-task of #97

Description

Implement StoreKit integration to enable premium features and in-app purchases. Currently, PurchaseService uses mock implementation.

Current State

  • PremiumUpgradeView shows UI but no purchase functionality
  • PurchaseService returns mock success
  • No actual StoreKit integration
  • Premium features inaccessible

Implementation Tasks

  • Configure products in App Store Connect
  • Implement StoreKitService conforming to PurchaseService
  • Add product fetch and validation
  • Implement purchase flow with receipts
  • Add restore purchases functionality
  • Implement subscription management
  • Add receipt validation (server-side)

StoreKit Products

Products to create:
- com.homeinventory.premium.monthly (.99/month)
- com.homeinventory.premium.yearly (.99/year)
- com.homeinventory.premium.lifetime (.99)

Premium Features to Enable

  • Unlimited items (vs 100 free)
  • Advanced analytics
  • Cloud backup
  • Export to PDF/Excel
  • Multiple homes/locations
  • Barcode batch scanning

Technical Requirements

  • StoreKit 2 implementation (iOS 15+)
  • Async/await purchase flow
  • Transaction observation
  • Receipt validation
  • Subscription status tracking
  • Offline purchase queue

Testing Requirements

  • Sandbox testing with test accounts
  • Purchase flow testing
  • Restore testing
  • Subscription renewal testing
  • Error handling testing

Files to Update

  • Modules/Core/Sources/Services/PurchaseService.swift
  • Modules/Premium/Sources/Views/PremiumUpgradeView.swift
  • Create: Modules/Core/Sources/Services/StoreKitService.swift

Estimated Effort: 1 week

Metadata

Metadata

Assignees

Labels

P1High priority - fix in current sprintenhancementNew feature or requestintegrationThird-party service integration

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions