private void setKeyResponseObjects(PayPalAPIInterfaceServiceService service, DoReauthorizationResponseType response) { Dictionary<string, string> responseParams = new Dictionary<string, string>(); responseParams.Add("Correlation Id", response.CorrelationID); responseParams.Add("API Result", response.Ack.ToString()); HttpContext CurrContext = HttpContext.Current; CurrContext.Items.Add("Response_keyResponseObject", responseParams); CurrContext.Items.Add("Response_apiName", "DoReauthorization"); CurrContext.Items.Add("Response_redirectURL", null); CurrContext.Items.Add("Response_requestPayload", service.getLastRequest()); CurrContext.Items.Add("Response_responsePayload", service.getLastResponse()); if (response.Ack.Equals(AckCodeType.FAILURE) || (response.Errors != null && response.Errors.Count > 0)) { CurrContext.Items.Add("Response_error", response.Errors); } else { CurrContext.Items.Add("Response_error", null); responseParams.Add("Authorization ID", response.AuthorizationID); responseParams.Add("Payment status", response.AuthorizationInfo.PaymentStatus.ToString()); } Server.Transfer("../APIResponse.aspx"); }
// # DoReauthorization API Operation // Authorize a payment public DoReauthorizationResponseType DoReauthorizationAPIOperation() { // Create the DoReauthorizationResponseType object DoReauthorizationResponseType responseDoReauthorizationResponseType = new DoReauthorizationResponseType(); try { // Create the DoAuthorizationReq object DoReauthorizationReq requestDoReauthorization = new DoReauthorizationReq(); // `Amount` to reauthorize which takes mandatory params: // // * `currencyCode` // * `amount` BasicAmountType amount = new BasicAmountType(CurrencyCodeType.USD, "3.00"); // `DoReauthorizationRequest` which takes mandatory params: // // * `Authorization Id` - Value of a previously authorized transaction // identification number returned by PayPal. // * `amount` DoReauthorizationRequestType doReauthorizationRequest = new DoReauthorizationRequestType("9B2288061E685550E", amount); requestDoReauthorization.DoReauthorizationRequest = doReauthorizationRequest; // Create the service wrapper object to make the API call PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService(); // # API call // Invoke the DoReauthorization method in service wrapper object responseDoReauthorizationResponseType = service.DoReauthorization(requestDoReauthorization); if (responseDoReauthorizationResponseType != null) { // Response envelope acknowledgement string acknowledgement = "DoReauthorization API Operation - "; acknowledgement += responseDoReauthorizationResponseType.Ack.ToString(); logger.Info(acknowledgement + "\n"); Console.WriteLine(acknowledgement + "\n"); // # Success values if (responseDoReauthorizationResponseType.Ack.ToString().Trim().ToUpper().Equals("SUCCESS")) { // Authorization identification number logger.Info("Authorization ID : " + responseDoReauthorizationResponseType.AuthorizationID + "\n"); Console.WriteLine("Authorization ID : " + responseDoReauthorizationResponseType.AuthorizationID + "\n"); } // # Error Values else { List<ErrorType> errorMessages = responseDoReauthorizationResponseType.Errors; foreach (ErrorType error in errorMessages) { logger.Debug("API Error Message : " + error.LongMessage); Console.WriteLine("API Error Message : " + error.LongMessage + "\n"); } } } } // # Exception log catch (System.Exception ex) { // Log the exception message logger.Debug("Error Message : " + ex.Message); Console.WriteLine("Error Message : " + ex.Message); } return responseDoReauthorizationResponseType; }