macOS InApp buy - failures

Last couple of days I tried to get InApp buy working with a a new macOS app I am about to release.
Sadly, I cannot get it to work. I did read a lot about it here and at the Apple Devs guides. Helas … tried MBS plugins and declares. The lack of a good step-by-step how to implement this with Xojo apps is non existing.

I am now thinking about an alternative path: One free version and one payed.
But it seems you cannot name your app ‘Myapp Free’ and Myapp Pro’. The Apple docs are very unclear about this.
Any thoughts? Other ideas to resolve this?

It can only be done via Plugins as the App Store Agent communicates with the application on a separate thread.

I did get it to work for 3 separate applications; however bizarrely none are actually working now, which might be why I don’t get any sales at all now.

In all honesty; this is the only route that we’ve found to actually work with the Mac App Store. The way in which you are expected to create IAP applications is very bizarre and in my experience simply don’t work for Mac users.

You can create a “Myapp Pro” and a “Myapp”, you just can’t use anything in the name to imply that it’s reduced feature version, yeah seriously!

So this is allowed? I probably going to do go for this.
Can I add some sort of message box appearing in the free version that points/links to the ‘app name pro’ version? Or isn’t this allowed?

[quote=340099:@Christoph De Vocht]So this is allowed? I probably going to do go for this.
Can I add some sort of message box appearing in the free version that points/links to the ‘app name pro’ version? Or isn’t this allowed?[/quote]

Yes, it is allowed. You can promote your other apps but just not anyone’s else apps.

Also the free version must be fully functional for what it’s worth. You can have less or limited things the free app can do but it mustn’t be restricted. So it cannot stop working after x number of usage or functions that doesn’t work.

Clarification: you can promote your other app in the MAS but cannot promote any apps, yours or others, sold outside the MAS.

Would it be a problem if I also sell the app outside the AppStore? Or is this a no go?

The reason why I ask this: The new version of the app is actually version 2.0 (via AppStore) - version 1 has been sold outside the AppStore and I want to make sure all 1.0 customers can use the full version 2/pro version for free too.
I did read I can get hold of coupon codes but is this limited in how many I can give away? I need +4000 for the current customers.

Not a problem at all. I have done that for years. You just can’t advertise or even mention the non-MAS app within the MAS app.

Still it would be very great if some-one who got InApp-buy reliable working for macOS, made a step-by-step how to do this. :slight_smile:

Please check MBS Plugin with all the StoreKit classes:

This includes whole StoreKit framework with events and proper thread handling.

And also check our classes to read app receipts:

I did. And I cannot get it to work. It does work when using Xcode. But for Xojo build apps, I tried everything but no luck.

I know it’s tricky. App needs to be code signed and use right IDs.
And APple’s server take time to refresh as stuff is cached a lot.

[quote=340138:@Christian Schmitz]I know it’s tricky. App needs to be code signed and use right IDs.
And APple’s server take time to refresh as stuff is cached a lot.[/quote]

I got it working with Xcode. So I know how to get the codesign, provisions, bundle IDs, … working. In the end I gave up using the MBP plugins and declares I found. :slight_smile:

I, too, gave up on in app purchases and just have two versions, one free and one “pro”. It is, however, a lame solution, not good for revenue.

I have gone back and forth with Christian about the MBA store kit and inapp examples, which I, too, was unable to master. I tried to persuade him that he should move these plug-ins, and maybe others that involve the now-slippery interface to Apple, into a separate subscription product that would generate enough revenue to support someone doing really good tutorials and answering questions. $50/year would be a bargain, even if the full mbs suite were a pre-requisite.

I highly doubt the MBP really works for InApp buying. I use the same code signing, provision, etc… and it works fine with a small example in Xcode. Same with MBS and it fails. Maybe Christian really should test himself - it is possible something changed over time.

I have MBS InApp purchases displaying in one of my apps, but I have yet to place it on the MAS, so I can’t verify it works 100% for an actual purchase or subscription.

Christoph’s example of work he did in Xcode illustrates one of the ongoing realities of the Xojo community: there are really two sub-communities, one bilingual and equally fluent in both Xojo and Xcode and the other just Xojo. The forum, and God bless you all for your help and patience, is predominantly bilingual. In app purchases may be an example of a subject that is simply beyond the ability of those of us who are Xojo-only.

Well, my test project works here. I can launch it and it lists my test product.
I can click the Buy one button and the Apple dialog comes to buy.

As far as I see you just need to setup the same product stuff on the Apple website.

e.g. for my test app (de.monkeybreadsoftware.realbasic.examples.StoreKit) I have a product with ID test1

in iTunes connect I see my Store Kit Test app there.
With same bundle ID.

In the Feature tab, I got my test Product listed.
Product ID is test1, it has a price, is enabled for purchase and got an Apple ID.

I am not sure what I could do to get it working for you.
IDs must match for product and app, code signing is not needed and this just works for me.

I think we have now pretty well summarized the state of play. Christian is able to get his store kit plugin to stand up on its hind legs and dance. Others, like myself, are not.

Part of the challenge is that there are a lot of moving parts, mostly over on the apple side. It is easy to get lost in the process and make cockpit errors. Just the fact that there are queues involved is head-spinning.

A similar situation once prevailed over on the Windows side, trying to get Xojo apps into the Windows App Store. It was a black hole until Eugene Dakin wrote, and multiple times updated, a tutorial of how he got his app into that store. It was a big job and it is a big document, almost entirely about the Microsoft side, not the Xojo side, because that is where the complexity lies. It may be a while before anyone is up to a similar task here…

Maybe we schedule a little meeting where we share screen and try my example on your account?
(if you fund the hours, we can spend a lot of time on this, but I’d hope it’s done in an hour)