flutter_iap_plus 1.0.0 copy "flutter_iap_plus: ^1.0.0" to clipboard
flutter_iap_plus: ^1.0.0 copied to clipboard

PlatformAndroid

Flutter package for in-app purchase with 5 ready-made subscription UI templates. Handles product loading, purchase, restore, and premium state out of the box for iOS and Android.

flutter_iap_plus #

A Flutter package for in-app purchase with 5 ready-made subscription UI templates, plus a tiny BLoC-style state container so any widget can react to the user's premium status.

Supports iOS and Android, single or multiple product ids.

Features #

  • Drop-in PurchasesManager singleton — handles init, buy, restore, and persistence out of the box.
  • 5 polished paywall screens (templateIndex: 1..5), all customizable via TemplateDataModel.
  • Reactive widgets — IAPBuilder, IAPListener, IAPConsumer — modeled after flutter_bloc.
  • Unified purchaseEvents stream (pending | success | restored | canceled | error).
  • Configurable product duration, debug mode (mock store), and logger injection.
  • Multi-product support for weekly / monthly / yearly tiers.

Installation #

dependencies:
  flutter_iap_plus: ^1.0.0

Quick start #

import 'package:flutter/material.dart';
import 'package:flutter_iap_plus/flutter_iap_plus.dart';

Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await PurchasesManager.instance.init(productId: 'com.app.weekly');
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(title: const Text('Demo')),
        body: IAPBuilder(
          builder: (context, state, isPremium) {
            return Center(
              child: isPremium
                  ? const Text('Premium user')
                  : FilledButton(
                      onPressed: () => PurchasesManager.instance
                          .openPurchaseScreen(context: context),
                      child: const Text('Go Premium'),
                    ),
            );
          },
        ),
      ),
      builder: (context, child) => LoadingWidget(child: child!),
    );
  }
}

Documentation #

The full integration guide — including UI customization, error handling, multi-product setup, and a complete API reference — lives in USAGE.md.

A runnable example app is in example/.

License #

MIT — see LICENSE.

3
likes
150
points
27
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Flutter package for in-app purchase with 5 ready-made subscription UI templates. Handles product loading, purchase, restore, and premium state out of the box for iOS and Android.

Repository (GitHub)
View/report issues

Topics

#iap #in-app-purchase #subscription #paywall #monetization

License

MIT (license)

Dependencies

flutter, flutter_screenutil, flutter_svg, in_app_purchase, in_app_purchase_android, logger, marquee, package_info_plus, shared_preferences, styled_text, url_launcher, vector_graphics

More

Packages that depend on flutter_iap_plus