purchases_flutter 1.0.4


😻 In-app Subscriptions Made Easy 😻

pub package

purchases_flutter #

purchases_flutter is a client for the RevenueCat subscription and purchase tracking system. It is an open source framework that provides a wrapper around StoreKit, Google Play Billing and the RevenueCat backend to make implementing in-app subscriptions in Flutter easy - receipt validation and status tracking included!

Features #

Server-side receipt validation
➡️Webhooks - enhanced server-to-server communication with events for purchases, renewals, cancellations, and more
🖥macOS support
🎯Subscription status tracking - know whether a user is subscribed whether they're on iOS, Android or web
📊Analytics - automatic calculation of metrics like conversion, mrr, and churn
📝Online documentation up to date
🔀Integrations - over a dozen integrations to easily send purchase data where you need it
💯Well maintained - frequent releases
📮Great support - Help Center
🤩Awesome new features

Installation #

To use this plugin, add purchases_flutter as a dependency in your pubspec.yaml file.

Requirements #

purchases_flutter requires XCode 10.2+ and minimum targets iOS 9.0+ and macOS 10.12+

Getting Started #

For more detailed information, you can view our complete documentation at docs.revenuecat.com.

1.0.4 #

  • Fixes getOffering always returns null #19

1.0.3 #

  • Fixes crash when there's no offerings #17

1.0.2 #

  • Fixes issue with older versions of Kotlin (#15)
  • Updates README.md
  • Adds checkTrialOrIntroductoryPriceEligibility

1.0.1 #

  • Android updated to 3.0.3

1.0.0 #

  • Added PurchasesErrorHelper.getErrorCode(PlatformException) and enum of PurchasesErrorCode to make handling errors easier. (#3)
  • Support for new Offerings system.
  • Deprecates makePurchase methods. Replaces with purchasePackage
  • Deprecates getEntitlements method. Replaces with getOfferings
  • See our migration guide for more info: https://docs.revenuecat.com/v3.0/docs/offerings-migration
  • Updates to BillingClient 2.0.3. If finishTransactions is set to false (or observerMode is true when configuring the SDK), this SDK won't acknowledge any purchase.
  • Adds proration mode support on upgrades/downgrades (#14)
  • Adds requestDate and PurchaserInfo missing properties #12
  • New identity changes:
  • The .createAlias() method is no longer required, use .identify() instead
  • .identify() will create an alias if being called from an anonymous ID generated by RevenueCat
  • Added an isAnonymous property to Purchases.sharedInstance
  • Improved offline use

0.3.3 #

0.3.2 #

  • Fixes expirationDate in EntitlementInfo for iOS.

0.3.1 #

  • Fixes crash when there's a trial period and not an introductory price on Android.

0.3.0 #

  • Deprecates activeEntitlements in PurchaserInfo and adds entitlements object to PurchaserInfo. For more info check out https://docs.revenuecat.com/docs/purchaserinfo
  • Fixes exception when calling makePurchase with a bad product identifier in iOS
  • Fixes makePurchase missing the userCancelled boolean in Android
  • Fixes makePurchase not working in Android when calling with oldSkus parameter
  • Fixes trial info being lost in Android. Access introductoryPrice in the product information to get information around the trial period.

0.2.2 #

0.2.1 #

  • Makes some changes to the introductory pricing due to some inconsistencies introduced in 0.2.0. Introductory pricing is now an object part of the product.

0.2.0 #

0.1.4 #

  • Fixes UninitializedPropertyAccessException when trying to close the instance onDestroy of the Android Activity.

0.1.3 #

  • Formats files

0.1.2 #

  • Adds more docs to custom types
  • Fixes report issue link

0.1.1 #

  • Fixes userCancelled in Android
  • Adds docs

0.1.0 #

  • Initial release


This project is a starting point for a Flutter application with a RevenueCat integration. For help getting started with, view our online documentation.

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:

  purchases_flutter: ^1.0.4

2. Install it

You can install packages from the command line:

with Flutter:

$ flutter pub get

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:purchases_flutter/purchases_flutter.dart';
Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
Learn more about scoring.

We analyzed this package on Feb 12, 2020, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.7.1
  • pana: 0.13.5
  • Flutter: 1.12.13+hotfix.7

Maintenance issues and suggestions

Documentation URL doesn't exist. (-10 points)

At the time of the analysis the documentation field https://docs.revenuecat.com/ was unreachable.


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.1.0 <3.0.0
flutter 0.0.0
Transitive dependencies
collection 1.14.11 1.14.12
meta 1.1.8
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8
Dev dependencies