easy_iap 0.2.0 copy "easy_iap: ^0.2.0" to clipboard
easy_iap: ^0.2.0 copied to clipboard

Simple and elegant in-app purchase SDK for Flutter. Unified API for iOS App Store and Google Play Store with functional patterns (fold, when) and multi-language support.

Changelog #

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased] #

0.2.0 - 2026-01-04 #

Added #

  • PriceFormatter - Format prices with currency symbols and localization
    • format() - Format price with currency
    • formatSubscription() - Format with period (e.g., $9.99/month)
    • formatSavings() - Calculate and format savings percentage
  • SubscriptionHelpers - Subscription status utilities
    • SubscriptionStatus enum (active, expiringSoon, expired, gracePeriod)
    • formattedExpiryDate - Human-readable expiry date
    • formattedTimeRemaining - Time until expiry
    • statusMessage - Status message for display
    • shouldPromptRenewal - Whether to show renewal prompt
  • Documentation
    • PATTERNS.md - Copy-paste code patterns for AI
    • docs/SETUP.md - iOS/Android setup guide
    • CONTRIBUTING.md - Contribution guidelines

Changed #

  • Expanded test coverage from 15 to 71 tests
  • Improved IapFailure with better error code detection
    • isCancelled now detects user_cancelled code
    • shouldIgnore now includes already_owned and pending
    • canRetry now includes service_unavailable
    • requiresUserAction now includes not_signed_in

0.1.1 - 2026-01-04 #

Added #

  • Example app with demo mode
  • CLAUDE.md for AI code generation guide
  • GitHub Actions CI/CD workflows

Changed #

  • Applied dart format to all files
  • Cleaned up empty directories

0.1.0 - 2026-01-04 #

Added #

  • Initial release
  • EasyIap - Main class for managing in-app purchases
    • EasyIap.init() - Factory method for initialization
    • purchase() - Purchase a product
    • restore() - Restore previous purchases
    • isOwned() - Check product ownership
    • hasSubscription() - Check subscription status
    • hasActiveSubscription - Check if any subscription is active
  • IapProduct - Product definition
    • IapProduct.consumable() - Consumable products
    • IapProduct.nonConsumable() - Non-consumable products
    • IapProduct.subscription() - Subscription products
  • IapResult - Purchase result with functional patterns
    • fold() - Handle success/failure
    • when() - Handle success/cancelled/failure
    • onSuccess(), onFailure(), onCancelled() - Chaining
  • IapReceipt - Purchase receipt with verification data
  • IapFailure - Failure information with smart helpers
    • shouldIgnore - Whether error can be ignored
    • canRetry - Whether purchase can be retried
    • requiresUserAction - Whether user action needed
  • IapBuilder - Reactive widget for ownership state
  • SubscriptionBuilder - Reactive widget for subscription state
  • PurchaseListener - Widget for purchase events
  • MockEasyIap - Mock for testing
  • IapLogger - Debug logging with customizable levels
1
likes
150
points
44
downloads

Documentation

Documentation
API reference

Publisher

unverified uploader

Weekly Downloads

Simple and elegant in-app purchase SDK for Flutter. Unified API for iOS App Store and Google Play Store with functional patterns (fold, when) and multi-language support.

Repository (GitHub)
View/report issues
Contributing

License

MIT (license)

Dependencies

collection, flutter, in_app_purchase, in_app_purchase_android, in_app_purchase_storekit, intl

More

Packages that depend on easy_iap