flutter_inapp_purchase

flutter_inapp_purchase logo

Pub Version Flutter CI Coverage Status License

A comprehensive Flutter plugin for implementing in-app purchases that conforms to the Open IAP specification

Open IAP

πŸ“š Documentation

πŸ“– Visit our comprehensive documentation site β†’

πŸ“¦ Installation

dependencies:
  flutter_inapp_purchase: ^7.1.0

πŸ”§ Quick Start

Basic Usage

import 'package:flutter_inapp_purchase/flutter_inapp_purchase.dart';

// Create instance
final iap = FlutterInappPurchase();

// Initialize connection
await iap.initConnection();

// Fetch products with explicit type
final List<Product> products = await iap.fetchProducts(
  skus: ['product_id'],
  type: ProductQueryType.InApp,
);

// Request purchase (builder DSL)
await iap.requestPurchaseWithBuilder(
  build: (builder) {
    builder
      ..type = ProductQueryType.InApp
      ..android.skus = ['product_id']
      ..ios.sku = 'product_id';
  },
);

πŸ› οΈ Development

See CONTRIBUTING.md for development setup and guidelines.

Singleton Usage

For global state management or when you need a shared instance:

// Use singleton instance
final iap = FlutterInappPurchase.instance;
await iap.initConnection();

// The instance is shared across your app
final sameIap = FlutterInappPurchase.instance; // Same instance

Sponsors

πŸ’Ό View Our Sponsors

πŸ“„ License

MIT License - see LICENSE file for details.

Libraries

builders
enums
errors
Error types for flutter_inapp_purchase (OpenIAP compliant)
events
extensions/purchase_helpers
flutter_inapp_purchase
helpers
types
utils