StoreIdentifiers

Store-specific identifiers returned with successful Flutter web checkout redemptions.

Purpose

Identifies the store that fulfilled a redeemed web checkout purchase. Access this from RedemptionResultSuccess.redemptionInfo.purchaserInfo.storeIdentifiers.

Signature

sealed class StoreIdentifiers {}

class StripeStoreIdentifiers extends StoreIdentifiers {
  final String customerId;
  final List<String> subscriptionIds;
}

class PaddleStoreIdentifiers extends StoreIdentifiers {
  final String customerId;
  final List<String> subscriptionIds;
}

class UnknownStoreIdentifiers extends StoreIdentifiers {
  final String store;
  final Map<String, Object> additionalInfo;
}

Values

Prop

Type

Usage

void didRedeemLink(RedemptionResult result) {
  if (result is! RedemptionResultSuccess) {
    return;
  }

  final identifiers = result.redemptionInfo.purchaserInfo.storeIdentifiers;

  switch (identifiers) {
    case StripeStoreIdentifiers(
      customerId: final customerId,
      subscriptionIds: final subscriptionIds,
    ):
      print('Stripe customer: $customerId');
      print('Stripe subscriptions: $subscriptionIds');
      break;
    case PaddleStoreIdentifiers(
      customerId: final customerId,
      subscriptionIds: final subscriptionIds,
    ):
      print('Paddle customer: $customerId');
      print('Paddle subscriptions: $subscriptionIds');
      break;
    case UnknownStoreIdentifiers(
      store: final store,
      additionalInfo: final info,
    ):
      print('Unknown store: $store, $info');
      break;
  }
}

How is this guide?

On this page