public void Validate(uint Price, string SKU, string Token, Action <bool, string> Callback)
        {
            try
            {
                Requests.HeaderMap headers = new Requests.HeaderMap();
                headers["Content-Type"] = "application/json";

                ISerializeObject dataObj = Creator.Create <ISerializeObject>();
                dataObj["MerchantID"] = merchantID;
                dataObj["Authority"]  = Token;
                dataObj["Amount"]     = Price;

                string data = Requests.PostString(VALIDATE_URL, dataObj.Content, headers);

                ISerializeObject obj = Creator.Create <ISerializeObject>(data);

                bool isOK = (Convert.ToInt32(obj["Status"]) == 100);

                Callback(isOK, "");
            }
            catch (Exception ex)
            {
                Callback(false, ex.ToString());
            }
        }
        private string SendMessage(ISerializeObject Message)
        {
            ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;

            Requests.HeaderMap headers = new Requests.HeaderMap();
            headers["Authorization"] = "Token " + restAPIKey;
            headers["Content-Type"]  = "application/json";
            headers["Accept"]        = "application/json";

            return(Requests.PostBytes(URL, Encoding.UTF8.GetBytes(Message.Content), headers));
        }
        public void Validate(uint Price, string SKU, string Token, Action <bool, string> Callback)
        {
            try
            {
                Requests.HeaderMap headers = new Requests.HeaderMap();
                headers["X-Access-Token"] = accessToken;

                string data = Requests.Get(string.Format(VALIDATE_URL, packageName, SKU, Token), headers);

                ISerializeObject obj = Creator.Create <ISerializeObject>(data);

                bool isOK = (Convert.ToInt32(obj["purchaseState"]) == 0);

                Callback(isOK, "");
            }
            catch (Exception ex)
            {
                Callback(false, ex.ToString());
            }
        }