Add/Init IAP items to SDKBOX IAP

Hi,

I was wondering if there is a way I can manually add IAP items to SDKBOX. Currently all the items are initialised by reading the “sdkbox_config.json” file in Resources folder. I would like to manually add some more IAP items. Or init the sdk::init which takes items as parameter(s).

Or if it can’t be done. How can I request such feature from the team behind SDKBOX.

Regards
Shahzaib

Can you explain why you want to do this? Items need to be approved for sale by the respective app stores. So storing them in the config file makes sense. Manual adding on the fly, I don’t follow how this would work.

You could update your “sdkbox_config.json” through AssetManagerEx. The items will be created/updated at every game start.

What do you mean by “need to be approved”? It’s the developer that creates them anyways.

It just makes sense, if you don’t need to change them without uploading a new version of your game.

You would be able do edit IAP items in real-time, offer discounts, add special offers for your whales and what not.

It would need a service like the major BAAS providers are offering. You can create/delete/hide/show/edit/alter IAP items in real-time for any major service provider through one UI. The BAAS provider will route the IAP stuff through to the individual store and takes care of everything.
E.g. gamesparks, playfab or braincloud all offer such stuff for a cost, of course. You could calculate about 10% of your revenue for such a service. It’s not just IAP, but an all in one package from IAP, to tracking to multiplayer.

Ah, I see. Doing so without needing to update the app. Good point.

Although, if I create IAP items, Apple must approve them… You have to submit them for approval…

Yeah. Being in the need to download 50MB again, just because you changed some asset for some IAP or anything is just a drag.

Ah yeah, sorry. You were referring to that apple review thing, What I meant was, that this is not a problem. If you receive the OK from Apple, you would then issue the update to your game, not upfront.

Yes, I read the original post as they wanted to add items on the fly, but thought they meant doing so on a whim, forgetting they would need to be reviewed.

I guess, as a work around, the game could modify sdkbox_config.json to add items. Parse it, add what you want. Not ideal, but as a work around.

Yeah, sometimes I also do. Not all stores are so into reviewing everything like Apple. It’s just because they don’t allow third party IAP transactions.

After getting the OK, of course.
That’s why I don’t like configuring IAP stuff through local content. As it’s basically all handled in the cloud, it’s more flexible and even more secure to also store and manage your IAP configuration in the cloud. Not to mention the possibility to automate the process of populating/creating/updating the sdkbox_config.json after you got the OK.

Ok. After digging into AssetsManagerEx for some time I was finally able to get it working. The new version and manifest files download fine, I believe because logs says “Update finished”. But I don’t think my sdkbox_config.json downloads.
This is what my manifest looks like:

{
    "packageUrl": "http://s3.amazonaws.com/BUCKETNAME/",
    "remoteManifestUrl": "http://s3.amazonaws.com/BUCKETNAME/project.manifest",
    "remoteVersionUrl": "http://s3.amazonaws.com/BUCKETNAME/version.manifest",
	"version" : "1.1.0",
	"engineVersion" : "3.0",

	"assets" : {
		"sdkbox_config.json" : {
			"md5" : "..."
		}
	},
    
    "searchPaths" : [
    ]
}

I have placed the sdkbox_config.json in the “packageUrl” folder/bucket. But I doubt it gets downloaded. The UPDATE_PROGRESSION does not get called.

And yes all this “on the fly” adding/updating after the in-apps have been approved from the stores.

If I read it correctly, you want be able to update iap configuration over the air correct?

We’re working on this feature.

Yes exactly.
If you guys are working on it then this is a very good news. Thank you all for your contributions

the receiptCipheredPayload is encrypt? if i use my own server to verify how to decrypt?

Let us ask @nite and/or @pabitrapadhy

the receiptCipheredPayload encrypted by apple, just send it to apple server, and it will respond you if it’s legit purchase or not.