The first ever step-by-step playbook to building & scaling subscription-based apps 👉 Get your copy
[Glassfy initializeWithAPIKey:@"8NOV6FQBHHRJ4F9N2HV0HUXOQ5LL0QA3" watcherMode:NO];
​
[Glassfy offeringsWithCompletion:^(GYOfferings *offers, NSError *err) {
GYOffering *offering = offers[@"my_offering"];
if (offering == nil)
return;
GYSku *sku = offering.skus.firstObject;

    [Glassfy purchaseSku:sku completion:^(GYTransaction *t,NSError *error) {
        if (t == nil)
            return;
        GYPermission *p = t.permissions[@"premium"];
        if (p != nil && p.isValid) {
            // unlock premium
        }
    }];

}];