public static string GenerateFuturePaymentPayPalNonce(BraintreeGateway gateway) { var clientToken = GenerateDecodedClientToken(gateway); var authorizationFingerprint = extractParamFromJson("authorizationFingerprint", clientToken); RequestBuilder builder = new RequestBuilder(""); builder.AddTopLevelElement("authorization_fingerprint", authorizationFingerprint). AddTopLevelElement("shared_customer_identifier_type", "testing"). AddTopLevelElement("shared_customer_identifier", "test-identifier"). AddTopLevelElement("paypal_account[consent_code]", "consent"). AddTopLevelElement("paypal_account[correlation_id]", Guid.NewGuid().ToString()). AddTopLevelElement("paypal_account[options][validate]", "false"); var response = new BraintreeTestHttpService().Post(gateway.MerchantId, "v1/payment_methods/paypal_accounts", builder.ToQueryString()); #if netcore StreamReader reader = new StreamReader(response.Content.ReadAsStreamAsync().Result, Encoding.UTF8); #else StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8); #endif string responseBody = reader.ReadToEnd(); Regex regex = new Regex("nonce\":\"(?<nonce>[a-f0-9\\-]+)\""); Match match = regex.Match(responseBody); return(match.Groups["nonce"].Value); }
public static string GetNonceForNewPaymentMethod(BraintreeGateway gateway, Params @params, bool isCreditCard) { var clientToken = GenerateDecodedClientToken(gateway); var authorizationFingerprint = extractParamFromJson("authorizationFingerprint", clientToken); var paymentMethodType = isCreditCard ? "credit_card" : "paypal_account"; var paymentMethodTypePlural = paymentMethodType + "s"; var builder = new RequestBuilder(); builder. AddTopLevelElement("authorization_fingerprint", authorizationFingerprint). AddTopLevelElement("shared_customer_identifier", "test-identifier"). AddTopLevelElement("shared_customer_identifier_type", "testing"); foreach (var param in @params) { builder.AddTopLevelElement(string.Format("{0}[{1}]", paymentMethodType, param.Key), param.Value.ToString()); } var response = new BraintreeTestHttpService().Post( gateway.MerchantId, "v1/payment_methods/" + paymentMethodTypePlural, builder.ToQueryString()); #if netcore StreamReader reader = new StreamReader(response.Content.ReadAsStreamAsync().Result, Encoding.UTF8); string responseBody = reader.ReadToEnd(); return(extractParamFromJson("nonce", responseBody)); #else return(extractParamFromJson("nonce", response)); #endif }
public static string GetNonceForNewCreditCard(BraintreeGateway gateway, Params creditCardDetails, string customerId = null) { var authorizationFingerprint = GenerateAuthorizationFingerprint(gateway, customerId); var builder = new RequestBuilder(); builder. AddTopLevelElement("authorization_fingerprint", authorizationFingerprint). AddTopLevelElement("shared_customer_identifier", "test-identifier"). AddTopLevelElement("shared_customer_identifier_type", "testing"); foreach (var param in creditCardDetails) { var nested = param.Value as Params; if (null != nested) { foreach (var nestedParam in nested) { builder.AddTopLevelElement(string.Format("credit_card[{0}][{1}]", param.Key, nestedParam.Key), nestedParam.Value.ToString()); } } else { builder.AddTopLevelElement(string.Format("credit_card[{0}]", param.Key), param.Value.ToString()); } } var response = new BraintreeTestHttpService().Post( gateway.MerchantId, "v1/payment_methods/credit_cards", builder.ToQueryString()); return(extractParamFromJson("nonce", response)); }
public static string GenerateUnlockedNonce(BraintreeGateway gateway, string creditCardNumber, string customerId) { var authorizationFingerprint = GenerateAuthorizationFingerprint(gateway, customerId); RequestBuilder builder = new RequestBuilder(""); builder.AddTopLevelElement("authorization_fingerprint", authorizationFingerprint). AddTopLevelElement("shared_customer_identifier_type", "testing"). AddTopLevelElement("shared_customer_identifier", "test-identifier"). AddTopLevelElement("credit_card[number]", creditCardNumber). AddTopLevelElement("share", "true"). AddTopLevelElement("credit_card[expiration_month]", "11"). AddTopLevelElement("credit_card[expiration_year]", "2099"); var response = new BraintreeTestHttpService().Post(gateway.MerchantId, "v1/payment_methods/credit_cards", builder.ToQueryString()); #if netcore StreamReader reader = new StreamReader(response.Content.ReadAsStreamAsync().Result, Encoding.UTF8); #else StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8); #endif string responseBody = reader.ReadToEnd(); return(extractParamFromJson("nonce", responseBody)); }
private static ClientConfiguration GetClientConfiguration(BraintreeGateway gateway, String authorizationFingerprint) { var queryParams = new RequestBuilder(); queryParams.AddTopLevelElement("authorizationFingerprint", authorizationFingerprint); queryParams.AddTopLevelElement("configVersion", "3"); var response = new BraintreeTestHttpService().Get( gateway.MerchantId, "v1/configuration?" + queryParams.ToQueryString() ); var json = GetResponseContent(response); return(JsonConvert.DeserializeObject <ClientConfiguration>(json)); }
public static string GenerateUnlockedNonce(BraintreeGateway gateway, string creditCardNumber, string customerId) { var clientToken = ""; if (customerId == null) { clientToken = GenerateDecodedClientToken(gateway); } else { clientToken = GenerateDecodedClientToken(gateway, new ClientTokenRequest { CustomerId = customerId } ); } var authorizationFingerprint = extractParamFromJson("authorizationFingerprint", clientToken); RequestBuilder builder = new RequestBuilder(""); builder.AddTopLevelElement("authorization_fingerprint", authorizationFingerprint). AddTopLevelElement("shared_customer_identifier_type", "testing"). AddTopLevelElement("shared_customer_identifier", "test-identifier"). AddTopLevelElement("credit_card[number]", creditCardNumber). AddTopLevelElement("share", "true"). AddTopLevelElement("credit_card[expiration_month]", "11"). AddTopLevelElement("credit_card[expiration_year]", "2099"); var response = new BraintreeTestHttpService().Post(gateway.MerchantId, "v1/payment_methods/credit_cards.json", builder.ToQueryString()); #if netcore StreamReader reader = new StreamReader(response.Content.ReadAsStreamAsync().Result, Encoding.UTF8); #else StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8); #endif string responseBody = reader.ReadToEnd(); Regex regex = new Regex("nonce\":\"(?<nonce>[a-f0-9\\-]+)\""); Match match = regex.Match(responseBody); return(match.Groups["nonce"].Value); }
public static string GetNonceForPayPalAccount(BraintreeGateway gateway, Params paypalAccountDetails) { var authorizationFingerprint = GenerateAuthorizationFingerprint(gateway); var builder = new RequestBuilder(); builder.AddTopLevelElement("authorization_fingerprint", authorizationFingerprint); foreach (var param in paypalAccountDetails) { builder.AddTopLevelElement(string.Format("paypal_account[{0}]", param.Key), param.Value.ToString()); } var response = new BraintreeTestHttpService().Post(gateway.MerchantId, "v1/payment_methods/paypal_accounts", builder.ToQueryString()); #if netcore StreamReader reader = new StreamReader(response.Content.ReadAsStreamAsync().Result, Encoding.UTF8); string responseBody = reader.ReadToEnd(); return(extractParamFromJson("nonce", responseBody)); #else return(extractParamFromJson("nonce", response)); #endif }
public static string GenerateFuturePaymentPayPalNonce(BraintreeGateway gateway) { var clientToken = GenerateDecodedClientToken(gateway); var authorizationFingerprint = extractParamFromJson("authorizationFingerprint", clientToken); RequestBuilder builder = new RequestBuilder(""); builder.AddTopLevelElement("authorization_fingerprint", authorizationFingerprint). AddTopLevelElement("shared_customer_identifier_type", "testing"). AddTopLevelElement("shared_customer_identifier", "test-identifier"). AddTopLevelElement("paypal_account[consent_code]", "consent"). AddTopLevelElement("paypal_account[correlation_id]", Guid.NewGuid().ToString()). AddTopLevelElement("paypal_account[options][validate]", "false"); var response = new BraintreeTestHttpService().Post(gateway.MerchantId, "v1/payment_methods/paypal_accounts", builder.ToQueryString()); #if netcore StreamReader reader = new StreamReader(response.Content.ReadAsStreamAsync().Result, Encoding.UTF8); #else StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8); #endif string responseBody = reader.ReadToEnd(); Regex regex = new Regex("nonce\":\"(?<nonce>[a-f0-9\\-]+)\""); Match match = regex.Match(responseBody); return match.Groups["nonce"].Value; }
public static string GenerateUnlockedNonce(BraintreeGateway gateway, string creditCardNumber, string customerId) { var clientToken = ""; if (customerId == null) { clientToken = GenerateDecodedClientToken(gateway); } else { clientToken = GenerateDecodedClientToken(gateway, new ClientTokenRequest { CustomerId = customerId } ); } var authorizationFingerprint = extractParamFromJson("authorizationFingerprint", clientToken); RequestBuilder builder = new RequestBuilder(""); builder.AddTopLevelElement("authorization_fingerprint", authorizationFingerprint). AddTopLevelElement("shared_customer_identifier_type", "testing"). AddTopLevelElement("shared_customer_identifier", "test-identifier"). AddTopLevelElement("credit_card[number]", creditCardNumber). AddTopLevelElement("share", "true"). AddTopLevelElement("credit_card[expiration_month]", "11"). AddTopLevelElement("credit_card[expiration_year]", "2099"); var response = new BraintreeTestHttpService().Post(gateway.MerchantId, "v1/payment_methods/credit_cards.json", builder.ToQueryString()); #if netcore StreamReader reader = new StreamReader(response.Content.ReadAsStreamAsync().Result, Encoding.UTF8); #else StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8); #endif string responseBody = reader.ReadToEnd(); Regex regex = new Regex("nonce\":\"(?<nonce>[a-f0-9\\-]+)\""); Match match = regex.Match(responseBody); return match.Groups["nonce"].Value; }
public static string GetNonceForNewPaymentMethod(BraintreeGateway gateway, Params @params, bool isCreditCard) { var clientToken = GenerateDecodedClientToken(gateway); var authorizationFingerprint = extractParamFromJson("authorizationFingerprint", clientToken); var paymentMethodType = isCreditCard ? "credit_card" : "paypal_account"; var paymentMethodTypePlural = paymentMethodType + "s"; var builder = new RequestBuilder(); builder. AddTopLevelElement("authorization_fingerprint", authorizationFingerprint). AddTopLevelElement("shared_customer_identifier", "test-identifier"). AddTopLevelElement("shared_customer_identifier_type", "testing"); foreach (var param in @params) builder.AddTopLevelElement(string.Format("{0}[{1}]", paymentMethodType, param.Key), param.Value.ToString()); var response = new BraintreeTestHttpService().Post( gateway.MerchantId, "v1/payment_methods/" + paymentMethodTypePlural, builder.ToQueryString()); #if netcore StreamReader reader = new StreamReader(response.Content.ReadAsStreamAsync().Result, Encoding.UTF8); string responseBody = reader.ReadToEnd(); return extractParamFromJson("nonce", responseBody); #else return extractParamFromJson("nonce", response); #endif }
public static string GetNonceForNewCreditCard(BraintreeGateway gateway, Params creditCardDetails, string customerId = null) { var clientToken = GenerateDecodedClientToken( gateway, customerId == null ? null : new ClientTokenRequest { CustomerId = customerId }); var authorizationFingerprint = extractParamFromJson("authorizationFingerprint", clientToken); var builder = new RequestBuilder(); builder. AddTopLevelElement("authorization_fingerprint", authorizationFingerprint). AddTopLevelElement("shared_customer_identifier", "test-identifier"). AddTopLevelElement("shared_customer_identifier_type", "testing"); foreach (var param in creditCardDetails) { var nested = param.Value as Params; if (null != nested) { foreach (var nestedParam in nested) { builder.AddTopLevelElement(string.Format("credit_card[{0}][{1}]", param.Key, nestedParam.Key), nestedParam.Value.ToString()); } } else builder.AddTopLevelElement(string.Format("credit_card[{0}]", param.Key), param.Value.ToString()); } var response = new BraintreeTestHttpService().Post( gateway.MerchantId, "v1/payment_methods/credit_cards", builder.ToQueryString()); return extractParamFromJson("nonce", response); }
public static string GetNonceForPayPalAccount(BraintreeGateway gateway, Params paypalAccountDetails) { var clientToken = GenerateDecodedClientToken(gateway); var authorizationFingerprint = extractParamFromJson("authorizationFingerprint", clientToken); var builder = new RequestBuilder(); builder.AddTopLevelElement("authorization_fingerprint", authorizationFingerprint); foreach (var param in paypalAccountDetails) builder.AddTopLevelElement(string.Format("paypal_account[{0}]", param.Key), param.Value.ToString()); var response = new BraintreeTestHttpService().Post(gateway.MerchantId, "v1/payment_methods/paypal_accounts", builder.ToQueryString()); #if netcore StreamReader reader = new StreamReader(response.Content.ReadAsStreamAsync().Result, Encoding.UTF8); string responseBody = reader.ReadToEnd(); return extractParamFromJson("nonce", responseBody); #else return extractParamFromJson("nonce", response); #endif }