Code Sample
using System;
using System.Diagnostics;
using System.Linq;
using Blackbaud.AppFx.WebAPI.ServiceProxy;
namespace CreditCardVault
{
class Program
{
static void Main(string[] args)
{
// Build credit card info
CreditCardInfo ccInfo = new CreditCardInfo();
ccInfo.CardHolder = "John Doe";
ccInfo.CardNumber = "4111111111111111";
ccInfo.ExpirationDate = new CreditCardFuzzyDate() { Year = 2020, Month = 6 };
//ValidFrom and IssueNumber are only required for UK credit cards
ccInfo.ValidFrom = new CreditCardFuzzyDate() { Year = 2012, Month = 12 };
ccInfo.IssueNumber = "ABC";
// Build request
CreditCardVaultRequest ccReq = new CreditCardVaultRequest();
ccReq.ClientAppInfo = new ClientAppInfoHeader();
ccReq.ClientAppInfo.ClientAppName = "Credit Card Vault Test";
ccReq.ClientAppInfo.REDatabaseToUse = "BBInfinity";
ccReq.CreditCards = new CreditCardInfo[] { ccInfo };
// Build appfx webservice and send request
using (AppFxWebService svc = new AppFxWebService())
{
svc.Url = "http://localhost/bbappfx.spdev/appfxwebservice.asmx";
svc.Credentials = new System.Net.NetworkCredential("John.Smith", "password", "Blackbaud");
try
{
CreditCardVaultReply ccReply = svc.CreditCardVault(ccReq);
if (ccReply.CreditCardResponses[0].Status == CreditCardVaultStatus.Success)
{
Console.WriteLine("Success - {0}", ccReply.CreditCardResponses[0].Token);
}
else
{
Console.WriteLine("Error - {0}", ccReply.CreditCardResponses[0].ErrorMessage);
}
}
catch (System.Net.WebException ex)
{
Console.WriteLine("Error encountered invoking endpoint - {0}", ex.Message);
}
}
}
}
}