protected virtual DwollaCheckoutResponse ExecuteRestRequest(DwollaCheckoutRequest checkoutRequest)
{
var client = new RestClient(RequestUrl);
var req = new RestRequest("payment/request", Method.POST) {
RequestFormat = DataFormat.Json
}
.AddBody(checkoutRequest);
var res = client.Execute<DwollaCheckoutResponse>(req);
if (res.ResponseStatus != ResponseStatus.Completed || res.StatusCode != HttpStatusCode.OK)
return new DwollaCheckoutResponse { Result = DwollaCheckoutResponseResult.Failure, Message = "Non HTTP status code received." };
return res.Data;
}