Hi,
I am using the "advanced integration method" with C# to process eCheck transactions. I can submit a single Echeck Request without any issues. Here is an example of the code I am using:
if (paymentMethod == "check")
{
// Default these to blank, we are not using them, but they are
// required to be passed to Auth.NET
var bankName = "";
var acctName = "";
var checkNum = "";
// Determine what checking account type to use
var achAcctType = AuthorizeNet.BankAccountType.Checking;
if (acctType == "savings")
achAcctType = AuthorizeNet.BankAccountType.Savings;
var anRequest = new AuthorizeNet.EcheckRequest(AuthorizeNet.EcheckType.WEB, totalAmt, routingNum, acctNum, achAcctType, bankName, acctName, checkNum);
anRequest.FirstName = firstName;
anRequest.LastName = lastName;
anRequest.Address = addres1;
anRequest.City = city;
anRequest.State = state;
anRequest.Phone = phone;
anRequest.Zip = zip;
var anGate = new AuthorizeNet.Gateway(apiLoginId, tranKey, isTestTrans);
// Submit trans
singleResponse = anGate.Send(anRequest);
}
What I would like to do is submit a recurring eCheck request for a specific day of the month. The merchant would like users to be able to choose either the 1st or the 15th of the month. I have been unable to find any method for doing this for eCheck.
How should I go about doing this using C#?
Thanks,
Tod
12-02-2013 01:46 PM
You need ARB for recurring billing
12-02-2013 03:11 PM
Thanks for the response.
I am using the following code to conduct ARB transactions for credit cards. Can I use a modified form of this code to process recurring billing for eCheck? If so, how?
var subRequest = AuthorizeNet.SubscriptionRequest.CreateMonthly(email, "site-sub", totalAmt);
subRequest.CardNumber = cardNumber;
subRequest.CardExpirationYear = int.Parse("20" + expYear); // Year is only two digits. Convert to four, e.g., YYYY.
subRequest.CardExpirationMonth = int.Parse(expMonth);
subRequest.CardCode = cvv;
var subAddress = new AuthorizeNet.Address();
subAddress.First = firstName;
subAddress.Last = lastName;
subAddress.Street = addres1;
subAddress.City = city;
subAddress.State = state;
subAddress.Phone = phone;
subAddress.Zip = zip;
subRequest.BillingAddress = subAddress;
subRequest.StartsOn = startsOn.Value;
var subGate = new AuthorizeNet.SubscriptionGateway(apiLoginId, tranKey, serviceMode);
subResponse = subGate.CreateSubscription(subRequest);
Thanks.
12-04-2013 10:37 AM
Looking thru the SDKs source files, it doesn't look like it support bank account, you would have to modify it yourselves.
12-04-2013 11:12 AM