Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions Source/BankAccountValidationConfiguration.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using Cybersource_rest_samples_dotnet.Samples.Payments;

namespace Cybersource_rest_samples_dotnet
{
class BankAccountValidationConfiguration
{
// initialize dictionary object
private readonly Dictionary<string, string> _configurationDictionary = new Dictionary<string, string>();

public Dictionary<string, string> GetConfiguration()
{
_configurationDictionary.Add("authenticationType", "JWT"); //mle only support with JWT Auth Type
_configurationDictionary.Add("merchantID", "testcasmerchpd01001");
//_configurationDictionary.Add("merchantsecretKey", "yBJxy6LjM2TmcPGu+GaJrHtkke25fPpUX+UY6/L/1tE=");
//_configurationDictionary.Add("merchantKeyId", "08c94330-f618-42a3-b09d-e1e43be5efda");
_configurationDictionary.Add("keysDirectory", Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "..\\..\\..\\Source\\Resource"));
_configurationDictionary.Add("keyFilename", "testcasmerchpd01001");
_configurationDictionary.Add("runEnvironment", "apitest.cybersource.com");
_configurationDictionary.Add("keyAlias", "testcasmerchpd01001");
_configurationDictionary.Add("keyPass", "Authnet101!");


return _configurationDictionary;
}

}
}

Binary file added Source/Resource/testcasmerchpd01001.p12
Binary file not shown.
74 changes: 74 additions & 0 deletions Source/Samples/VisaBankAccountValidation/BankAccountValidation.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
using System;
using System.Collections.Generic;
using System.Globalization;
using ApiSdk.model;
using CyberSource.Api;
using CyberSource.Client;
using CyberSource.Model;

namespace Cybersource_rest_samples_dotnet.Samples.VisaBankAccountValidation
{
public class BankAccountValidation
{
public static void WriteLogAudit(int status)
{
var filePath = System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString().Split('.');
var filename = filePath[filePath.Length - 1];
Console.WriteLine($"[Sample Code Testing] [{filename}] {status}");
}

public static InlineResponse20013 Run()
{
string clientReferenceInformationCode = "TC50171_100";
Bavsv1accountvalidationsClientReferenceInformation clientReferenceInformation = new Bavsv1accountvalidationsClientReferenceInformation(
Code: clientReferenceInformationCode
);

int processingInformationValidationLevel = 1;
Bavsv1accountvalidationsProcessingInformation processingInformation = new Bavsv1accountvalidationsProcessingInformation(
ValidationLevel: processingInformationValidationLevel
);

string paymentInformationBankRoutingNumber = "041210163";
string paymentInformationBankAccountNumber = "99970";
Bavsv1accountvalidationsPaymentInformationBankAccount paymentInformationBankAccount = new Bavsv1accountvalidationsPaymentInformationBankAccount(
Number: paymentInformationBankAccountNumber
);

Bavsv1accountvalidationsPaymentInformationBank paymentInformationBank = new Bavsv1accountvalidationsPaymentInformationBank(
RoutingNumber: paymentInformationBankRoutingNumber,
Account: paymentInformationBankAccount
);

Bavsv1accountvalidationsPaymentInformation paymentInformation = new Bavsv1accountvalidationsPaymentInformation(
Bank: paymentInformationBank
);

var requestObj = new AccountValidationsRequest(
ClientReferenceInformation: clientReferenceInformation,
ProcessingInformation: processingInformation,
PaymentInformation: paymentInformation
);

try
{
var configDictionary = new BankAccountValidationConfiguration().GetConfiguration();
var clientConfig = new CyberSource.Client.Configuration(merchConfigDictObj: configDictionary);

var apiInstance = new BankAccountValidationApi(clientConfig);
InlineResponse20013 result = apiInstance.BankAccountValidationRequest(requestObj);
Console.WriteLine(result);
WriteLogAudit(apiInstance.GetStatusCode());
return result;
}
catch (ApiException e)
{
Console.WriteLine("Error Code: " + e.ErrorCode);
Console.WriteLine("Error Message: " + e.Message);
Console.WriteLine("Exception on calling the API : " + e.Message);
WriteLogAudit(e.ErrorCode);
return null;
}
}
}
}