public static AuthorizeNetResponse CreatePaymentProfileForCustomerFromTransaction(string transactionId, string customerProfileId, bool simulation = false) { AuthorizeNetResponse finalResponse = new AuthorizeNetResponse(); try { InitEnvironmentAndAccount(simulation); var request = new createCustomerProfileFromTransactionRequest { transId = transactionId, // You can either specify the customer information in form of customerProfileBaseType object //customer = customerProfile // OR // You can just provide the customer Profile ID customerProfileId = customerProfileId, }; System.Net.ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; // .net3.5沒有Tls12 var controller = new createCustomerProfileFromTransactionController(request); controller.Execute(); createCustomerProfileResponse response = controller.GetApiResponse(); finalResponse = ParseResponse(response); } catch (Exception ex) { finalResponse = GenerateExceptionResponse(ex.Message); } return(finalResponse); }
public static ANetApiResponse Run(string ApiLoginID, string ApiTransactionKey, string transactionId) { Console.WriteLine("CreateCustomerProfileFromTransaction Sample"); ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = AuthorizeNET.Environment.SANDBOX; ApiOperationBase <ANetApiRequest, ANetApiResponse> .MerchantAuthentication = new merchantAuthenticationType() { name = ApiLoginID, ItemElementName = ItemChoiceType.transactionKey, Item = ApiTransactionKey, }; var customerProfile = new customerProfileBaseType { merchantCustomerId = "123212", email = "*****@*****.**", description = "This is a sample customer profile" }; var request = new createCustomerProfileFromTransactionRequest { transId = transactionId, // You can either specify the customer information in form of customerProfileBaseType object customer = customerProfile // OR // You can just provide the customer Profile ID // customerProfileId = "123343" }; var controller = new createCustomerProfileFromTransactionController(request); controller.Execute(); createCustomerProfileResponse response = controller.GetApiResponse(); //validate if (response != null && response.messages.resultCode == messageTypeEnum.Ok) { if (response != null && response.messages.message != null) { Console.WriteLine("Success, CustomerProfileID : " + response.customerProfileId); if (response.customerPaymentProfileIdList.Length > 0) { Console.WriteLine("Success, CustomerPaymentProfileID : " + response.customerPaymentProfileIdList[0]); } if (response.customerShippingAddressIdList.Length > 0) { Console.WriteLine("Success, CustomerShippingProfileID : " + response.customerShippingAddressIdList[0]); } } } else if (response != null) { Console.WriteLine("Error: " + response.messages.message[0].code + " " + response.messages.message[0].text); } return(response); }
public string GetCustomerProfile() { ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = AuthorizeNet.Environment.SANDBOX; ApiOperationBase <ANetApiRequest, ANetApiResponse> .MerchantAuthentication = new merchantAuthenticationType() { name = "35WkY7AsU", ItemElementName = ItemChoiceType.transactionKey, Item = "85T8Hsv4JMu76P5b" }; customerProfileType customerProfile = new customerProfileType(); //customerProfile.merchantCustomerId = "Test CustomerID"; customerProfile.email = "*****@*****.**"; customerProfile.description = "abc"; var request = new createCustomerProfileRequest { profile = customerProfile, validationMode = validationModeEnum.none }; // instantiate the controller that will call the service var controller = new createCustomerProfileController(request); controller.Execute(); // get the response from the service (errors contained if any) createCustomerProfileResponse response = controller.GetApiResponse(); // validate response if (response != null) { if (response.messages.resultCode == messageTypeEnum.Ok) { return(response.customerProfileId); } else { return($"{response.messages.message[0].code}+ and {response.messages.message[0].text}"); } } else { if (controller.GetErrorResponse().messages.message.Length > 0) { return($"{response.messages.message[0].code}+ and {response.messages.message[0].text}"); } else { return($"Profile created failed"); } } }
private static AuthorizeNetResponse ParseResponse(createCustomerProfileResponse response) { AuthorizeNetResponse finalResponse = new AuthorizeNetResponse(); // validate response if (response != null) { if (response.messages.resultCode == messageTypeEnum.Ok) { if (response.messages.message != null) { finalResponse.Result = "Success"; finalResponse.TransactionID = "NA"; finalResponse.AuthCode = response.messages.message[0].code; finalResponse.Message = response.messages.message[0].text; if (response.customerProfileId != null) { finalResponse.CustomerProfileId = response.customerProfileId; } } else { finalResponse.Result = "Fail"; finalResponse.TransactionID = "NA"; finalResponse.AuthCode = "NA"; finalResponse.Message = "NA"; } } else { finalResponse.Result = "Fail"; finalResponse.TransactionID = "NA"; finalResponse.AuthCode = response.messages.message[0].code; finalResponse.Message = response.messages.message[0].text; } } else { finalResponse.Result = "Fail"; finalResponse.TransactionID = "NA"; finalResponse.AuthCode = "NA"; finalResponse.Message = "Null Response."; } return(finalResponse); }
public static void Run(string apiLoginId, string apiTransactionKey) { Console.WriteLine("CreateCustomerProfileFromTransaction Sample"); ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = AuthorizeNet.Environment.SANDBOX; ApiOperationBase <ANetApiRequest, ANetApiResponse> .MerchantAuthentication = new merchantAuthenticationType() { name = apiLoginId, ItemElementName = ItemChoiceType.transactionKey, Item = apiTransactionKey, }; var request = new createCustomerProfileFromTransactionRequest { transId = "2238147175" }; var controller = new createCustomerProfileFromTransactionController(request); controller.Execute(); createCustomerProfileResponse response = controller.GetApiResponse(); //validate if (response != null && response.messages.resultCode == messageTypeEnum.Ok) { if (response.messages.message != null) { Console.WriteLine("Success, CustomerProfileID : " + response.customerProfileId); Console.WriteLine("Success, CustomerPaymentProfileID : " + response.customerPaymentProfileIdList[0]); Console.WriteLine("Success, CustomerShippingProfileID : " + response.customerShippingAddressIdList[0]); } } else { if (response != null) { Console.WriteLine("Error: " + response.messages.message[0].code + " " + response.messages.message[0].text); } } }
public static AuthorizeNetResponse CreateCustomerProfile(string customerId, string desc, bool simulation = false) { AuthorizeNetResponse finalResponse = new AuthorizeNetResponse(); try { InitEnvironmentAndAccount(simulation); customerProfileType customerProfile = new customerProfileType(); customerProfile.merchantCustomerId = customerId; customerProfile.description = desc; var request = new createCustomerProfileRequest { profile = customerProfile, validationMode = validationModeEnum.none }; System.Net.ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; // .net3.5沒有Tls12 // instantiate the controller that will call the service var controller = new createCustomerProfileController(request); //createCustomerProfileTransactionRequest request2 = new createCustomerProfileTransactionRequest(); controller.Execute(); // get the response from the service (errors contained if any) createCustomerProfileResponse response = controller.GetApiResponse(); // validate response finalResponse = ParseResponse(response); } catch (Exception ex) { finalResponse = GenerateExceptionResponse(ex.Message); } return(finalResponse); }
public void MockcreateCustomerProfileFromTransactionTest() { //define all mocked objects as final var mockController = GetMockController <createCustomerProfileFromTransactionRequest, createCustomerProfileResponse>(); var mockRequest = new createCustomerProfileFromTransactionRequest { merchantAuthentication = new merchantAuthenticationType() { name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey }, transId = CounterStr, }; var mockResponse = new createCustomerProfileResponse { refId = "1234", sessionToken = "sessiontoken", customerProfileId = CounterStr, customerPaymentProfileIdList = new [] { CounterStr }, customerShippingAddressIdList = new [] { CounterStr }, }; var errorResponse = new ANetApiResponse(); var results = new List <String>(); const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; SetMockControllerExpectations <createCustomerProfileFromTransactionRequest, createCustomerProfileResponse, createCustomerProfileFromTransactionController>( mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); //mockController.MockObject.Execute(); // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); var controllerResponse = mockController.MockObject.GetApiResponse(); Assert.IsNotNull(controllerResponse); Assert.IsNotNull(controllerResponse.customerProfileId); LogHelper.info(Logger, "createCustomerProfileFromTransaction: Details:{0}", controllerResponse.customerProfileId); }
public static void Run(string apiLoginId, string apiTransactionKey) { Console.WriteLine("CreateCustomerProfile Sample"); ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = AuthorizeNet.Environment.SANDBOX; ApiOperationBase <ANetApiRequest, ANetApiResponse> .MerchantAuthentication = new merchantAuthenticationType() { name = apiLoginId, ItemElementName = ItemChoiceType.transactionKey, Item = apiTransactionKey, }; var creditCard = new creditCardType { cardNumber = "4111111111111111", expirationDate = "0718" }; var bankAccount = new bankAccountType { accountNumber = "0123454321", routingNumber = "000000204", accountType = bankAccountTypeEnum.checking, echeckType = echeckTypeEnum.WEB, nameOnAccount = "test", bankName = "Bank Of America" }; //standard api call to retrieve response paymentType cc = new paymentType { Item = creditCard }; paymentType echeck = new paymentType { Item = bankAccount }; List <customerPaymentProfileType> paymentProfileList = new List <customerPaymentProfileType>(); customerPaymentProfileType ccPaymentProfile = new customerPaymentProfileType(); ccPaymentProfile.payment = cc; customerPaymentProfileType echeckPaymentProfile = new customerPaymentProfileType(); echeckPaymentProfile.payment = echeck; paymentProfileList.Add(ccPaymentProfile); paymentProfileList.Add(echeckPaymentProfile); List <customerAddressType> addressInfoList = new List <customerAddressType>(); customerAddressType homeAddress = new customerAddressType(); homeAddress.address = "10900 NE 8th St"; homeAddress.city = "Seattle"; homeAddress.zip = "98006"; customerAddressType officeAddress = new customerAddressType(); officeAddress.address = "1200 148th AVE NE"; officeAddress.city = "NorthBend"; officeAddress.zip = "92101"; addressInfoList.Add(homeAddress); addressInfoList.Add(officeAddress); customerProfileType customerProfile = new customerProfileType(); customerProfile.merchantCustomerId = "Test CustomerID"; customerProfile.email = "*****@*****.**"; customerProfile.paymentProfiles = paymentProfileList.ToArray(); customerProfile.shipToList = addressInfoList.ToArray(); var request = new createCustomerProfileRequest { profile = customerProfile, validationMode = validationModeEnum.none }; var controller = new createCustomerProfileController(request); // instantiate the contoller that will call the service controller.Execute(); createCustomerProfileResponse response = controller.GetApiResponse(); // get the response from the service (errors contained if any) //validate if (response != null && response.messages.resultCode == messageTypeEnum.Ok) { if (response.messages.message != null) { Console.WriteLine("Success, CustomerProfileID : " + response.customerProfileId); Console.WriteLine("Success, CustomerPaymentProfileID : " + response.customerPaymentProfileIdList[0]); Console.WriteLine("Success, CustomerShippingProfileID : " + response.customerShippingAddressIdList[0]); } } else { if (response != null) { Console.WriteLine("Error: " + response.messages.message[0].code + " " + response.messages.message[0].text); } } }
public static ANetApiResponse Run(string ApiLoginID, string ApiTransactionKey, string emailId) { Console.WriteLine("Create Customer Profile Sample"); // set whether to use the sandbox environment, or production enviornment 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 creditCard = new creditCardType { cardNumber = "4111111111111111", expirationDate = "1018" }; var bankAccount = new bankAccountType { accountNumber = "231323342", routingNumber = "000000224", accountType = bankAccountTypeEnum.checking, echeckType = echeckTypeEnum.WEB, nameOnAccount = "test", bankName = "Bank Of America" }; // standard api call to retrieve response paymentType cc = new paymentType { Item = creditCard }; paymentType echeck = new paymentType { Item = bankAccount }; List <customerPaymentProfileType> paymentProfileList = new List <customerPaymentProfileType>(); customerPaymentProfileType ccPaymentProfile = new customerPaymentProfileType(); ccPaymentProfile.payment = cc; customerPaymentProfileType echeckPaymentProfile = new customerPaymentProfileType(); echeckPaymentProfile.payment = echeck; paymentProfileList.Add(ccPaymentProfile); paymentProfileList.Add(echeckPaymentProfile); List <customerAddressType> addressInfoList = new List <customerAddressType>(); customerAddressType homeAddress = new customerAddressType(); homeAddress.address = "10900 NE 8th St"; homeAddress.city = "Seattle"; homeAddress.zip = "98006"; customerAddressType officeAddress = new customerAddressType(); officeAddress.address = "1200 148th AVE NE"; officeAddress.city = "NorthBend"; officeAddress.zip = "92101"; addressInfoList.Add(homeAddress); addressInfoList.Add(officeAddress); customerProfileType customerProfile = new customerProfileType(); customerProfile.merchantCustomerId = "Test CustomerID"; customerProfile.email = emailId; customerProfile.paymentProfiles = paymentProfileList.ToArray(); customerProfile.shipToList = addressInfoList.ToArray(); var request = new createCustomerProfileRequest { profile = customerProfile, validationMode = validationModeEnum.none }; // instantiate the controller that will call the service var controller = new createCustomerProfileController(request); controller.Execute(); // get the response from the service (errors contained if any) createCustomerProfileResponse response = controller.GetApiResponse(); // validate response if (response != null) { if (response.messages.resultCode == messageTypeEnum.Ok) { if (response.messages.message != null) { Console.WriteLine("Success!"); Console.WriteLine("Customer Profile ID: " + response.customerProfileId); Console.WriteLine("Payment Profile ID: " + response.customerPaymentProfileIdList[0]); Console.WriteLine("Shipping Profile ID: " + response.customerShippingAddressIdList[0]); } } else { Console.WriteLine("Customer Profile Creation Failed."); Console.WriteLine("Error Code: " + response.messages.message[0].code); Console.WriteLine("Error message: " + response.messages.message[0].text); } } else { if (controller.GetErrorResponse().messages.message.Length > 0) { Console.WriteLine("Customer Profile Creation Failed."); Console.WriteLine("Error Code: " + response.messages.message[0].code); Console.WriteLine("Error message: " + response.messages.message[0].text); } else { Console.WriteLine("Null Response."); } } return(response); }
public ActionResult CreateCustProfile(Card c) { string cardnumber = c.cardnumber; string expirydate = c.expirydate; string cvv = c.cvv; Console.WriteLine("Create Customer Profile Sample"); // set whether to use the sandbox environment, or production enviornment 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 creditCard = new creditCardType { cardNumber = "4111111111111111", expirationDate = "0725" }; //var bankAccount = new bankAccountType //{ // accountNumber = "231323342", // routingNumber = "000000224", // accountType = bankAccountTypeEnum.checking, // echeckType = echeckTypeEnum.WEB, // nameOnAccount = "test", // bankName = "Bank Of America" //}; // standard api call to retrieve response paymentType cc = new paymentType { Item = creditCard }; //paymentType echeck = new paymentType { Item = bankAccount }; List <customerPaymentProfileType> paymentProfileList = new List <customerPaymentProfileType>(); customerPaymentProfileType ccPaymentProfile = new customerPaymentProfileType(); ccPaymentProfile.payment = cc; //ccPaymentProfile.defaultPaymentProfile = true; //customerPaymentProfileType echeckPaymentProfile = new customerPaymentProfileType(); //echeckPaymentProfile.payment = echeck; paymentProfileList.Add(ccPaymentProfile); //paymentProfileList.Add(echeckPaymentProfile); List <customerAddressType> addressInfoList = new List <customerAddressType>(); customerAddressType homeAddress = new customerAddressType(); homeAddress.address = "10900 NE 8th St"; homeAddress.city = "Seattle"; homeAddress.zip = "98006"; customerAddressType officeAddress = new customerAddressType(); officeAddress.address = "1200 148th AVE NE"; officeAddress.city = "NorthBend"; officeAddress.zip = "92101"; addressInfoList.Add(homeAddress); addressInfoList.Add(officeAddress); customerProfileType customerProfile = new customerProfileType(); customerProfile.merchantCustomerId = "Test parthlathiya"; customerProfile.email = Session["Email"].ToString(); customerProfile.paymentProfiles = paymentProfileList.ToArray(); customerProfile.shipToList = addressInfoList.ToArray(); var request = new createCustomerProfileRequest { profile = customerProfile, validationMode = validationModeEnum.none }; // instantiate the controller that will call the service var controller = new createCustomerProfileController(request); controller.Execute(); // get the response from the service (errors contained if any) createCustomerProfileResponse response = controller.GetApiResponse(); DAL dal = new DAL(); // validate response if (response != null) { if (response.messages.resultCode == messageTypeEnum.Ok) { if (response.messages.message != null) { ViewBag.Message = "We have stored your card details. Now you can subscribe to any channel/pack with single click."; ViewBag.Type = "success"; dal.UpdateCustProfileId(Session["Email"].ToString(), response.customerProfileId, response.customerPaymentProfileIdList[0]); //Console.WriteLine("Success!"); //Console.WriteLine("Customer Profile ID: " + response.customerProfileId); Console.WriteLine("Payment Profile ID: " + response.customerPaymentProfileIdList[0]); Console.WriteLine("Shipping Profile ID: " + response.customerShippingAddressIdList[0]); } } else { ViewBag.Message = "Customer Profile Creation Failed."; ViewBag.Type = "danger"; Console.WriteLine("Error Code: " + response.messages.message[0].code); Console.WriteLine("Error message: " + response.messages.message[0].text); } } else { if (controller.GetErrorResponse().messages.message.Length > 0) { ViewBag.Message = "Customer Profile Creation Failed."; ViewBag.Type = "danger"; Console.WriteLine("Error Code: " + response.messages.message[0].code); Console.WriteLine("Error message: " + response.messages.message[0].text); } else { Console.WriteLine("Null Response."); } } List <Channel> channelsList = dal.AllChannels(); List <Pack> packsList = dal.AllPacks(); ViewData["AllChannels"] = channelsList; ViewData["AllPacks"] = packsList; List <int> chids = new List <int>(); foreach (var ch1 in channelsList) { chids.Add(ch1.ChannelId); } List <bool> subornot = dal.issubornot(chids, Session["Email"].ToString()); ViewData["SuborNot"] = subornot; Customer c1 = dal.FetchCustomer(Session["email"].ToString()); List <int> packids = new List <int>(); foreach (var pack in packsList) { packids.Add(pack.PackId); } List <bool> subornot1 = dal.issubornot1(packids, Session["Email"].ToString()); ViewData["SuborNot1"] = subornot1; List <bool> subornot2 = dal.issubornotinanypack(chids, packids, Session["Email"].ToString()); ViewData["SuborNot2"] = subornot2; ViewData["ProfileId"] = c1.ProfileId; return(View("../Home/Welcome")); }
public async Task <ITransactionResponse> CreateCustomerProfileFromTransaction(string transactionId) { 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 createCustomerProfileFromTransactionRequest { transId = transactionId }; var controller = new createCustomerProfileFromTransactionController(request); controller.Execute(); createCustomerProfileResponse response = controller.GetApiResponse(); //validate if (response != null && response.messages.resultCode == messageTypeEnum.Ok) { if (response != null && response.messages.message != null) { System.Diagnostics.Debug.WriteLine("Success, Customer Profile ID : " + response.customerProfileId + " Customer Payment Profile ID : " + response.customerPaymentProfileIdList[0]); transactionResponse.TransId = transactionId; transactionResponse.Errors = null; transactionResponse.IsSuccess = true; transactionResponse.Messages = null; transactionResponse.CustomerProfileId = response.customerProfileId; transactionResponse.CustomerPaymentProfileId = response.customerPaymentProfileIdList[0]; } 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 void CreateCustomerProfileFromECheckTransaction() { var rnd = new AnetRandom(DateTime.Now.Millisecond); string customerIndx = rnd.Next(99999).ToString(); ApiOperationBase <ANetApiRequest, ANetApiResponse> .MerchantAuthentication = CustomMerchantAuthenticationType; ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = TestEnvironment; //set up data based on transaction var transactionAmount = SetValidTransactionAmount(Counter); var echeck = new bankAccountType { accountNumber = "123456", accountType = bankAccountTypeEnum.checking, checkNumber = "1234", bankName = "Bank of Seattle", routingNumber = "125000024", echeckType = echeckTypeEnum.WEB, nameOnAccount = "Joe Customer" }; //Create and submit transaction with customer info to create profile from. var paymentType = new paymentType { Item = echeck }; var transactionRequest = new transactionRequestType { transactionType = transactionTypeEnum.authOnlyTransaction.ToString(), payment = paymentType, amount = (decimal)transactionAmount, customer = new customerDataType { email = string.Format("Customer{0}@visa.com", customerIndx), taxId = string.Format("{0}{1}{2}", rnd.Next(999).ToString("000"), rnd.Next(99).ToString("00"), rnd.Next(9999).ToString("0000")) }, billTo = new customerAddressType { firstName = "New", lastName = string.Format("Customer{0}", customerIndx), company = "New Company", address = "1234 Sample St NE", city = "Bellevue", state = "WA", zip = "98001" }, shipTo = new customerAddressType { firstName = "New", lastName = string.Format("Customer{0}", customerIndx), company = "New Company", address = "1234 Sample St NE", city = "Bellevue", state = "WA", zip = "98001" } }; var request = new createTransactionRequest { transactionRequest = transactionRequest }; var controller = new createTransactionController(request); controller.Execute(); var response = controller.GetApiResponse(); //Verify that transaction was accepted and save the transaction ID Assert.AreEqual(messageTypeEnum.Ok, response.messages.resultCode); string txnID = response.transactionResponse.transId; //Build and submit request to create Customer Profile based on the accepted transaction createCustomerProfileFromTransactionRequest profileFromTransReq = new createCustomerProfileFromTransactionRequest(); profileFromTransReq.transId = txnID; createCustomerProfileFromTransactionController profileFromTrxnController = new createCustomerProfileFromTransactionController(profileFromTransReq); profileFromTrxnController.Execute(); createCustomerProfileResponse createProfResp = profileFromTrxnController.GetApiResponse(); Assert.AreEqual(messageTypeEnum.Ok, createProfResp.messages.resultCode); //Get customer profile and verify that profile data matches the data submitted with the transaction getCustomerProfileRequest profileReq = new getCustomerProfileRequest { customerProfileId = createProfResp.customerProfileId }; getCustomerProfileController getCustContr = new getCustomerProfileController(profileReq); getCustContr.Execute(); var getCustResp = getCustContr.GetApiResponse(); //validate Assert.AreEqual("1", response.transactionResponse.messages[0].code); }
//public static ANetApiResponse Run(string ApiLoginID, string ApiTransactionKey, string emailId) //{ // Console.WriteLine("CreateCustomerProfile Sample"); // ApiOperationBase<ANetApiRequest, ANetApiResponse>.RunEnvironment = AuthorizeNET.Environment.SANDBOX; // ApiOperationBase<ANetApiRequest, ANetApiResponse>.MerchantAuthentication = new merchantAuthenticationType() // { // name = ApiLoginID, // ItemElementName = ItemChoiceType.transactionKey, // Item = ApiTransactionKey, // }; // var creditCard = new creditCardType // { // cardNumber = "4111111111111111", // expirationDate = "0718" // }; // var bankAccount = new bankAccountType // { // accountNumber = "231323342", // routingNumber = "000000224", // accountType = bankAccountTypeEnum.checking, // echeckType = echeckTypeEnum.WEB, // nameOnAccount = "test", // bankName = "Bank Of America" // }; // //standard api call to retrieve response // paymentType cc = new paymentType { Item = creditCard }; // paymentType echeck = new paymentType {Item = bankAccount}; // List<customerPaymentProfileType> paymentProfileList = new List<customerPaymentProfileType>(); // customerPaymentProfileType ccPaymentProfile = new customerPaymentProfileType(); // ccPaymentProfile.payment = cc; // customerPaymentProfileType echeckPaymentProfile = new customerPaymentProfileType(); // echeckPaymentProfile.payment = echeck; // paymentProfileList.Add(ccPaymentProfile); // paymentProfileList.Add(echeckPaymentProfile); // List<customerAddressType> addressInfoList = new List<customerAddressType>(); // customerAddressType homeAddress = new customerAddressType(); // homeAddress.address = "10900 NE 8th St"; // homeAddress.city = "Seattle"; // homeAddress.zip = "98006"; // customerAddressType officeAddress = new customerAddressType(); // officeAddress.address = "1200 148th AVE NE"; // officeAddress.city = "NorthBend"; // officeAddress.zip = "92101"; // addressInfoList.Add(homeAddress); // addressInfoList.Add(officeAddress); // customerProfileType customerProfile = new customerProfileType(); // customerProfile.merchantCustomerId = "Test CustomerID"; // customerProfile.email = emailId; // customerProfile.paymentProfiles = paymentProfileList.ToArray(); // customerProfile.shipToList = addressInfoList.ToArray(); // var request = new createCustomerProfileRequest{ profile = customerProfile, validationMode = validationModeEnum.none}; // var controller = new createCustomerProfileController(request); // instantiate the contoller that will call the service // controller.Execute(); // createCustomerProfileResponse 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, CustomerProfileID : " + response.customerProfileId); // Console.WriteLine("Success, CustomerPaymentProfileID : " + response.customerPaymentProfileIdList[0]); // Console.WriteLine("Success, CustomerShippingProfileID : " + response.customerShippingAddressIdList[0]); // } // } // else if(response != null ) // { // Console.WriteLine("Error: " + response.messages.message[0].code + " " + response.messages.message[0].text); // } // return response; //} public static void CreateCustomerProfileExec(String ApiLoginID, String ApiTransactionKey) { using (CsvReader csv = new CsvReader(new StreamReader(new FileStream(@"../../../CSV_DATA/CreateCustomerProfile.csv", FileMode.Open)), true)) { Console.WriteLine("CreateCustomerProfile Sample"); int fieldCount = csv.FieldCount; int flag = 0; string[] headers = csv.GetFieldHeaders(); // Writing to output CSV file //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 }; //CustomersApi instance = new CustomersApi(EnvironmentSet.Sandbox); // Customer Response Object // Customer response = null; //initialization string TestcaseID = null; string description = null; string email = null; for (int i = 0; i < fieldCount; i++) { switch (headers[i]) { case "TestcaseID": TestcaseID = csv[i]; break; case "description": description = csv[i]; break; case "email": email = 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); } } //response = instance.GetCustomer(customerId, authorization); var creditCard = new creditCardType { cardNumber = "4111111111111111", expirationDate = "0718" }; var bankAccount = new bankAccountType { accountNumber = "231323342", routingNumber = "000000224", accountType = bankAccountTypeEnum.checking, echeckType = echeckTypeEnum.WEB, nameOnAccount = "test", bankName = "Bank Of America" }; //standard api call to retrieve response paymentType cc = new paymentType { Item = creditCard }; paymentType echeck = new paymentType { Item = bankAccount }; List <customerPaymentProfileType> paymentProfileList = new List <customerPaymentProfileType>(); customerPaymentProfileType ccPaymentProfile = new customerPaymentProfileType(); ccPaymentProfile.payment = cc; customerPaymentProfileType echeckPaymentProfile = new customerPaymentProfileType(); echeckPaymentProfile.payment = echeck; paymentProfileList.Add(ccPaymentProfile); paymentProfileList.Add(echeckPaymentProfile); List <customerAddressType> addressInfoList = new List <customerAddressType>(); customerAddressType homeAddress = new customerAddressType(); homeAddress.address = "10900 NE 8th St"; homeAddress.city = "Seattle"; homeAddress.zip = "98006"; customerAddressType officeAddress = new customerAddressType(); officeAddress.address = "1200 148th AVE NE"; officeAddress.city = "NorthBend"; officeAddress.zip = "92101"; addressInfoList.Add(homeAddress); addressInfoList.Add(officeAddress); customerProfileType customerProfile = new customerProfileType(); customerProfile.merchantCustomerId = "Test CustomerID"; customerProfile.email = email; customerProfile.description = description; customerProfile.paymentProfiles = paymentProfileList.ToArray(); customerProfile.shipToList = addressInfoList.ToArray(); var request = new createCustomerProfileRequest { profile = customerProfile, validationMode = validationModeEnum.none }; // instantiate the controller that will call the service var controller = new createCustomerProfileController(request); controller.Execute(); // get the response from the service (errors contained if any) createCustomerProfileResponse response = controller.GetApiResponse(); 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("CCP_00" + flag.ToString()); row1.Add("CreateCustomerProfile"); 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, CustomerProfileID : " + response.customerProfileId); Console.WriteLine("Success, CustomerPaymentProfileID : " + response.customerPaymentProfileIdList[0]); Console.WriteLine("Success, CustomerShippingProfileID : " + response.customerShippingAddressIdList[0]); } catch { CsvRow row1 = new CsvRow(); row1.Add("CCP_00" + flag.ToString()); row1.Add("CreateCustomerProfile"); 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("CCP_00" + flag.ToString()); row1.Add("CreateCustomerProfile"); 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; } } catch (Exception e) { CsvRow row2 = new CsvRow(); row2.Add("CCP_00" + flag.ToString()); row2.Add("CreateCustomerProfile"); row2.Add("Fail"); row2.Add(DateTime.Now.ToString("yyyy/MM/dd" + "::" + "HH:mm:ss:fff")); writer.WriteRow(row2); flag = flag + 1; Console.WriteLine(TestcaseID + " Error Message " + e.Message); } } } } }
public string CreateCust(CardInfoViewModel data) { //Console.WriteLine("Create Customer Profile Sample"); // set whether to use the sandbox environment, or production enviornment ApiOperationBase <ANetApiRequest, ANetApiResponse> .RunEnvironment = AuthorizeNet.Environment.PRODUCTION; // define the merchant information (authentication / transaction id) ApiOperationBase <ANetApiRequest, ANetApiResponse> .MerchantAuthentication = new merchantAuthenticationType() { name = data.ANET_ApiLoginID, ItemElementName = ItemChoiceType.transactionKey, Item = data.ANET_ApiTransactionKey, }; customerProfileType customerProfile = new customerProfileType(); customerProfile.merchantCustomerId = data.CustomerId; customerProfile.email = data.email; var request = new createCustomerProfileRequest { profile = customerProfile, validationMode = validationModeEnum.none }; // instantiate the controller that will call the service var controller = new createCustomerProfileController(request); controller.Execute(); // get the response from the service (errors contained if any) createCustomerProfileResponse response = controller.GetApiResponse(); // validate response if (response != null) { if (response.messages.resultCode == messageTypeEnum.Ok) { if (response.messages.message != null) { //Console.WriteLine("Success!"); //Console.WriteLine("Customer Profile ID: " + ); return(response.customerProfileId); } } else { Console.WriteLine("Customer Profile Creation Failed."); Console.WriteLine("Error Code: " + response.messages.message[0].code); Console.WriteLine("Error message: " + response.messages.message[0].text); } } else { if (controller.GetErrorResponse().messages.message.Length > 0) { Console.WriteLine("Customer Profile Creation Failed."); Console.WriteLine("Error Code: " + response.messages.message[0].code); Console.WriteLine("Error message: " + response.messages.message[0].text); } else { Console.WriteLine("Null Response."); } } return(string.Empty); }