Esempio n. 1
0
    IEnumerator GetPaymentID(string accessToken)
    {
        PayPalPaymentCreation Payment = new PayPalPaymentCreation();

        if (jsonStrings != null)
        {
            Payment = JsonUtility.FromJson <PayPalPaymentCreation>(jsonStrings[0].ToString()); //Order can easily be setup ui buttons etc or gameplay elements.
            Payment.transactions[0].invoice_number += System.Guid.NewGuid().ToString();
        }

        var    request       = new UnityWebRequest(_paymentURL, "POST");
        string PaymentString = (JsonUtility.ToJson(Payment));

        byte[] bodyRaw = Encoding.UTF8.GetBytes(PaymentString);
        request.uploadHandler   = new UploadHandlerRaw(bodyRaw);
        request.downloadHandler = new DownloadHandlerBuffer();
        request.SetRequestHeader("Content-Type", "application/json");
        request.SetRequestHeader("Authorization", "Bearer " + accessToken);
        yield return(request.SendWebRequest());

        if (request.isNetworkError || !string.IsNullOrEmpty(request.error))
        {
            Debug.LogError(request.downloadHandler.text);
            Debug.LogError(request.error);
        }
        else
        {
            var data = JsonUtility.FromJson <PayPalPaymentCreation>(request.downloadHandler.text);
            Payment = data;
            Debug.Log("request sent");
            Application.OpenURL(Payment.links[1].href);
            StartCoroutine(GetPayerID(Payment.links[0].href, accessToken));
        }
    }
Esempio n. 2
0
    void OnEnable()
    {
        Order = new PayPalPaymentCreation();

        path = Application.dataPath + "/Resources/Orders/";
    }