hyochan/flutter_inapp_purchase

Flutter In App Purchase plugin that confirms OpenIAP

595

stars

572

commits

Dart

primary language

Aug 4, 2026

updated

hyochan.github.io/flutter_inapp_purchase
dart
flutter
in-app-purchase
openiap

README

[!IMPORTANT] ⚠️ This repository has moved to hyodotdev/openiap. flutter_inapp_purchase is now developed in the monorepo at libraries/flutter_inapp_purchase — this repository is archived and read-only.

OpenIAP

📦 This project now lives in the OpenIAP monorepo

flutter_inapp_purchase is actively maintained — development simply moved home.
This repository is archived and kept read-only as history.

The pub.dev package name is unchanged — flutter pub add flutter_inapp_purchase keeps working as always.

Background: 📢 announcement issue · discussion thread


flutter_inapp_purchase

flutter_inapp_purchase logo

Pub Version Flutter CI OpenIAP Coverage Status License

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

Open IAP

📚 Documentation

📖 Visit the documentation →

📦 Installation

dependencies:
  flutter_inapp_purchase: ^8.0.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 products = await iap.fetchProducts<Product>(
  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';
  },
);

Using with AI Assistants

flutter_inapp_purchase provides AI-friendly documentation for Cursor, GitHub Copilot, Claude, and ChatGPT.

AI Assistants Guide

Quick links:

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

Powered by OpenIAP

OpenIAP

flutter_inapp_purchase conforms to the OpenIAP specification — an open, vendor-neutral interoperability standard for in-app purchases. OpenIAP provides:

  • Shared specification — Common types, error codes, and purchase flows across all platforms
  • Generated type-safe bindings — Swift, Kotlin, Dart, and GDScript from a single GraphQL schema
  • Platform implementationsopeniap-apple (StoreKit 2) and openiap-google (Play Billing 8.x)
  • Verification profiles — Standardized receipt validation and purchase verification patterns

Other libraries built on OpenIAP: react-native-iap · expo-iap · kmp-iap · maui-iap · godot-iap

Learn more about the OpenIAP standard →

Sponsors

💼 View Our Sponsors

📄 License

MIT License - see LICENSE file for details.

Contributors

(top 30 of 51)

hyochan

405 commits

kwmt

26 commits

Zil85

17 commits

renovate[bot]

16 commits

hyochan/flutter_inapp_purchase

Flutter In App Purchase plugin that confirms OpenIAP

595

stars

572

commits

Dart

primary language

Aug 4, 2026

updated

hyochan.github.io/flutter_inapp_purchase
dart
flutter
in-app-purchase
openiap

README

[!IMPORTANT] ⚠️ This repository has moved to hyodotdev/openiap. flutter_inapp_purchase is now developed in the monorepo at libraries/flutter_inapp_purchase — this repository is archived and read-only.

OpenIAP

📦 This project now lives in the OpenIAP monorepo

flutter_inapp_purchase is actively maintained — development simply moved home.
This repository is archived and kept read-only as history.

The pub.dev package name is unchanged — flutter pub add flutter_inapp_purchase keeps working as always.

Background: 📢 announcement issue · discussion thread


flutter_inapp_purchase

flutter_inapp_purchase logo

Pub Version Flutter CI OpenIAP Coverage Status License

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

Open IAP

📚 Documentation

📖 Visit the documentation →

📦 Installation

dependencies:
  flutter_inapp_purchase: ^8.0.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 products = await iap.fetchProducts<Product>(
  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';
  },
);

Using with AI Assistants

flutter_inapp_purchase provides AI-friendly documentation for Cursor, GitHub Copilot, Claude, and ChatGPT.

AI Assistants Guide

Quick links:

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

Powered by OpenIAP

OpenIAP

flutter_inapp_purchase conforms to the OpenIAP specification — an open, vendor-neutral interoperability standard for in-app purchases. OpenIAP provides:

  • Shared specification — Common types, error codes, and purchase flows across all platforms
  • Generated type-safe bindings — Swift, Kotlin, Dart, and GDScript from a single GraphQL schema
  • Platform implementationsopeniap-apple (StoreKit 2) and openiap-google (Play Billing 8.x)
  • Verification profiles — Standardized receipt validation and purchase verification patterns

Other libraries built on OpenIAP: react-native-iap · expo-iap · kmp-iap · maui-iap · godot-iap

Learn more about the OpenIAP standard →

Sponsors

💼 View Our Sponsors

📄 License

MIT License - see LICENSE file for details.

Contributors

(top 30 of 51)

hyochan

405 commits

kwmt

26 commits

Zil85

17 commits

renovate[bot]

16 commits

Languages

Dart

81.1%

Swift

9.3%

Kotlin

8.1%