
Warning
These plugin is for Capacitor 6. For Capacitor 5, use the 3.x version.
CapacitorJS Glassfy Plugin
Glassfy is a subscription revenue optimisation infrastructure for mobile applications.
Getting Started
Check the documentation at docs.glassfy.io to learn details on implementing and using Glassfy SDK.
Plugin Install
npm install capacitor-plugin-glassfy
npx cap sync
Build plugin and example
be sure to have ionic cli installed following instructions here
npm install
npm run build
cd example
npm install
ionic capacitor sync ios
ionic capacitor open ios
API
sdkVersion()
sdkVersion() => Promise<GlassfyVersion>
Returns: Promise<GlassfyVersion>
initialize(...)
initialize(options: { apiKey: string; watcherMode: boolean; }) => Promise<void>
For more details, follow instruction at https://docs.glassfy.io/get-started/configuration
options | { apiKey: string; watcherMode: boolean; } |
setLogLevel(...)
setLogLevel(options: { logLevel: GLASSFY_LOGLEVEL; }) => Promise<void>
offerings()
offerings() => Promise<GlassfyOfferings>
For more details, check the documentation https://docs.glassfy.io/dashboard/configure-offerings
Returns: Promise<GlassfyOfferings>
purchaseHistory()
purchaseHistory() => Promise<GlassfyPurchasesHistory>
For more details, check the documentation https://docs.glassfy.io/dashboard/configure-offerings
Returns: Promise<GlassfyPurchasesHistory>
permissions()
permissions() => Promise<GlassfyPermissions>
For more details, check the documentation https://docs.glassfy.io/dashboard/configure-permissions.html
Returns: Promise<GlassfyPermissions>
skuWithId(...)
skuWithId(options: { identifier: string; }) => Promise<GlassfySku>
For more details, check the documentation https://docs.glassfy.io/dashboard/configure-products
options | { identifier: string; } |
Returns: Promise<GlassfySku>
skuWithIdAndStore(...)
skuWithIdAndStore(options: { identifier: string; store: GLASSFY_STORE; }) => Promise<GlassfySkuBase>
Returns: Promise<GlassfySkuBase>
connectCustomSubscriber(...)
connectCustomSubscriber(options: { subscriberId: string; }) => Promise<void>
options | { subscriberId: string; } |
connectPaddleLicenseKey(...)
connectPaddleLicenseKey(options: { licenseKey: string; force: boolean; }) => Promise<void>
options | { licenseKey: string; force: boolean; } |
connectGlassfyUniversalCode(...)
connectGlassfyUniversalCode(options: { universalCode: string; force: boolean; }) => Promise<void>
options | { universalCode: string; force: boolean; } |
setEmailUserProperty(...)
setEmailUserProperty(options: { email: string; }) => Promise<void>
options | { email: string; } |
setDeviceToken(...)
setDeviceToken(options: { token: string; }) => Promise<void>
options | { token: string; } |
setExtraUserProperty(options: { extra: GlassfyExtraProperty; }) => Promise<void>
getUserProperty()
getUserProperty() => Promise<GlassfyUserProperties>
Returns: Promise<GlassfyUserProperties>
purchaseSku(...)
purchaseSku(options: { sku: GlassfySku; skuToUpgrade?: GlassfySku; replacementMode?: GLASSFY_REPLACEMENT_MODE; }) => Promise<GlassfyTransaction>
Returns: Promise<GlassfyTransaction>
restorePurchases()
restorePurchases() => Promise<GlassfyPermissions>
Returns: Promise<GlassfyPermissions>
storeInfo()
storeInfo() => Promise<GlassfyStoresInfo>
Returns: Promise<GlassfyStoresInfo>
setAttribution(...)
setAttribution(options: { type: GLASSFY_ATTRIBUTION; value: string; }) => Promise<void>
setAttributions(...)
setAttributions(options: { items: GlassfyAttributionItem[]; }) => Promise<void>
options | { items: GlassfyAttributionItem[]; } |
_paywall(...)
_paywall(options: { remoteConfig: string; awaitLoading: boolean; }) => Promise<void>
options | { remoteConfig: string; awaitLoading: boolean; } |
_closePaywall()
_closePaywall() => Promise<void>
_openUrl(...)
_openUrl(options: { url: string; }) => Promise<void>
Interfaces
GlassfyVersion
GlassfyOfferings
GlassfyOffering
offeringId | string |
skus | GlassfySku[] |
GlassfySku
GlassfyProduct
title | string |
identifier | string |
description | string |
price | number |
currencyCode | string |
period | string |
introductoryPrice | GlassfyProductDiscount |
discounts | GlassfyProductDiscount[] |
basePlanId | string |
GlassfyProductDiscount
identifier | string |
price | number |
currencyCode | string |
period | string |
numberOfPeriods | number |
type | string |
GlassfyPurchasesHistory
all | GlassfyPurchaseHistory[] |
GlassfyPurchaseHistory
productId | string |
skuId | string |
type | GLASSFY_EVENT_TYPE |
store | GLASSFY_STORE |
purchaseDate | string |
expireDate | string |
transactionId | string |
subscriberId | string |
currencyCode | string |
countryCode | string |
isInIntroOfferPeriod | boolean |
promotionalOfferId | string |
offerCodeRefName | string |
licenseCode | string |
webOrderLineItemId | string |
GlassfyPermissions
installationId | string |
subscriberId | string |
originalApplicationVersion | string |
originalApplicationDate | string |
all | GlassfyPermission[] |
GlassfyPermission
permissionId | string |
entitlement | GLASSFY_ENTITLEMENT |
isValid | boolean |
expireDate | string |
accountableSkus | GlassfyAccountableSku[] |
GlassfyAccountableSku
isInIntroOfferPeriod | boolean |
isInTrialPeriod | boolean |
basePlanId | string |
offerId | string |
GlassfySkuBase
GlassfyUserProperties
GlassfyTransaction
GlassfyStoresInfo
GlassfyStoreInfo
GlassfyPaddleStoreInfo
store | GLASSFY_STORE.Paddle |
extravars | { [key: string]: string; } |
userid | string |
planId | string |
subscriptionId | string |
updateURL | string |
cancelURL | string |
GlassfyAttributionItem
Type Aliases
{ [key: string]: string }
Exclude
Exclude from T those types that are assignable to U
T extends U ? never : T
Enums
GLASSFY_LOGLEVEL
OFF | 0 |
ERROR | 1 |
DEBUG | 2 |
INFO | 3 |
ALL | 3 |
GLASSFY_ELEGIBILITY
ELEGIBLE | 1 |
NON_ELEGIBLE | -1 |
UNKNOWN | 0 |
GLASSFY_EVENT_TYPE
InitialBuy | 5001 |
Restarted | 5002 |
Renewed | 5003 |
Expired | 5004 |
DidChangeRenewalStatus | 5005 |
IsInBillingRetryPeriod | 5006 |
ProductChange | 5007 |
InAppPurchase | 5008 |
Refund | 5009 |
Paused | 5010 |
Resumed | 5011 |
ConnectLicense | 5012 |
DisconnectLicense | 5013 |
GLASSFY_STORE
AppStore | 1 |
PlayStore | 2 |
Paddle | 3 |
Stripe | 4 |
Glassfy | 5 |
GLASSFY_ENTITLEMENT
NEVERBUY | -9 |
OTHERREFUND | -8 |
ISSUEREFUND | -7 |
UPGRADED | -6 |
EXPIREDVOLUNTARY | -5 |
PRODUCTNOTAVAILABLE | -4 |
FAILTOACCEPTINCREASE | -3 |
EXPIREDFROMBILLING | -2 |
INRETRY | -1 |
MISSINGINFO | 0 |
EXPIREDINGRACE | 1 |
OFFPLATFORM | 2 |
NONRENEWING | 3 |
AUTORENEWOFF | 4 |
AUTORENEWON | 5 |
GLASSFY_REPLACEMENT_MODE
UNKNOWN_REPLACEMENT_MODE | 0 |
WITH_TIME_PRORATION | 1 |
CHARGE_PRORATED_PRICE | 2 |
WITHOUT_PRORATION | 3 |
CHARGE_FULL_PRICE | 5 |
DEFERRED | 6 |
GLASSFY_ATTRIBUTION
AdjustID | 1 |
AppsFlyerID | 2 |
IP | 3 |
IDFA | 4 |
IDFV | 5 |
GAID | 6 |
ASID | 7 |
AID | 8 |