private IHttpActionResult CreateDonorForAuthenticatedUser(string authToken, CreateDonorDTO dto) { try { var donor = _donorService.GetContactDonorForAuthenticatedUser(authToken); donor = _donorService.CreateOrUpdateContactDonor(donor, string.Empty, string.Empty, string.Empty, string.Empty, dto.stripe_token_id, DateTime.Now); var response = new DonorDTO { Id = donor.DonorId, ProcessorId = donor.ProcessorId, RegisteredUser = true, Email = donor.Email }; return(Ok(response)); } catch (PaymentProcessorException e) { return(e.GetStripeResult()); } catch (Exception exception) { var apiError = new ApiErrorDto("Donor Post Failed", exception); throw new HttpResponseException(apiError.HttpResponseMessage); } }