/// <summary> /// Cancels a recurring payment /// </summary> /// <param name="cancelPaymentRequest">Request</param> /// <returns>Result</returns> public CancelRecurringPaymentResult CancelRecurringPayment(CancelRecurringPaymentRequest cancelPaymentRequest) { var result = new CancelRecurringPaymentResult(); PrepareAuthorizeNet(); var request = new ARBCancelSubscriptionRequest { subscriptionId = cancelPaymentRequest.Order.SubscriptionTransactionId }; var controller = new ARBCancelSubscriptionController(request); controller.Execute(); var response = controller.GetApiResponse(); //validate if (response != null && response.messages.resultCode == messageTypeEnum.Ok) { return(result); } if (response != null) { foreach (var responseMessage in response.messages.message) { result.AddError(string.Format("Error processing recurring payment #{0}: {1}", responseMessage.code, responseMessage.text)); } } else { result.AddError("Authorize.NET unknown error"); } return(result); }
public static void Run(String ApiLoginID, String ApiTransactionKey) { Console.WriteLine("Cancel Subscription Sample"); ApiOperationBase<ANetApiRequest, ANetApiResponse>.RunEnvironment = AuthorizeNet.Environment.SANDBOX; ApiOperationBase<ANetApiRequest, ANetApiResponse>.MerchantAuthentication = new merchantAuthenticationType() { name = ApiLoginID, ItemElementName = ItemChoiceType.transactionKey, Item = ApiTransactionKey, }; //Please change the subscriptionId according to your request var request = new ARBCancelSubscriptionRequest { subscriptionId = "100748" }; var controller = new ARBCancelSubscriptionController(request); // instantiate the contoller that will call the service controller.Execute(); ARBCancelSubscriptionResponse response = controller.GetApiResponse(); // get the response from the service (errors contained if any) //validate if (response != null && response.messages.resultCode == messageTypeEnum.Ok) { if (response != null && response.messages.message != null) { Console.WriteLine("Success, Subscription Cancelled With RefID : " + response.refId); } } else { Console.WriteLine("Error: " + response.messages.message[0].code + " " + response.messages.message[0].text); } }
public void cancelSub() { ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = AuthorizeNet.Environment.SANDBOX; ApiOperationBase <ANetApiRequest, ANetApiResponse> .MerchantAuthentication = new merchantAuthenticationType() { name = ApiLoginID, ItemElementName = ItemChoiceType.transactionKey, Item = ApiTransactionKey, }; //Please change the subscriptionId according to your request var request = new ARBCancelSubscriptionRequest { subscriptionId = CreateSubscription.SubId }; var controller = new ARBCancelSubscriptionController(request); // instantiate the contoller that will call the service controller.Execute(); ARBCancelSubscriptionResponse response = controller.GetApiResponse(); // get the response from the service (errors contained if any) //validate if (response != null && response.messages.resultCode == messageTypeEnum.Ok) { if (response != null && response.messages.message != null) { Debug.WriteLine("Success, Subscription Cancelled With RefID : " + response.refId); } } else { Debug.WriteLine("Error:with cancel " + response.messages.message[0].code + " " + response.messages.message[0].text); } }
public void ARBGetSubscriptionSampleTest() { LogHelper.info(Logger, "Sample GetSubscriptionList"); ApiOperationBase <ANetApiRequest, ANetApiResponse> .MerchantAuthentication = CustomMerchantAuthenticationType; ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = TestEnvironment; //create a subscription var createRequest = new ARBCreateSubscriptionRequest { refId = RefId, subscription = ArbSubscriptionOne, }; var createController = new ARBCreateSubscriptionController(createRequest); createController.Execute(); var createResponse = createController.GetApiResponse(); Assert.IsNotNull(createResponse.subscriptionId); LogHelper.info(Logger, "Created Subscription: {0}", createResponse.subscriptionId); var subscriptionId = createResponse.subscriptionId; //get subscription details var getRequest = new ARBGetSubscriptionRequest { refId = RefId, subscriptionId = subscriptionId }; var getController = new ARBGetSubscriptionController(getRequest); var getResponse = getController.ExecuteWithApiResponse(); Assert.IsNotNull(getResponse.subscription); Logger.info(String.Format("Subscription Name : {0}", getResponse.subscription.name)); Assert.AreEqual(ArbSubscriptionOne.name, getResponse.subscription.name); Assert.AreEqual(ArbSubscriptionOne.amountSpecified, getResponse.subscription.amountSpecified); //cancel subscription var cancelRequest = new ARBCancelSubscriptionRequest { merchantAuthentication = CustomMerchantAuthenticationType, refId = RefId, subscriptionId = subscriptionId }; var cancelController = new ARBCancelSubscriptionController(cancelRequest); var cancelResponse = cancelController.ExecuteWithApiResponse(TestEnvironment); Assert.IsNotNull(cancelResponse.messages); Logger.info(String.Format("Subscription Cancelled: {0}", subscriptionId)); }
public static void Run(String ApiLoginID, String ApiTransactionKey) { Console.WriteLine("Cancel Subscription Sample"); ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = AuthorizeNet.Environment.SANDBOX; ApiOperationBase <ANetApiRequest, ANetApiResponse> .MerchantAuthentication = new merchantAuthenticationType() { name = ApiLoginID, ItemElementName = ItemChoiceType.transactionKey, Item = ApiTransactionKey, }; //Enter the valid SubscriptionId you want to cancel var request = new ARBCancelSubscriptionRequest { subscriptionId = "2787902" }; var controller = new ARBCancelSubscriptionController(request); // instantiate the contoller that will call the service controller.Execute(); ARBCancelSubscriptionResponse response = controller.GetApiResponse(); // get the response from the service (errors contained if any) //validate if (response != null && response.messages.resultCode == messageTypeEnum.Ok) { if (response != null && response.messages.message != null) { Console.WriteLine("Success, Subscription Cancelled With RefID : " + response.refId); } } else { Console.WriteLine("Error: " + response.messages.message[0].code + " " + response.messages.message[0].text); } }
public void SampleCodeGetSubscriptionList() { LogHelper.info(Logger, "Sample GetSubscriptionList"); ApiOperationBase <ANetApiRequest, ANetApiResponse> .MerchantAuthentication = CustomMerchantAuthenticationType; ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = TestEnvironment; //create a subscription var createRequest = new ARBCreateSubscriptionRequest { refId = RefId, subscription = ArbSubscriptionOne, }; var createController = new ARBCreateSubscriptionController(createRequest); createController.RequestId = Guid.NewGuid(); createController.Execute(); var createResponse = createController.GetApiResponse(); Assert.IsNotNull(createResponse.subscriptionId); LogHelper.info(Logger, "Created Subscription: {0}", createResponse.subscriptionId); var subscriptionId = createResponse.subscriptionId; //get subscription details var getRequest = new ARBGetSubscriptionStatusRequest { refId = RefId, subscriptionId = subscriptionId }; var getController = new ARBGetSubscriptionStatusController(getRequest); var getResponse = getController.ExecuteWithApiResponse(); Assert.IsNotNull(getResponse.status); Logger.info(String.Format("Subscription Status: {0}", getResponse.status)); //get subscription list that contains only the subscription created above. var listRequest = new ARBGetSubscriptionListRequest { refId = RefId, searchType = ARBGetSubscriptionListSearchTypeEnum.subscriptionActive, sorting = new ARBGetSubscriptionListSorting { orderDescending = true, orderBy = ARBGetSubscriptionListOrderFieldEnum.createTimeStampUTC, }, paging = new Paging { limit = 500, offset = 1, }, }; var listController = new ARBGetSubscriptionListController(listRequest); var listResponse = listController.ExecuteWithApiResponse(); LogHelper.info(Logger, "Subscription Count: {0}", listResponse.totalNumInResultSet); Assert.IsTrue(0 < listResponse.totalNumInResultSet); //validation of list var subscriptionsArray = listResponse.subscriptionDetails; foreach (var aSubscription in subscriptionsArray) { Assert.IsTrue(0 < aSubscription.id); LogHelper.info(Logger, "Subscription Id: {0}, Status:{1}, PaymentMethod: {2}, Amount: {3}, Account:{4}", aSubscription.id, aSubscription.status, aSubscription.paymentMethod, aSubscription.amount, aSubscription.accountNumber); } //cancel subscription var cancelRequest = new ARBCancelSubscriptionRequest { merchantAuthentication = CustomMerchantAuthenticationType, refId = RefId, subscriptionId = subscriptionId }; var cancelController = new ARBCancelSubscriptionController(cancelRequest); var cancelResponse = cancelController.ExecuteWithApiResponse(TestEnvironment); Assert.IsNotNull(cancelResponse.messages); Logger.info(String.Format("Subscription Cancelled: {0}", subscriptionId)); }
public async Task <ITransactionResponse> CancelSubscription(string subscriptionId) { var transactionResponse = new TransactionResponse(); var task = Task.Run(() => { if (Convert.ToBoolean(string.IsNullOrEmpty(ConfigurationManager.AppSettings["AuthNetIsProduction"]) ? "false" : ConfigurationManager.AppSettings["AuthNetIsProduction"])) { ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = AuthorizeNet.Environment.PRODUCTION; } else { ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = AuthorizeNet.Environment.SANDBOX; } // define the merchant information (authentication / transaction id) ApiOperationBase <ANetApiRequest, ANetApiResponse> .MerchantAuthentication = new merchantAuthenticationType() { name = ApiLoginID, ItemElementName = ItemChoiceType.transactionKey, Item = ApiTransactionKey, }; var request = new ARBCancelSubscriptionRequest { subscriptionId = subscriptionId }; var controller = new ARBCancelSubscriptionController(request); // instantiate the contoller that will call the service controller.Execute(); // get the response from the service (errors contained if any) var response = controller.GetApiResponse(); //validate if (response != null && response.messages.resultCode == messageTypeEnum.Ok) { if (response != null && response.messages.message != null) { System.Diagnostics.Debug.WriteLine("Success, Subscription Cancelled"); transactionResponse.Errors = null; transactionResponse.IsSuccess = true; transactionResponse.Messages = null; } else { transactionResponse.IsSuccess = false; } } else if (response != null && response.messages.message != null) { transactionResponse.IsSuccess = false; System.Diagnostics.Debug.WriteLine("Error: " + response.messages.message[0].code + " " + response.messages.message[0].text); transactionResponse.Messages = new TransactionResponseMessage[] { new TransactionResponseMessage() { Code = response.messages.message[0].code, Description = response.messages.message[0].text } }; } return(response); }); await task; return(transactionResponse); }
//public static ANetApiResponse Run(String ApiLoginID, String ApiTransactionKey, string subscriptionId) //{ // Console.WriteLine("Cancel Subscription Sample"); // ApiOperationBase<ANetApiRequest, ANetApiResponse>.RunEnvironment = AuthorizeNET.Environment.SANDBOX; // ApiOperationBase<ANetApiRequest, ANetApiResponse>.MerchantAuthentication = new merchantAuthenticationType() // { // name = ApiLoginID, // ItemElementName = ItemChoiceType.transactionKey, // Item = ApiTransactionKey, // }; // //Please change the subscriptionId according to your request // var request = new ARBCancelSubscriptionRequest { subscriptionId = subscriptionId }; // var controller = new ARBCancelSubscriptionController(request); // instantiate the contoller that will call the service // controller.Execute(); // ARBCancelSubscriptionResponse response = controller.GetApiResponse(); // get the response from the service (errors contained if any) // //validate // if (response != null && response.messages.resultCode == messageTypeEnum.Ok) // { // if (response != null && response.messages.message != null) // { // Console.WriteLine("Success, Subscription Cancelled With RefID : " + response.refId); // } // } // else if(response != null) // { // Console.WriteLine("Error: " + response.messages.message[0].code + " " + response.messages.message[0].text); // } // return response; //} public static void CancelSubscriptionExec(String ApiLoginID, String ApiTransactionKey) { using (CsvReader csv = new CsvReader(new StreamReader(new FileStream(@"../../../CSV_DATA/CancleASubscription.csv", FileMode.Open)), true)) { Console.WriteLine("Cancel Subscription Sample"); int flag = 0; int fieldCount = csv.FieldCount; string[] headers = csv.GetFieldHeaders(); //Append Data var item1 = DataAppend.ReadPrevData(); using (CsvFileWriter writer = new CsvFileWriter(new FileStream(@"../../../CSV_DATA/Outputfile.csv", FileMode.Open))) { while (csv.ReadNextRecord()) { // Create Instance of Customer Api ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = AuthorizeNET.Environment.SANDBOX; // define the merchant information (authentication / transaction id) ApiOperationBase <ANetApiRequest, ANetApiResponse> .MerchantAuthentication = new merchantAuthenticationType() { name = ApiLoginID, ItemElementName = ItemChoiceType.transactionKey, Item = ApiTransactionKey, }; string subscriptionId = null; string TestCase_Id = null; for (int i = 0; i < fieldCount; i++) { switch (headers[i]) { case "subscriptionId": subscriptionId = csv[i]; break; case "TestCase_Id": TestCase_Id = csv[i]; break; default: break; } } //Write to output file CsvRow row = new CsvRow(); try { if (flag == 0) { row.Add("TestCaseId"); row.Add("APIName"); row.Add("Status"); row.Add("TimeStamp"); writer.WriteRow(row); flag = flag + 1; //Append Data foreach (var item in item1) { writer.WriteRow(item); } } var request = new ARBCancelSubscriptionRequest { subscriptionId = subscriptionId }; var controller = new ARBCancelSubscriptionController(request); // instantiate the contoller that will call the service controller.Execute(); ARBCancelSubscriptionResponse response = controller.GetApiResponse(); // get the response from the service (errors contained if any) if (response != null && response.messages.resultCode == messageTypeEnum.Ok && response.messages.message != null) { try { //Assert.AreEqual(response.Id, customerProfileId); Console.WriteLine("Assertion Succeed! Valid CustomerId fetched."); CsvRow row1 = new CsvRow(); row1.Add("CAS_00" + flag.ToString()); row1.Add("CancleASubscription"); row1.Add("Pass"); row1.Add(DateTime.Now.ToString("yyyy/MM/dd" + "::" + "HH:mm:ss:fff")); writer.WriteRow(row1); // Console.WriteLine("Success " + TestcaseID + " CustomerID : " + response.Id); flag = flag + 1; Console.WriteLine("Success, Subscription Cancelled With RefID : " + response.refId); } catch { CsvRow row1 = new CsvRow(); row1.Add("CAS_00" + flag.ToString()); row1.Add("CancleASubscription"); row1.Add("Assertion Failed!"); row1.Add(DateTime.Now.ToString("yyyy/MM/dd" + "::" + "HH:mm:ss:fff")); writer.WriteRow(row1); Console.WriteLine("Assertion Failed! Invalid CustomerId fetched."); flag = flag + 1; } } else { CsvRow row1 = new CsvRow(); row1.Add("CAS_00" + flag.ToString()); row1.Add("CancleASubscription"); row1.Add("Fail"); row1.Add(DateTime.Now.ToString("yyyy/MM/dd" + "::" + "HH:mm:ss:fff")); writer.WriteRow(row1); //Console.WriteLine("Assertion Failed! Invalid CustomerId fetched."); flag = flag + 1; } } catch (Exception e) { CsvRow row2 = new CsvRow(); row2.Add("CAS_00" + flag.ToString()); row2.Add("CancleASubscription"); row2.Add("Fail"); row2.Add(DateTime.Now.ToString("yyyy/MM/dd" + "::" + "HH:mm:ss:fff")); writer.WriteRow(row2); flag = flag + 1; Console.WriteLine(TestCase_Id + " Error Message " + e.Message); } } } } }
public void SampleCodeGetSubscriptionList() { LogHelper.info(Logger, "Sample GetSubscriptionList"); ApiOperationBase<ANetApiRequest, ANetApiResponse>.MerchantAuthentication = CustomMerchantAuthenticationType; ApiOperationBase<ANetApiRequest, ANetApiResponse>.RunEnvironment = TestEnvironment; //create a subscription var createRequest = new ARBCreateSubscriptionRequest { refId = RefId, subscription = ArbSubscriptionOne, }; var createController = new ARBCreateSubscriptionController(createRequest); createController.Execute(); var createResponse = createController.GetApiResponse(); Assert.IsNotNull(createResponse.subscriptionId); LogHelper.info(Logger, "Created Subscription: {0}", createResponse.subscriptionId); var subscriptionId = createResponse.subscriptionId; //get subscription details var getRequest = new ARBGetSubscriptionStatusRequest { refId = RefId, subscriptionId = subscriptionId }; var getController = new ARBGetSubscriptionStatusController(getRequest); var getResponse = getController.ExecuteWithApiResponse(); Assert.IsNotNull(getResponse.status); Logger.info(String.Format("Subscription Status: {0}", getResponse.status)); //get subscription list that contains only the subscription created above. var listRequest = new ARBGetSubscriptionListRequest { refId = RefId, searchType = ARBGetSubscriptionListSearchTypeEnum.subscriptionActive, sorting = new ARBGetSubscriptionListSorting { orderDescending = true, orderBy = ARBGetSubscriptionListOrderFieldEnum.createTimeStampUTC, }, paging = new Paging { limit = 500, offset = 1, }, }; var listController = new ARBGetSubscriptionListController(listRequest); var listResponse = listController.ExecuteWithApiResponse(); LogHelper.info(Logger, "Subscription Count: {0}", listResponse.totalNumInResultSet); Assert.IsTrue(0 < listResponse.totalNumInResultSet); //validation of list var subscriptionsArray = listResponse.subscriptionDetails; foreach (var aSubscription in subscriptionsArray) { Assert.IsTrue(0 < aSubscription.id); LogHelper.info(Logger, "Subscription Id: {0}, Status:{1}, PaymentMethod: {2}, Amount: {3}, Account:{4}", aSubscription.id, aSubscription.status, aSubscription.paymentMethod, aSubscription.amount, aSubscription.accountNumber); } //cancel subscription var cancelRequest = new ARBCancelSubscriptionRequest { merchantAuthentication = CustomMerchantAuthenticationType, refId = RefId, subscriptionId = subscriptionId }; var cancelController = new ARBCancelSubscriptionController(cancelRequest); var cancelResponse = cancelController.ExecuteWithApiResponse(TestEnvironment); Assert.IsNotNull(cancelResponse.messages); Logger.info(String.Format("Subscription Cancelled: {0}", subscriptionId)); }
public void ARBGetSubscriptionSampleTest() { LogHelper.info(Logger, "Sample GetSubscriptionList"); ApiOperationBase<ANetApiRequest, ANetApiResponse>.MerchantAuthentication = CustomMerchantAuthenticationType; ApiOperationBase<ANetApiRequest, ANetApiResponse>.RunEnvironment = TestEnvironment; //create a subscription var createRequest = new ARBCreateSubscriptionRequest { refId = RefId, subscription = ArbSubscriptionOne, }; var createController = new ARBCreateSubscriptionController(createRequest); createController.Execute(); var createResponse = createController.GetApiResponse(); Assert.IsNotNull(createResponse.subscriptionId); LogHelper.info(Logger, "Created Subscription: {0}", createResponse.subscriptionId); var subscriptionId = createResponse.subscriptionId; //get subscription details var getRequest = new ARBGetSubscriptionRequest { refId = RefId, subscriptionId = subscriptionId }; var getController = new ARBGetSubscriptionController(getRequest); var getResponse = getController.ExecuteWithApiResponse(); Assert.IsNotNull(getResponse.subscription); Logger.info(String.Format("Subscription Name : {0}", getResponse.subscription.name)); Assert.AreEqual(ArbSubscriptionOne.name, getResponse.subscription.name); Assert.AreEqual(ArbSubscriptionOne.amountSpecified, getResponse.subscription.amountSpecified); //cancel subscription var cancelRequest = new ARBCancelSubscriptionRequest { merchantAuthentication = CustomMerchantAuthenticationType, refId = RefId, subscriptionId = subscriptionId }; var cancelController = new ARBCancelSubscriptionController(cancelRequest); var cancelResponse = cancelController.ExecuteWithApiResponse(TestEnvironment); Assert.IsNotNull(cancelResponse.messages); Logger.info(String.Format("Subscription Cancelled: {0}", subscriptionId)); }