public async Task <ChargeResponse> ChargeAuthorization(string amount, string email, string pin, string authorization_code, string display_name = null, string value = null, string variable_name = null) { var client = HttpConnection.CreateClient(secretKey); var model = new ChargeAuthorizationInput { AuthorizationCode = authorization_code, Amount = amount, Email = email, Pin = pin }; if (!string.IsNullOrWhiteSpace(display_name)) { _ = new ChargeMetadata { AuthCustomFields = new List <AuthCustomField> { new AuthCustomField { } } }; } var jsonObj = JsonConvert.SerializeObject(model); var content = new StringContent(jsonObj, Encoding.UTF8, BaseConstants.ContentTypeHeaderJson); content.Headers.ContentType = new MediaTypeHeaderValue(BaseConstants.ContentTypeHeaderJson); var response = await client.PostAsync("charge", content).ConfigureAwait(false); var json = await response.Content.ReadAsStringAsync(); var result = JsonConvert.DeserializeObject <ChargeResponse>(json); return(result); }
public async Task <ChargeResponse> ChargeAuthorization(ChargeAuthorizationInput model) { var client = HttpConnection.CreateClient(secretKey); var jsonObj = JsonConvert.SerializeObject(model); var content = new StringContent(jsonObj, Encoding.UTF8, BaseConstants.ContentTypeHeaderJson); content.Headers.ContentType = new MediaTypeHeaderValue(BaseConstants.ContentTypeHeaderJson); var response = await client.PostAsync("charge", content); var json = await response.Content.ReadAsStringAsync(); return(JsonConvert.DeserializeObject <ChargeResponse>(json)); }