Search Unity

  1. We've closed the job boards. If you're looking for work, or looking to hire check out Unity Connect. You can see more information here.
    Dismiss Notice
  2. We're running great holiday deals on subscriptions, swag and Asset Store packages! Take a peek at this blog for more information!
    Dismiss Notice
  3. Check out our Unite Austin 2017 YouTube playlist to catch up on what you missed. More videos coming soon.
    Dismiss Notice
  4. Unity 2017.2 is now released.
    Dismiss Notice
  5. The Unity Gear Store is here to help you look great at your next meetup, user group or conference. With all new Unity apparel, stickers and more!
    Dismiss Notice
  6. Introducing the Unity Essentials Packs! Find out more.
    Dismiss Notice
  7. Want to see the most recent patch releases? Take a peek at the patch release page.
    Dismiss Notice
  8. Unity 2017.3 beta is now available for download.
    Dismiss Notice

Simple In-App Purchase System (SIS) - Shop solution

Discussion in 'Assets and Asset Store' started by Baroni, Aug 8, 2013.

?

Which billing plugin are you using in combination with Simple IAP System?

  1. Unity IAP

    28 vote(s)
    80.0%
  2. Voxel Busters

    1 vote(s)
    2.9%
  3. Stans Assets

    6 vote(s)
    17.1%
  4. Prime31

    0 vote(s)
    0.0%
  1. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    Hello all!

    I'm proud that after working 6 months on this, I can finally announce the new 4.0 update is live on the Unity Asset Store!

    [​IMG]

    As others like to call it, this is the biggest update for Simple IAP System to date. Not only does it add Facebook support, but also PayPal payments and Oculus in-app purchases (including a virtual reality sample scene) as completely new stores - you won't find that in any other billing asset on the Asset Store :)

    Additionally, the newly added PlayFab integration allows for cloud save, player management, remote catalogs and receipt validation. Note that the integration is still under active development - you can find more details in the integration guide linked above.

    If you would like to see detailed release notes with screenshots for this release, you can follow this link, where each feature is explained with some additional notes. Otherwise, below is a summary on what changed. Since so much has changed in this release, even after days of QA done, there could be bugs or documentation issues. Please provide feedback here, in our forums or via email if anything is unclear, or just tell me what you think about the new features!

    Happy developing!

    Summary
    • NEW STORES: Facebook (Unity IAP), Oculus (Rift & GearVR), PayPal (via PlayFab). See the store guides on our forums for instructions.
    • added VR example scene (VerticalVR) for in-game purchasing on Oculus
    • PlayFab integration brings cloud sync support for online games: memory only mode, meaning no IAP data is stored on the device. This requires an active internet connection at all times!
    • added server side receipt validation using PlayFab: "lite" mode supports validation only (no other PlayFab features required)
    • added automatic tracking of consumable products in PlayerData
    • added usageCount for consumable products to define custom use count
    • added currency product type that adds the defined amount on purchase
    • added ShowDatabaseEditor for displaying currently stored player data
    • added possibility of "standalone" IAPItem without using shop prefabs: you can drag an IAPItem in the scene and give it a productId manually
    • rewrote shop item updating to be more performant, adding automatic shop updating e.g. for single-scene apps with shop in background
    • replaced downloadable RemoteConfig with PlayFab's item catalog: introduce product sales without app update, works on all platforms
    • replaced 'restore' product with separate button in each shop scene: there is a new 'Button - Restore' prefab and UIButtonRestore script
    • fixed ClearDatabaseEditor not working without entering runtime
    • fixed shop items duplicating with IAPManager & ShopManager in scene
    • renaming of some DBManager methods for consistency
    • restructure of billing plugins: all plugins are written on top of Unity IAP - therefore Unity IAP is now a required plugin. No more separate billing plugin packages to import, this is being handled with platform defines instead, allowing for several combinations of billing plugins on different platforms.
    • removed support for SmartLocalization as it has been abandoned
    • removed support for Prime31 billing plugins
    • minimum required Unity version: 5.6.x

    Upgrade notes:
    - Export your products in the IAP Settings Editor before upgrading. Re-check your currency products for the new currency type and also your platform overrides since their format has changed. Remove any custom code that can now be handled with the currency type (adding currency on purchase) and usage (adding PlayerData on purchase).
     
    ilmario likes this.
  2. derkoi

    derkoi

    Joined:
    Jul 3, 2012
    Posts:
    1,764
    Hi, I'm getting a bunch of these errors after upgrading, what should I use instead?
     
  3. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    Hi, due to the new format tracking purchase amounts the .isPurchased method changed to .GetPurchase (product id) > 0.

    Thanks for the hint, I'll reimplement this as a convenience method in the next update.
     
  4. derkoi

    derkoi

    Joined:
    Jul 3, 2012
    Posts:
    1,764
    Thanks for the reply. I'll roll back to the previous version then, rather than break all my scripts.
     
  5. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    Well you could just add this to the DBManager yourself:

    Code (csharp):
    1. public static bool isPurchased(string productId)
    2. {
    3.    return GetPurchase(productId) > 0;
    4. }
     
  6. pako

    pako

    Joined:
    Nov 21, 2012
    Posts:
    53
    @Baroni Congrats on adding all these very cool new features!!!

    I understand that PlayFab integration is being rolled out into phases, which makes it top priority, but is there a chance that we'll also see GameSparks integration sometime down the road? ;)
     
  7. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    Thanks @pako, I did take a look at GameSparks before. However, the current integration of PlayFab in Simple IAP System is very deep (coupled with the code workflow), so implementing another backend service would basically mean rewriting a major part. My decision in favor of PlayFab was made since PlayFab is roughly at the half price of GameSparks, has all features necessary - and even more important, PayPal, Facebook and Steam billing services, which I've wanted to expand on in SIS, to reach more people on desktop and WebGL games. Because of these points, a GameSparks integration is very unlikely.
     
    pako likes this.
  8. pako

    pako

    Joined:
    Nov 21, 2012
    Posts:
    53
    Thanks @Baroni , Luckily I'm still testing the GameSparks implementation in my game, so it won't be that difficult to switch over. I've looked at both of GameSparks and PlayFab and they are pretty close, but with SIS support I have one more reason to switch to PlayFab.
     
  9. GameSparks_Clare

    GameSparks_Clare

    Joined:
    Feb 7, 2017
    Posts:
    37
    Hi Pako,

    I'm sorry to hear you're thinking of not integrating GameSparks! We're more configurable than Playfab, we offer support as standard, we offer access to the full platform in that price, Playfab have hidden costs and charges on top for 1st class features, we offer everything as standard.

    I understand SIS support is important for your project, while our team has never used this particular asset before, I would recommend getting in touch before you switch as we may be able to work out a way to use both together so you don't need to migrate. https://support.gamesparks.net/support/home

    I wish you all the best in your project regardless of which BaaS you chose to use! :)
    Clare
     
  10. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    @GameSparks_Clare, would you please not hijack my asset support thread for your advertising. There is a private message system on this forum as well.
     
  11. pako

    pako

    Joined:
    Nov 21, 2012
    Posts:
    53
    Hi @GameSparks_Clare and thanks for the info. However, just to clarify things, I've done my research on Playfab and I know that they don't offer the full platform without extra charges as you do. But quite honestly, I've been VERY disappointed with your support and your documentation! So, it's not just SIS support for Playfab, it's a way out from poor documentation and support.
     
  12. Daniel_Loyer

    Daniel_Loyer

    Joined:
    Apr 15, 2017
    Posts:
    2
    Hi @Baroni
    I' in the process of implementing SIS with Playfab, and I'm confused on how to import Playfab catalogue into my unity project using SIS (in IAP Settings). There seems to be incompatibilities.

    So here are my questions:
    1. Is it possible to import the JSON file downloaded from Playfab? (I managed to do it for currencies, I just had to name the file like the one from export, but couldn't do it for the catalogues)
    2. Are all Playfab types of Bundles, Drop tables, container, etc, supported? (I tried to create the equivalent of my setup in Playfab into the IAP Settings, but couldn't find how to make drop tables and bundles giving anything else than currencies)
    3. If answer to quest 1 and 2 is yes, is there anything in particular I need to do?
     
  13. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    Hi @Daniel_Loyer, the JSON export/import is only supported in one way, specifically SIS to PlayFab. This also ensures that you are not using item types not supported by SIS. Please follow the PlayFab guide on our forums for installation instructions.

    I haven't tested drop tables, but bundles and containers should work - in theory. SIS already uses bundles for virtual currency on the PlayFab side as well.
     
  14. Daniel_Loyer

    Daniel_Loyer

    Joined:
    Apr 15, 2017
    Posts:
    2
    Ok, is there a plan to integrate a bit closer to Playfab? Items, drop tables, etc?
     
  15. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    What do you mean by "Items" and "etc"? Note that the functionality is already there to some extent, since when granting new items via PlayFab, the player inventory gets synced with SIS on login. You could just call your own Cloud Script function for this, and refresh the inventory in-game.

    PlayFab integration is in phase 1 now (as noted in our PlayFab guide) with a lot of things left to do. I'll revisit this for one of the next phases, but I will need more details on your use case.
     
  16. AlexPan4

    AlexPan4

    Joined:
    Feb 15, 2017
    Posts:
    3
    Hi, I am currently developing a WebGL game and want to implement in app purchases, this asset seems to be what I am looking for, however I have a couple questions regarding this asset.
    What are the possible payment options for WebGL games (I know there is Paypal and Facebook but are there any others)? Also on the Facebook option, does the game need to be a facebook game? Are all the products managed on playfab no matter the payment options?
     
  17. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    Hi @AlexPan4,

    you are right, PayPal and Facebook are both supported on WebGL. Yes, when deploying to Facebook, it needs to be a Facebook Canvas game - you can upload it directly to Facebook's servers using Unity's Facebook build target. PayPal requires PlayFab, but Facebook with Simple IAP System is using Unity IAP only (PlayFab does not support Facebook Canvas / Gameroom apps yet).
     
  18. AlexPan4

    AlexPan4

    Joined:
    Feb 15, 2017
    Posts:
    3
    Hi @Baroni , thank you very much for your quick response, so if I don't go with the facebook option the only way for the players to pay is the paypal option? Is there no way for the player to pay with credit/debit card for our IAP?
     
  19. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    PayPal offers credit card payments as you may know, but even in their guest payment workflow (not requiring an account), the payment is processed via PayPal. If you mean credit card payments without PayPal then no, that would actually require implementing a new payment provider, like Stripe.
     
  20. AlexPan4

    AlexPan4

    Joined:
    Feb 15, 2017
    Posts:
    3
    Ok then, thank you very much for your help and quick answers.
     
  21. christougher

    christougher

    Joined:
    Mar 6, 2015
    Posts:
    275
    ---Export your products in the IAP Settings Editor before upgrading---

    I'm sorry, could you help me understand better? I can't seem to find how to export my products in the Settings Editor window... I don't want to lose my IAP settings on the IAPManager prefab...

    Also, is this compatible with Unity 2017? I'm getting these errors on a fresh import with 2017.2.0f1 ...


     
  22. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    There is a button at the top of the IAP Settings window for exporting your configuration to a JSON file, and also a separate button for importing the configuration again.

    You did not fully import Unity IAP. Please import it from the services window. If you think you've imported it, see in your Plugins > UnityPurchasing folder and look out for a UnityIAP unitypackage file. If it's there, double click to import.
     
  23. christougher

    christougher

    Joined:
    Mar 6, 2015
    Posts:
    275
    Ah, I have an older version (3.2) that does not have the export option... is there any way I can still get version 3.3 to export my settings? I just left a 5 star review on the UAS but I can PM you my invoice number if need be. As is I own four of you assets. :D

    Email is Christougher at Hotmail
     
    Last edited: Oct 17, 2017
  24. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    Sure, send an email with your invoice no. to our support address.
     
  25. christougher

    christougher

    Joined:
    Mar 6, 2015
    Posts:
    275
    Thx for the quick email!

    Oddness... getting two of these errors... doesn't make sense...

    Assets/SimpleIAPSystem/Editor/IAPEditorExporter.cs(20,34): error CS0117: `JSON' does not contain a definition for `Parse'

    EDIT... never mind looks like a namespace conflict.... just added 'SimpleJSON.' to the offending lines of code and compiled just fine.
     
    Last edited: Oct 17, 2017
  26. christougher

    christougher

    Joined:
    Mar 6, 2015
    Posts:
    275
    Hi, I was wondering if you could also provide some guidance for updating the following:
    RemovePurchased
    SetToPurchased
    IncrementPlayerData
    UnlockItems
     
  27. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    Sure:

    RemovePurchased -> RemovePurchase
    SetToPurchased -> SetPurchase
    IncrementPlayerData -> IncreasePlayerData
    UnlockItems -> Refresh(productId), or RefreshAll
     
  28. Banky

    Banky

    Joined:
    Sep 10, 2014
    Posts:
    20
    Hi Baroni,

    I haven't updated to 4.0 yet, but I see in the release notes that support for SmartLocalization is removed in 4.0. Is there any other plugin supported or any alternative to offline localization?

    Thanks!
     
  29. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    Hi @Banky, support for SmartLocalization has been removed as the developers stopped supporting it (they uploaded the code to github but do not maintain it anymore). Overall, demand for offline localization was very low. I might write an extension for the most popular Asset Store localization plugin at some point, but currently only online localization (for real money products in the App Store settings) is supported.
     
  30. Banky

    Banky

    Joined:
    Sep 10, 2014
    Posts:
    20
    Hi Baroni,

    In my case I have a lot of virtual currency products in my game, so it would be great to have some support for offline localization!

    Thanks!
     
  31. imgumby

    imgumby

    Joined:
    Nov 26, 2015
    Posts:
    53
    Seems to be a problem with the latest update as simple IAP has disappeared from asset store despite a reminder that it's updated to version 4.02 today ..o_O
     
  32. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,085
    noticed the same.
     
  33. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    Thanks, resubmitted. Only a 2017.2+ compatibility update though, no other changes.

    Edit: didn't help, sent a ticket to Unity support.
     
    Last edited: Nov 13, 2017
  34. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,085

    thanks for the update and reply.
     
  35. Wajdik

    Wajdik

    Joined:
    Feb 4, 2015
    Posts:
    174
    Hi,
    Could you please add a way to let players to be able to pay for IAP using Bitcoin? (For WebGL and Standalone games)
     
  36. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    Hi @Wajdik, I'm not developing billing plugins myself due to the massive support burden this would mean. That's why I am integrating chosen billing plugins from high responsive developers. If you find such a plugin with Bitcoin support, please let me know.
     
  37. Baroni

    Baroni

    Joined:
    Aug 20, 2010
    Posts:
    2,028
    The asset is available in the Asset Store again - Unity support finally handled it.