private void setKeyResponseObjects(PayPalAPIInterfaceServiceService service, DoVoidResponseType doVoidResponse) { Dictionary <string, string> responseParams = new Dictionary <string, string>(); HttpContext CurrContext = HttpContext.Current; CurrContext.Items.Add("Response_keyResponseObject", responseParams); CurrContext.Items.Add("Response_apiName", "DoVoid"); CurrContext.Items.Add("Response_redirectURL", null); CurrContext.Items.Add("Response_requestPayload", service.getLastRequest()); CurrContext.Items.Add("Response_responsePayload", service.getLastResponse()); if (doVoidResponse.Ack.Equals(AckCodeType.FAILURE) || (doVoidResponse.Errors != null && doVoidResponse.Errors.Count > 0)) { CurrContext.Items.Add("Response_error", doVoidResponse.Errors); } else { CurrContext.Items.Add("Response_error", null); responseParams.Add("Authorization Id", doVoidResponse.AuthorizationID); //Selenium Test Case responseParams.Add("Acknowledgement", doVoidResponse.Ack.ToString()); } Server.Transfer("../APIResponse.aspx"); }
/// <summary> /// Voids payment /// </summary> /// <param name="order">Order</param> /// <param name="cancelPaymentResult">Cancel payment result</param> public void Void(Order order, ref CancelPaymentResult cancelPaymentResult) { InitSettings(); string transactionID = cancelPaymentResult.AuthorizationTransactionId; if (String.IsNullOrEmpty(transactionID)) { transactionID = cancelPaymentResult.CaptureTransactionId; } DoVoidReq req = new DoVoidReq(); req.DoVoidRequest = new DoVoidRequestType(); req.DoVoidRequest.Version = this.APIVersion; req.DoVoidRequest.AuthorizationID = transactionID; DoVoidResponseType response = service2.DoVoid(req); string error = string.Empty; bool Success = PaypalHelper.CheckSuccess(response, out error); if (Success) { cancelPaymentResult.PaymentStatus = PaymentStatusEnum.Voided; //cancelPaymentResult.VoidTransactionID = response.RefundTransactionID; } else { cancelPaymentResult.Error = error; } }
/// <summary> /// Voids a payment /// </summary> /// <param name="voidPaymentRequest">Request</param> /// <returns>Result</returns> public VoidPaymentResult Void(VoidPaymentRequest voidPaymentRequest) { var result = new VoidPaymentResult(); string transactionId = voidPaymentRequest.Order.AuthorizationTransactionId; if (String.IsNullOrEmpty(transactionId)) { transactionId = voidPaymentRequest.Order.CaptureTransactionId; } var req = new DoVoidReq(); req.DoVoidRequest = new DoVoidRequestType(); req.DoVoidRequest.Version = GetApiVersion(); req.DoVoidRequest.AuthorizationID = transactionId; var service = GetService(); DoVoidResponseType response = service.DoVoid(req); string error; bool success = PaypalHelper.CheckSuccess(response, out error); if (success) { result.NewPaymentStatus = PaymentStatus.Voided; //result.VoidTransactionID = response.RefundTransactionID; } else { result.AddError(error); } return(result); }
public bool Void(MerchantTribe.Payment.Transaction t, MerchantTribeApplication app) { PayPalAPI ppAPI = Utilities.PaypalExpressUtilities.GetPaypalAPI(app.CurrentStore); try { if (t.PreviousTransactionNumber != null) { DoVoidResponseType voidResponse = ppAPI.DoVoid(t.PreviousTransactionNumber, "Transaction Voided"); if ((voidResponse.Ack == AckCodeType.Success) || (voidResponse.Ack == AckCodeType.SuccessWithWarning)) { t.Result.Succeeded = true; t.Result.Messages.Add(new MerchantTribe.Payment.Message("PayPal Express Payment Voided Successfully.", "OK", MerchantTribe.Payment.MessageType.Information)); return(true); } else { t.Result.Succeeded = false; t.Result.Messages.Add(new MerchantTribe.Payment.Message("Paypal Express Payment Void Failed.", "", MerchantTribe.Payment.MessageType.Error)); foreach (ErrorType ppError in voidResponse.Errors) { t.Result.Messages.Add(new MerchantTribe.Payment.Message(ppError.LongMessage, ppError.ErrorCode, MerchantTribe.Payment.MessageType.Error)); } return(false); } } } finally { ppAPI = null; } return(false); }
private void Void(Transaction t) { PayPalAPI ppAPI = this.GetPaypalAPI(); try { DoVoidResponseType voidResponse = ppAPI.DoVoid(t.PreviousTransactionNumber, "Transaction Voided"); if ((voidResponse.Ack == AckCodeType.Success) || (voidResponse.Ack == AckCodeType.SuccessWithWarning)) { t.Result.Succeeded = true; } else { t.Result.Messages.Add(new Message("Paypal Payment Void Failed.", "", MessageType.Warning)); foreach (ErrorType ppError in voidResponse.Errors) { t.Result.Messages.Add(new Message(ppError.LongMessage, ppError.ErrorCode, MessageType.Error)); } t.Result.Succeeded = false; } } finally { ppAPI = null; } }
public void DoVoid() { DoVoidSample sample = new DoVoidSample(); DoVoidResponseType responseDoVoidResponseType = sample.DoVoidAPIOperation(); Assert.IsNotNull(responseDoVoidResponseType); // Please change the sample inputs according to the documentation in the sample for the following assertion: // Assert.AreEqual(responseDoVoidResponseType.Ack.ToString().ToUpper(), "SUCCESS"); }
/// <summary> /// Voids a payment /// </summary> /// <param name="voidPaymentRequest">Request</param> /// <returns>Result</returns> public VoidPaymentResult Void(VoidPaymentRequest voidPaymentRequest) { var result = new VoidPaymentResult(); string transactionId = voidPaymentRequest.Order.AuthorizationTransactionId; if (String.IsNullOrEmpty(transactionId)) { transactionId = voidPaymentRequest.Order.CaptureTransactionId; } var req = new DoVoidReq(); req.DoVoidRequest = new DoVoidRequestType(); req.DoVoidRequest.Version = GetApiVersion(); req.DoVoidRequest.AuthorizationID = transactionId; using (var service2 = new PayPalAPIAASoapBinding()) { if (!_paypalDirectPaymentSettings.UseSandbox) { service2.Url = "https://api-3t.paypal.com/2.0/"; } else { service2.Url = "https://api-3t.sandbox.paypal.com/2.0/"; } service2.RequesterCredentials = new CustomSecurityHeaderType(); service2.RequesterCredentials.Credentials = new UserIdPasswordType(); service2.RequesterCredentials.Credentials.Username = _paypalDirectPaymentSettings.ApiAccountName; service2.RequesterCredentials.Credentials.Password = _paypalDirectPaymentSettings.ApiAccountPassword; service2.RequesterCredentials.Credentials.Signature = _paypalDirectPaymentSettings.Signature; service2.RequesterCredentials.Credentials.Subject = ""; DoVoidResponseType response = service2.DoVoid(req); string error = ""; bool success = PaypalHelper.CheckSuccess(response, out error); if (success) { result.NewPaymentStatus = PaymentStatus.Voided; //result.VoidTransactionID = response.RefundTransactionID; } else { result.AddError(error); } } return(result); }
/// <summary> /// Voids a payment /// </summary> /// <param name="voidPaymentRequest">Request</param> /// <returns>Result</returns> public override VoidPaymentResult Void(VoidPaymentRequest request) { var result = new VoidPaymentResult() { NewPaymentStatus = request.Order.PaymentStatus }; string transactionId = request.Order.AuthorizationTransactionId; var settings = CommonServices.Settings.LoadSetting <TSetting>(request.Order.StoreId); if (String.IsNullOrEmpty(transactionId)) { transactionId = request.Order.CaptureTransactionId; } var req = new DoVoidReq(); req.DoVoidRequest = new DoVoidRequestType(); req.DoVoidRequest.Version = PayPalHelper.GetApiVersion(); req.DoVoidRequest.AuthorizationID = transactionId; using (var service = new PayPalAPIAASoapBinding()) { service.Url = PayPalHelper.GetPaypalServiceUrl(settings); service.RequesterCredentials = PayPalHelper.GetPaypalApiCredentials(settings); DoVoidResponseType response = service.DoVoid(req); string error = ""; bool success = PayPalHelper.CheckSuccess(_helper, response, out error); if (success) { result.NewPaymentStatus = PaymentStatus.Voided; //result.VoidTransactionID = response.RefundTransactionID; } else { result.AddError(error); } } return(result); }
protected void Submit_Click(object sender, EventArgs e) { // Create request object DoVoidRequestType request = new DoVoidRequestType(); // (Required) Original authorization ID specifying the authorization to void or, to void an order, the order ID. // Important: If you are voiding a transaction that has been reauthorized, use the ID from the original authorization, and not the reauthorization. request.AuthorizationID = authorizationId.Value; // (Optional) Informational note about this void that is displayed to the buyer in email and in their transaction history. if (note.Value != string.Empty) { request.Note = note.Value; } // Invoke the API DoVoidReq wrapper = new DoVoidReq(); wrapper.DoVoidRequest = request; // Configuration map containing signature credentials and other required configuration. // For a full list of configuration parameters refer in wiki page // [https://github.com/paypal/sdk-core-dotnet/wiki/SDK-Configuration-Parameters] Dictionary <string, string> configurationMap = Configuration.GetAcctAndConfig(); // Create the PayPalAPIInterfaceServiceService service object to make the API call PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService(configurationMap); // # API call // Invoke the DoVoid method in service wrapper object DoVoidResponseType doVoidResponse = service.DoVoid(wrapper); // Check for API return status setKeyResponseObjects(service, doVoidResponse); }
protected void Submit_Click(object sender, EventArgs e) { // Create request object DoVoidRequestType request = new DoVoidRequestType(); request.AuthorizationID = authorizationId.Value; if (note.Value != "") { request.Note = note.Value; } // Invoke the API DoVoidReq wrapper = new DoVoidReq(); wrapper.DoVoidRequest = request; PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService(); DoVoidResponseType doVoidResponse = service.DoVoid(wrapper); // Check for API return status setKeyResponseObjects(service, doVoidResponse); }
//#DoVoid API Operation //#Void an order or an authorization. public DoVoidResponseType DoVoidAPIOperation() { // Create the DoVoidResponseType object DoVoidResponseType responseDoVoidResponseType = new DoVoidResponseType(); try { // Create the DoVoidReq object DoVoidReq doVoid = new DoVoidReq(); // DoVoidRequest which takes mandatory params: // // * `Authorization ID` - Original authorization ID specifying the // authorization to void or, to void an order, the order ID. // `Important: // If you are voiding a transaction that has been reauthorized, use the // ID from the original authorization, and not the reauthorization.` DoVoidRequestType doVoidRequest = new DoVoidRequestType("9B2288061E685550E"); doVoid.DoVoidRequest = doVoidRequest; // Create the service wrapper object to make the API call PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService(); // # API call // Invoke the DoVoid method in service wrapper object responseDoVoidResponseType = service.DoVoid(doVoid); if (responseDoVoidResponseType != null) { // Response envelope acknowledgement string acknowledgement = "DoVoid API Operation - "; acknowledgement += responseDoVoidResponseType.Ack.ToString(); logger.Info(acknowledgement + "\n"); Console.WriteLine(acknowledgement + "\n"); // # Success values if (responseDoVoidResponseType.Ack.ToString().Trim().ToUpper().Equals("SUCCESS")) { // Authorization identification number you specified in the request logger.Info("Authorization ID : " + responseDoVoidResponseType.AuthorizationID + "\n"); Console.WriteLine("Authorization ID : " + responseDoVoidResponseType.AuthorizationID + "\n"); } // # Error Values else { List <ErrorType> errorMessages = responseDoVoidResponseType.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(responseDoVoidResponseType); }