// To understand how to create products // see https://partner.steamgames.com/doc/features/microtransactions/implementation public void InitializePurchase() { string userId = SteamUser.GetSteamID().ToString(); String orderId = currentOrder; HttpRequestArgs argsRequest = new HttpRequestArgs(); argsRequest.data.Add("itemId", "item_id_1"); argsRequest.data.Add("steamUser", userId); argsRequest.data.Add("currency", 199); // equal to $1.99 argsRequest.data.Add("orderId", orderId); argsRequest.data.Add("itemDescription", "1000 Coins"); argsRequest.data.Add("category", "Gold"); // you can use your own library to call the API if you want to. this.MakeApiCall("InitPurchase", argsRequest, (HttpJsonResponse response) => { ApiReturnTransaction ret = JsonUtility.FromJson <ApiReturnTransaction>(response.rawResponse); if (ret.transid != "") { Debug.Log("Transaction initiated. Id:" + ret.transid); this.currentTransactionId = ret.transid; } }, (HttpRequestError error) => { Debug.Log(error.message); }, true, HttpRequestContainerType.POST); }
public void FinishPurchase(string OrderId) { HttpRequestArgs argsRequest = new HttpRequestArgs(); argsRequest.data.Add("orderId", orderId.ToString()); this.MakeApiCall("FinalizePurchase", argsRequest, (HttpJsonResponse response) => { ApiReturnTransaction ret = JsonUtility.FromJson <ApiReturn>(response.rawResponse); if (ret.success) { // after confirmation, you can give the item for the player currentCoins += 1000; Debug.Log("Transaction Finished."); this._isInPurchaseProcess = false; } }, (HttpRequestError error) => { Debug.Log(error.message); }, true, HttpRequestContainerType.POST); }