private string getSetupDataString(string token) { JSONObject jsonObject = new JSONObject(); jsonObject.Put("merchantAccount", paymentSetupRequest.getMerchantAccount()); // Not required when communicating with merchant server jsonObject.Put("shopperLocale", paymentSetupRequest.getShopperLocale()); jsonObject.Put("token", token); jsonObject.Put("returnUrl", "example-shopping-app://"); jsonObject.Put("countryCode", paymentSetupRequest.getCountryCode()); JSONObject amount = new JSONObject(); amount.Put("value", paymentSetupRequest.getAmount().Value); amount.Put("currency", paymentSetupRequest.getAmount().Currency); jsonObject.Put("amount", amount); jsonObject.Put("channel", "android"); jsonObject.Put("reference", "Android Checkout SDK Payment: " + DateTime.Now.ToString()); jsonObject.Put("shopperReference", "example-customer@exampleprovider"); short maxNumberOfInstallments = Short.ParseShort(paymentSetupRequest.getMaxNumberOfInstallments()); if (maxNumberOfInstallments > 1) { JSONObject configuration = new JSONObject(); JSONObject installments = new JSONObject(); installments.Put("maxNumberOfInstallments", maxNumberOfInstallments); configuration.Put("installments", installments); jsonObject.Put("configuration", configuration); } return(jsonObject.ToString()); }