Skip to main content

Release 6.7.0

· 2 min read
Hyo
Maintainer of flutter_inapp_purchase & expo-iap

We’ve shipped 6.7.0 with a fully consolidated OpenIAP stack and a key Android fix for subscription upgrades. This release focuses on keeping the platform plugins in lockstep and smoothing out offer handling on Play Store builds.

Update (6.7.2): We migrated to the package versions listed below so patch releases stay aligned with this stack.

Highlights

  • Single OpenIAP surface – Dart now targets openiap-gql@1.0.6 while the native plugins use openiap-google@1.1.12 and openiap-apple@1.1.12. The three packages are versioned together, removing the “mix and match” problem from earlier releases.
  • Android offerToken fixrequestPurchase now forwards the subscription offerToken correctly, so Play Billing picks the intended base plan/offer.
  • Consistent error enums – Error-code enums have been normalized to PascalCase, matching the OpenIAP schema and making switching between Dart and native references painless.

Why it matters

Keeping the OpenIAP packages in lockstep means:

  • predictable GraphQL schema updates (openiap-gql@1.0.6),
  • the latest Google Play Billing v8 glue (openiap-google@1.1.12), and
  • Apple StoreKit improvements (openiap-apple@1.1.12).

You no longer need to pin different versions manually—flutter_inapp_purchase 6.7.0 brings them all in together.

The Android offerToken fix is critical if you sell subscriptions with base plan offers. Prior to 6.7.0, the token could be dropped when the request reached native code, making upgrades fall back to the default price.

Finally, aligning the error enums to PascalCase makes it easier to map between Dart and native error codes (and matches the generated OpenIAP types). If you reference the enum names directly, update your code to the new casing.

Upgrade notes

flutter pub get
# Android
flutter build apk # or: ./gradlew -p android assembleRelease
# iOS
cd example/ios && pod install

If you previously vendored a different OpenIAP version, remove those overrides so the bundled packages take effect.

Looking ahead

6.7.1 will continue sanding the edges, but 6.7.0 is the release that unifies the OpenIAP toolchain and fixes the outstanding subscription upgrade bug. Let us know how it works for you!