diff --git a/src/main/java/Data/MerchantBoardingConfiguration.java b/src/main/java/Data/MerchantBoardingConfiguration.java new file mode 100644 index 0000000..443b34a --- /dev/null +++ b/src/main/java/Data/MerchantBoardingConfiguration.java @@ -0,0 +1,38 @@ +package Data; + +import java.util.Properties; + +public class MerchantBoardingConfiguration { + + public static Properties getMerchantConfigForBoardingAPI() { + Properties props = new Properties(); + + props.setProperty("authenticationType", "jwt"); + props.setProperty("merchantID", ""); + props.setProperty("runEnvironment", "apitest.cybersource.com"); + props.setProperty("requestJsonPath", "src/main/resources/request.json"); + + + props.setProperty("portfolioID", ""); + props.setProperty("useMetaKey", "false"); + + + props.setProperty("keyAlias", ""); + props.setProperty("keyPass", ""); + props.setProperty("keyFileName", ""); + props.setProperty("keysDirectory", "src/main/resources"); + + + props.setProperty("merchantKeyId", ""); + props.setProperty("merchantsecretKey", ""); + + props.setProperty("enableLog", "true"); + props.setProperty("logDirectory", "log"); + props.setProperty("logFilename", "cybs"); + props.setProperty("logMaximumSize", "5M"); + + + return props; + + } +} diff --git a/src/main/java/samples/MerchantBoarding/CreateRegistration.java b/src/main/java/samples/MerchantBoarding/CreateRegistration.java new file mode 100644 index 0000000..55306ba --- /dev/null +++ b/src/main/java/samples/MerchantBoarding/CreateRegistration.java @@ -0,0 +1,229 @@ +package samples.MerchantBoarding; + +import Api.CustomerApi; +import Api.MerchantBoardingApi; +import Data.MerchantBoardingConfiguration; +import Invokers.ApiClient; +import Invokers.ApiException; +import Model.*; +import com.cybersource.authsdk.core.MerchantConfig; + +import java.lang.invoke.MethodHandles; +import java.util.*; + +public class CreateRegistration { + + private static String responseCode = null; + private static String status = null; + private static Properties merchantProp; + + public static void WriteLogAudit(int status) { + String filename = MethodHandles.lookup().lookupClass().getSimpleName(); + System.out.println("[Sample Code Testing] [" + filename + "] " + status); + } + + public static void main(String args[]) throws Exception { + // Accept required parameters from args[] and pass to run. + run(); + + } + + + public static InlineResponse2012 run() { + + PostRegistrationBody reqObj=new PostRegistrationBody(); + + Boardingv1registrationsOrganizationInformation organizationInformation=new Boardingv1registrationsOrganizationInformation(); + organizationInformation.parentOrganizationId("apitester00"); + organizationInformation.type(Boardingv1registrationsOrganizationInformation.TypeEnum.MERCHANT); + organizationInformation.configurable(true); + + Boardingv1registrationsOrganizationInformationBusinessInformation businessInformation=new Boardingv1registrationsOrganizationInformationBusinessInformation(); + businessInformation.name("StuartWickedFastEatz"); + Boardingv1registrationsOrganizationInformationBusinessInformationAddress address=new Boardingv1registrationsOrganizationInformationBusinessInformationAddress(); + address.country("US"); + address.address1("123456 SandMarket"); + address.locality("ORMOND BEACH"); + address.administrativeArea("FL"); + address.postalCode("32176"); + businessInformation.address(address); + businessInformation.websiteUrl("https://www.StuartWickedEats.com"); + businessInformation.phoneNumber("6574567813"); + + Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact businessContact=new Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact(); + businessContact.firstName("Stuart"); + businessContact.lastName("Stuart"); + businessContact.phoneNumber("6574567813"); + businessContact.email("svc_email_bt@corpdev.visa.com"); + businessInformation.businessContact(businessContact); + businessInformation.merchantCategoryCode("5999"); + organizationInformation.businessInformation(businessInformation); + + reqObj.organizationInformation(organizationInformation); + + + Boardingv1registrationsProductInformation productInformation=new Boardingv1registrationsProductInformation(); + + Boardingv1registrationsProductInformationSelectedProducts selectedProducts=new Boardingv1registrationsProductInformationSelectedProducts(); + + PaymentsProducts payments=new PaymentsProducts(); + PaymentsProductsPayerAuthentication payerAuthentication=new PaymentsProductsPayerAuthentication(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation.enabled(true); + payerAuthentication.subscriptionInformation(subscriptionInformation); + + PaymentsProductsPayerAuthenticationConfigurationInformation configurationInformation=new PaymentsProductsPayerAuthenticationConfigurationInformation(); + PayerAuthConfig configurations=new PayerAuthConfig(); + PayerAuthConfigCardTypes cardTypes=new PayerAuthConfigCardTypes(); + PayerAuthConfigCardTypesVerifiedByVisa verifiedByVisa=new PayerAuthConfigCardTypesVerifiedByVisa(); + List currencies=new ArrayList<>(); + PayerAuthConfigCardTypesVerifiedByVisaCurrencies currency1=new PayerAuthConfigCardTypesVerifiedByVisaCurrencies(); + List currencyCodes=new ArrayList<>(); + currencyCodes.add("ALL"); + currency1.currencyCodes(currencyCodes); + currency1.acquirerId("469216"); + currency1.processorMerchantId("678855"); + + currencies.add(currency1); + verifiedByVisa.currencies(currencies); + cardTypes.verifiedByVisa(verifiedByVisa); + configurations.cardTypes(cardTypes); + configurationInformation.configurations(configurations); + payerAuthentication.configurationInformation(configurationInformation); + payments.payerAuthentication(payerAuthentication); + + PaymentsProductsCardProcessing cardProcessing=new PaymentsProductsCardProcessing(); + PaymentsProductsCardProcessingSubscriptionInformation subscriptionInformation2=new PaymentsProductsCardProcessingSubscriptionInformation(); + subscriptionInformation2.enabled(true); + Map features=new HashMap<>(); + PaymentsProductsCardProcessingSubscriptionInformationFeatures obj=new PaymentsProductsCardProcessingSubscriptionInformationFeatures(); + obj.enabled(true); + features.put("cardNotPresent",obj); + subscriptionInformation2.features(features); + cardProcessing.subscriptionInformation(subscriptionInformation2); + + PaymentsProductsCardProcessingConfigurationInformation configurationInformation2=new PaymentsProductsCardProcessingConfigurationInformation(); + + CardProcessingConfig configurations2=new CardProcessingConfig(); + CardProcessingConfigCommon common=new CardProcessingConfigCommon(); + common.merchantCategoryCode("1234"); + CardProcessingConfigCommonMerchantDescriptorInformation merchantDescriptorInformation=new CardProcessingConfigCommonMerchantDescriptorInformation(); + + merchantDescriptorInformation.name("r4ef"); + merchantDescriptorInformation.city("Bellevue"); + merchantDescriptorInformation.country("US"); + merchantDescriptorInformation.phone("4255547845"); + merchantDescriptorInformation.state("WA"); + merchantDescriptorInformation.street("StreetName"); + merchantDescriptorInformation.zip("98007"); + common.merchantDescriptorInformation(merchantDescriptorInformation); + + + Map processors=new HashMap<>(); + CardProcessingConfigCommonProcessors obj2=new CardProcessingConfigCommonProcessors(); + obj2.merchantId("123456789101"); + obj2.terminalId("1231"); + obj2.industryCode(CardProcessingConfigCommonProcessors.IndustryCodeEnum.D); + obj2.vitalNumber("71234567"); + obj2.merchantBinNumber("123456"); + obj2.merchantLocationNumber("00001"); + obj2.storeID("1234"); + obj2.settlementCurrency("USD"); + processors.put("tsys",obj2); + common.processors(processors); + configurations2.common(common); + + CardProcessingConfigFeatures features2=new CardProcessingConfigFeatures(); + CardProcessingConfigFeaturesCardNotPresent cardNotPresent=new CardProcessingConfigFeaturesCardNotPresent(); + + cardNotPresent.visaStraightThroughProcessingOnly(true); + features2.cardNotPresent(cardNotPresent); + configurations2.features(features2); + configurationInformation2.configurations(configurations2); + cardProcessing.configurationInformation(configurationInformation2); + payments.cardProcessing(cardProcessing); + + PaymentsProductsVirtualTerminal virtualTerminal=new PaymentsProductsVirtualTerminal(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation3=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation3.enabled(true); + virtualTerminal.subscriptionInformation(subscriptionInformation3); + payments.virtualTerminal(virtualTerminal); + + PaymentsProductsTax customerInvoicing=new PaymentsProductsTax(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation4=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation4.enabled(true); + customerInvoicing.subscriptionInformation(subscriptionInformation4); + payments.customerInvoicing(customerInvoicing); + + PaymentsProductsPayouts payouts=new PaymentsProductsPayouts(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation5=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation5.enabled(true); + payouts.subscriptionInformation(subscriptionInformation5); + payments.payouts(payouts); + + selectedProducts.payments(payments); + + CommerceSolutionsProducts commerceSolutions=new CommerceSolutionsProducts(); + CommerceSolutionsProductsTokenManagement tokenManagement=new CommerceSolutionsProductsTokenManagement(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation6=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation6.enabled(true); + tokenManagement.subscriptionInformation(subscriptionInformation6); + commerceSolutions.tokenManagement(tokenManagement); + selectedProducts.commerceSolutions(commerceSolutions); + + RiskProducts risk=new RiskProducts(); + RiskProductsFraudManagementEssentials fraudManagementEssentials=new RiskProductsFraudManagementEssentials(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation7=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation7.enabled(true); + fraudManagementEssentials.subscriptionInformation(subscriptionInformation7); + + RiskProductsFraudManagementEssentialsConfigurationInformation configurationInformation5=new RiskProductsFraudManagementEssentialsConfigurationInformation(); + + UUID templateId = UUID.fromString("E4EDB280-9DAC-4698-9EB9-9434D40FF60C"); + configurationInformation5.templateId(templateId); + fraudManagementEssentials.configurationInformation(configurationInformation5); + risk.fraudManagementEssentials(fraudManagementEssentials); + + selectedProducts.risk(risk); + + productInformation.selectedProducts(selectedProducts); + + reqObj.productInformation(productInformation); + + + InlineResponse2012 result=null; + + try { + //Boarding API support only JWT Auth Type + merchantProp = MerchantBoardingConfiguration.getMerchantConfigForBoardingAPI(); + ApiClient apiClient = new ApiClient(); + MerchantConfig merchantConfig = new MerchantConfig(merchantProp); + apiClient.merchantConfig = merchantConfig; + + MerchantBoardingApi apiInstance = new MerchantBoardingApi(apiClient); + result = apiInstance.postRegistration(reqObj, null); + + responseCode = apiClient.responseCode; + status = apiClient.status; + System.out.println("ResponseCode :" + responseCode); + System.out.println("ResponseMessage :" + status); + System.out.println(result); + WriteLogAudit(Integer.parseInt(responseCode)); + } catch (ApiException e) { + e.printStackTrace(); + WriteLogAudit(e.getCode()); + System.out.println("Msg.."+e.getMessage()+" Respbody.."+e.getResponseBody()+" cause.."+e.getCause()); + } catch (Exception e) { + e.printStackTrace(); + } + + + + return result; + } +} diff --git a/src/main/java/samples/MerchantBoarding/MerchantBoardingAmexDirect.java b/src/main/java/samples/MerchantBoarding/MerchantBoardingAmexDirect.java new file mode 100644 index 0000000..412c77f --- /dev/null +++ b/src/main/java/samples/MerchantBoarding/MerchantBoardingAmexDirect.java @@ -0,0 +1,245 @@ +package samples.MerchantBoarding; + +import Api.MerchantBoardingApi; +import Data.MerchantBoardingConfiguration; +import Invokers.ApiClient; +import Invokers.ApiException; +import Model.*; +import com.cybersource.authsdk.core.MerchantConfig; + +import java.lang.invoke.MethodHandles; +import java.util.*; + +public class MerchantBoardingAmexDirect { + + + private static String responseCode = null; + private static String status = null; + private static Properties merchantProp; + + public static void WriteLogAudit(int status) { + String filename = MethodHandles.lookup().lookupClass().getSimpleName(); + System.out.println("[Sample Code Testing] [" + filename + "] " + status); + } + + public static void main(String args[]) throws Exception { + // Accept required parameters from args[] and pass to run. + run(); + + } + + + public static InlineResponse2012 run() { + + PostRegistrationBody reqObj=new PostRegistrationBody(); + + Boardingv1registrationsOrganizationInformation organizationInformation=new Boardingv1registrationsOrganizationInformation(); + organizationInformation.parentOrganizationId("apitester00"); + organizationInformation.type(Boardingv1registrationsOrganizationInformation.TypeEnum.MERCHANT); + organizationInformation.configurable(true); + + Boardingv1registrationsOrganizationInformationBusinessInformation businessInformation=new Boardingv1registrationsOrganizationInformationBusinessInformation(); + businessInformation.name("StuartWickedFastEatz"); + Boardingv1registrationsOrganizationInformationBusinessInformationAddress address=new Boardingv1registrationsOrganizationInformationBusinessInformationAddress(); + address.country("US"); + address.address1("123456 SandMarket"); + address.locality("ORMOND BEACH"); + address.administrativeArea("FL"); + address.postalCode("32176"); + businessInformation.address(address); + businessInformation.websiteUrl("https://www.StuartWickedEats.com"); + businessInformation.phoneNumber("6574567813"); + + Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact businessContact=new Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact(); + businessContact.firstName("Stuart"); + businessContact.lastName("Stuart"); + businessContact.phoneNumber("6574567813"); + businessContact.email("svc_email_bt@corpdev.visa.com"); + businessInformation.businessContact(businessContact); + businessInformation.merchantCategoryCode("5999"); + organizationInformation.businessInformation(businessInformation); + + reqObj.organizationInformation(organizationInformation); + + + Boardingv1registrationsProductInformation productInformation=new Boardingv1registrationsProductInformation(); + Boardingv1registrationsProductInformationSelectedProducts selectedProducts=new Boardingv1registrationsProductInformationSelectedProducts(); + + PaymentsProducts payments=new PaymentsProducts(); + PaymentsProductsCardProcessing cardProcessing=new PaymentsProductsCardProcessing(); + PaymentsProductsCardProcessingSubscriptionInformation subscriptionInformation=new PaymentsProductsCardProcessingSubscriptionInformation(); + + subscriptionInformation.enabled(true); + Map features=new HashMap<>(); + + PaymentsProductsCardProcessingSubscriptionInformationFeatures obj1=new PaymentsProductsCardProcessingSubscriptionInformationFeatures(); + obj1.enabled(true); + features.put("cardNotPresent",obj1); + features.put("cardPresent",obj1); + subscriptionInformation.features(features); + cardProcessing.subscriptionInformation(subscriptionInformation); + + PaymentsProductsCardProcessingConfigurationInformation configurationInformation=new PaymentsProductsCardProcessingConfigurationInformation(); + + CardProcessingConfig configurations=new CardProcessingConfig(); + CardProcessingConfigCommon common=new CardProcessingConfigCommon(); + common.merchantCategoryCode("1799"); + CardProcessingConfigCommonMerchantDescriptorInformation merchantDescriptorInformation=new CardProcessingConfigCommonMerchantDescriptorInformation(); + merchantDescriptorInformation.city("Cupertino"); + merchantDescriptorInformation.country("USA"); + merchantDescriptorInformation.name("Mer name"); + merchantDescriptorInformation.phone("8885554444"); + merchantDescriptorInformation.zip("94043"); + merchantDescriptorInformation.state("CA"); + merchantDescriptorInformation.street("mer street"); + merchantDescriptorInformation.url("www.test.com"); + + common.merchantDescriptorInformation(merchantDescriptorInformation); + + common.subMerchantId("123457"); + common.subMerchantBusinessName("bus name"); + + Map processors=new HashMap<>(); + CardProcessingConfigCommonProcessors obj2=new CardProcessingConfigCommonProcessors(); + CardProcessingConfigCommonAcquirer acquirer=new CardProcessingConfigCommonAcquirer(); + + obj2.acquirer(acquirer); + Map currencies=new HashMap<>(); + CardProcessingConfigCommonCurrencies1 obj3=new CardProcessingConfigCommonCurrencies1(); + obj3.enabled(true); + obj3.enabledCardPresent(false); + obj3.enabledCardPresent(true); + obj3.terminalId(""); + obj3.serviceEnablementNumber("1234567890"); + currencies.put("AED",obj3); + currencies.put("FJD",obj3); + currencies.put("USD",obj3); + + obj2.currencies(currencies); + + Map paymentTypes=new HashMap<>(); + CardProcessingConfigCommonPaymentTypes obj4=new CardProcessingConfigCommonPaymentTypes(); + obj4.enabled(true); + paymentTypes.put("AMERICAN_EXPRESS",obj4); + + obj2.paymentTypes(paymentTypes); + obj2.allowMultipleBills(false); + obj2.avsFormat("basic"); + obj2.batchGroup("amexdirect_vme_default"); + obj2.enableAutoAuthReversalAfterVoid(false); + obj2.enhancedData("disabled"); + obj2.enableLevel2(false); + obj2.amexTransactionAdviceAddendum1("amex123"); + processors.put("acquirer",obj2); + + common.processors(processors); + configurations.common(common); + + CardProcessingConfigFeatures features2=new CardProcessingConfigFeatures(); + CardProcessingConfigFeaturesCardNotPresent cardNotPresent=new CardProcessingConfigFeaturesCardNotPresent(); + + Map processors3=new HashMap<>(); + CardProcessingConfigFeaturesCardNotPresentProcessors obj5=new CardProcessingConfigFeaturesCardNotPresentProcessors(); + obj5.relaxAddressVerificationSystem(true); + obj5.relaxAddressVerificationSystemAllowExpiredCard(true); + obj5.relaxAddressVerificationSystemAllowZipWithoutCountry(false); + processors3.put("amexdirect",obj5); + + cardNotPresent.processors(processors3); + features2.cardNotPresent(cardNotPresent); + configurations.features(features2); + configurationInformation.configurations(configurations); + UUID templateId = UUID.fromString("2B80A3C7-5A39-4CC3-9882-AC4A828D3646"); + configurationInformation.templateId(templateId); + cardProcessing.configurationInformation(configurationInformation); + payments.cardProcessing(cardProcessing); + + PaymentsProductsVirtualTerminal virtualTerminal=new PaymentsProductsVirtualTerminal(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation2=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation2.enabled(true); + virtualTerminal.subscriptionInformation(subscriptionInformation2); + + PaymentsProductsVirtualTerminalConfigurationInformation configurationInformation3=new PaymentsProductsVirtualTerminalConfigurationInformation(); + + UUID templateId2 = UUID.fromString("9FA1BB94-5119-48D3-B2E5-A81FD3C657B5"); + configurationInformation3.templateId(templateId2); + virtualTerminal.configurationInformation(configurationInformation3); + payments.virtualTerminal(virtualTerminal); + + PaymentsProductsTax customerInvoicing=new PaymentsProductsTax(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation6=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation6.enabled(true); + customerInvoicing.subscriptionInformation(subscriptionInformation6); + payments.customerInvoicing(customerInvoicing); + selectedProducts.payments(payments); + + RiskProducts risk=new RiskProducts(); + selectedProducts.risk(risk); + + CommerceSolutionsProducts commerceSolutions=new CommerceSolutionsProducts(); + CommerceSolutionsProductsTokenManagement tokenManagement=new CommerceSolutionsProductsTokenManagement(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation7=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation7.enabled(true); + tokenManagement.subscriptionInformation(subscriptionInformation7); + CommerceSolutionsProductsTokenManagementConfigurationInformation configurationInformation4=new CommerceSolutionsProductsTokenManagementConfigurationInformation(); + + UUID templateId3 = UUID.fromString("D62BEE20-DCFD-4AA2-8723-BA3725958ABA"); + configurationInformation4.templateId(templateId3); + tokenManagement.configurationInformation(configurationInformation4); + commerceSolutions.tokenManagement(tokenManagement); + selectedProducts.commerceSolutions(commerceSolutions); + + ValueAddedServicesProducts valueAddedServices=new ValueAddedServicesProducts(); + PaymentsProductsTax transactionSearch=new PaymentsProductsTax(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation8=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation8.enabled(true); + transactionSearch.subscriptionInformation(subscriptionInformation8); + + valueAddedServices.transactionSearch(transactionSearch); + PaymentsProductsTax reporting=new PaymentsProductsTax(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation9=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation9.enabled(true); + reporting.subscriptionInformation(subscriptionInformation9); + valueAddedServices.reporting(reporting); + + selectedProducts.valueAddedServices(valueAddedServices); + productInformation.selectedProducts(selectedProducts); + reqObj.productInformation(productInformation); + + InlineResponse2012 result=null; + + try { + //Boarding API support only JWT Auth Type + merchantProp = MerchantBoardingConfiguration.getMerchantConfigForBoardingAPI(); + ApiClient apiClient = new ApiClient(); + MerchantConfig merchantConfig = new MerchantConfig(merchantProp); + apiClient.merchantConfig = merchantConfig; + + MerchantBoardingApi apiInstance = new MerchantBoardingApi(apiClient); + result = apiInstance.postRegistration(reqObj, null); + + responseCode = apiClient.responseCode; + status = apiClient.status; + System.out.println("ResponseCode :" + responseCode); + System.out.println("ResponseMessage :" + status); + System.out.println(result); + WriteLogAudit(Integer.parseInt(responseCode)); + } catch (ApiException e) { + e.printStackTrace(); + WriteLogAudit(e.getCode()); + System.out.println("Msg.."+e.getMessage()+" Respbody.."+e.getResponseBody()+" cause.."+e.getCause()); + } catch (Exception e) { + e.printStackTrace(); + } + + + + return result; + } +} diff --git a/src/main/java/samples/MerchantBoarding/MerchantBoardingBarclays.java b/src/main/java/samples/MerchantBoarding/MerchantBoardingBarclays.java new file mode 100644 index 0000000..85248fd --- /dev/null +++ b/src/main/java/samples/MerchantBoarding/MerchantBoardingBarclays.java @@ -0,0 +1,254 @@ +package samples.MerchantBoarding; + +import Api.MerchantBoardingApi; +import Data.MerchantBoardingConfiguration; +import Invokers.ApiClient; +import Invokers.ApiException; +import Model.*; +import com.cybersource.authsdk.core.MerchantConfig; + +import java.lang.invoke.MethodHandles; +import java.util.*; + +public class MerchantBoardingBarclays { + + + private static String responseCode = null; + private static String status = null; + private static Properties merchantProp; + + public static void WriteLogAudit(int status) { + String filename = MethodHandles.lookup().lookupClass().getSimpleName(); + System.out.println("[Sample Code Testing] [" + filename + "] " + status); + } + + public static void main(String args[]) throws Exception { + // Accept required parameters from args[] and pass to run. + run(); + + } + + + public static InlineResponse2012 run() { + + PostRegistrationBody reqObj=new PostRegistrationBody(); + + Boardingv1registrationsOrganizationInformation organizationInformation=new Boardingv1registrationsOrganizationInformation(); + organizationInformation.parentOrganizationId("apitester00"); + organizationInformation.type(Boardingv1registrationsOrganizationInformation.TypeEnum.MERCHANT); + organizationInformation.configurable(true); + + Boardingv1registrationsOrganizationInformationBusinessInformation businessInformation=new Boardingv1registrationsOrganizationInformationBusinessInformation(); + businessInformation.name("StuartWickedFastEatz"); + Boardingv1registrationsOrganizationInformationBusinessInformationAddress address=new Boardingv1registrationsOrganizationInformationBusinessInformationAddress(); + address.country("US"); + address.address1("123456 SandMarket"); + address.locality("ORMOND BEACH"); + address.administrativeArea("FL"); + address.postalCode("32176"); + businessInformation.address(address); + businessInformation.websiteUrl("https://www.StuartWickedEats.com"); + businessInformation.phoneNumber("6574567813"); + + Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact businessContact=new Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact(); + businessContact.firstName("Stuart"); + businessContact.lastName("Stuart"); + businessContact.phoneNumber("6574567813"); + businessContact.email("svc_email_bt@corpdev.visa.com"); + businessInformation.businessContact(businessContact); + businessInformation.merchantCategoryCode("5999"); + organizationInformation.businessInformation(businessInformation); + + reqObj.organizationInformation(organizationInformation); + + + Boardingv1registrationsProductInformation productInformation=new Boardingv1registrationsProductInformation(); + Boardingv1registrationsProductInformationSelectedProducts selectedProducts=new Boardingv1registrationsProductInformationSelectedProducts(); + + PaymentsProducts payments=new PaymentsProducts(); + PaymentsProductsCardProcessing cardProcessing=new PaymentsProductsCardProcessing(); + PaymentsProductsCardProcessingSubscriptionInformation subscriptionInformation=new PaymentsProductsCardProcessingSubscriptionInformation(); + subscriptionInformation.enabled(true); + + Map features=new HashMap<>(); + + PaymentsProductsCardProcessingSubscriptionInformationFeatures obj1=new PaymentsProductsCardProcessingSubscriptionInformationFeatures(); + obj1.enabled(true); + features.put("cardNotPresent",obj1); + features.put("cardPresent",obj1); + subscriptionInformation.features(features); + cardProcessing.subscriptionInformation(subscriptionInformation); + + + PaymentsProductsCardProcessingConfigurationInformation configurationInformation=new PaymentsProductsCardProcessingConfigurationInformation(); + + CardProcessingConfig configurations=new CardProcessingConfig(); + + CardProcessingConfigCommon common=new CardProcessingConfigCommon(); + + common.merchantCategoryCode("5999"); + common.defaultAuthTypeCode(CardProcessingConfigCommon.DefaultAuthTypeCodeEnum.FINAL); + + Map processors=new HashMap<>(); + CardProcessingConfigCommonProcessors obj2=new CardProcessingConfigCommonProcessors(); + CardProcessingConfigCommonAcquirer acquirer=new CardProcessingConfigCommonAcquirer(); + + obj2.acquirer(acquirer); + Map currencies=new HashMap<>(); + CardProcessingConfigCommonCurrencies1 obj3=new CardProcessingConfigCommonCurrencies1(); + obj3.enabled(true); + obj3.enabledCardPresent(false); + obj3.enabledCardNotPresent(true); + obj3.merchantId("1234"); + obj3.serviceEnablementNumber(""); + List terminalIds=new ArrayList<>(); + + terminalIds.add("12351245"); + obj3.terminalIds(terminalIds); + + + currencies.put("AED",obj3); + currencies.put("USD",obj3); + + obj2.currencies(currencies); + + Map paymentTypes=new HashMap<>(); + + CardProcessingConfigCommonPaymentTypes obj4=new CardProcessingConfigCommonPaymentTypes(); + obj4.enabled(true); + paymentTypes.put("MASTERCARD",obj4); + paymentTypes.put("VISA",obj4); + + obj2.paymentTypes(paymentTypes); + + obj2.batchGroup("barclays2_16"); + obj2.quasiCash(false); + obj2.enhancedData("disabled"); + obj2.merchantId("124555"); + obj2.enableMultiCurrencyProcessing("false"); + + processors.put("barclays2",obj2); + + common.processors(processors); + configurations.common(common); + CardProcessingConfigFeatures features3=new CardProcessingConfigFeatures(); + + CardProcessingConfigFeaturesCardNotPresent cardNotPresent=new CardProcessingConfigFeaturesCardNotPresent(); + + Map processors4=new HashMap<>(); + CardProcessingConfigFeaturesCardNotPresentProcessors obj6=new CardProcessingConfigFeaturesCardNotPresentProcessors(); + + CardProcessingConfigFeaturesCardNotPresentPayouts payouts=new CardProcessingConfigFeaturesCardNotPresentPayouts(); + + payouts.merchantId("1233"); + payouts.terminalId("1244"); + obj6.payouts(payouts); + processors4.put("barclays2",obj6); + cardNotPresent.processors(processors4); + features3.cardNotPresent(cardNotPresent); + + configurations.features(features3); + + configurationInformation.configurations(configurations); + + UUID templateId = UUID.fromString("0A413572-1995-483C-9F48-FCBE4D0B2E86"); + configurationInformation.templateId(templateId); + cardProcessing.configurationInformation(configurationInformation); + + payments.cardProcessing(cardProcessing); + + PaymentsProductsVirtualTerminal virtualTerminal=new PaymentsProductsVirtualTerminal(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation2=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation2.enabled(true); + virtualTerminal.subscriptionInformation(subscriptionInformation2); + + PaymentsProductsVirtualTerminalConfigurationInformation configurationInformation2=new PaymentsProductsVirtualTerminalConfigurationInformation(); + + UUID templateId3 = UUID.fromString("E4EDB280-9DAC-4698-9EB9-9434D40FF60C"); + configurationInformation2.templateId(templateId3); + virtualTerminal.configurationInformation(configurationInformation2); + payments.virtualTerminal(virtualTerminal); + + PaymentsProductsTax customerInvoicing=new PaymentsProductsTax(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation3=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation3.enabled(true); + customerInvoicing.subscriptionInformation(subscriptionInformation3); + + payments.customerInvoicing(customerInvoicing); + + selectedProducts.payments(payments); + + RiskProducts risk2=new RiskProducts(); + selectedProducts.risk(risk2); + + CommerceSolutionsProducts commerceSolutions=new CommerceSolutionsProducts(); + CommerceSolutionsProductsTokenManagement tokenManagement=new CommerceSolutionsProductsTokenManagement(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation5=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation5.enabled(true); + tokenManagement.subscriptionInformation(subscriptionInformation5); + + CommerceSolutionsProductsTokenManagementConfigurationInformation configurationInformation5=new CommerceSolutionsProductsTokenManagementConfigurationInformation(); + + UUID templateId4 = UUID.fromString("D62BEE20-DCFD-4AA2-8723-BA3725958ABA"); + configurationInformation5.templateId(templateId4); + tokenManagement.configurationInformation(configurationInformation5); + commerceSolutions.tokenManagement(tokenManagement); + selectedProducts.commerceSolutions(commerceSolutions); + + ValueAddedServicesProducts valueAddedServices=new ValueAddedServicesProducts(); + + PaymentsProductsTax transactionSearch=new PaymentsProductsTax(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation6=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation6.enabled(true); + transactionSearch.subscriptionInformation(subscriptionInformation6); + valueAddedServices.transactionSearch(transactionSearch); + + PaymentsProductsTax reporting=new PaymentsProductsTax(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation7=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation7.enabled(true); + reporting.subscriptionInformation(subscriptionInformation7); + valueAddedServices.reporting(reporting); + selectedProducts.valueAddedServices(valueAddedServices); + productInformation.selectedProducts(selectedProducts); + reqObj.productInformation(productInformation); + + + InlineResponse2012 result=null; + + try { + //Boarding API support only JWT Auth Type + merchantProp = MerchantBoardingConfiguration.getMerchantConfigForBoardingAPI(); + ApiClient apiClient = new ApiClient(); + MerchantConfig merchantConfig = new MerchantConfig(merchantProp); + apiClient.merchantConfig = merchantConfig; + + MerchantBoardingApi apiInstance = new MerchantBoardingApi(apiClient); + result = apiInstance.postRegistration(reqObj, null); + + responseCode = apiClient.responseCode; + status = apiClient.status; + System.out.println("ResponseCode :" + responseCode); + System.out.println("ResponseMessage :" + status); + System.out.println(result); + WriteLogAudit(Integer.parseInt(responseCode)); + } catch (ApiException e) { + e.printStackTrace(); + WriteLogAudit(e.getCode()); + System.out.println("Msg.."+e.getMessage()+" Respbody.."+e.getResponseBody()+" cause.."+e.getCause()); + } catch (Exception e) { + e.printStackTrace(); + } + + + + return result; + } +} diff --git a/src/main/java/samples/MerchantBoarding/MerchantBoardingBinLookup.java b/src/main/java/samples/MerchantBoarding/MerchantBoardingBinLookup.java new file mode 100644 index 0000000..6ba1f86 --- /dev/null +++ b/src/main/java/samples/MerchantBoarding/MerchantBoardingBinLookup.java @@ -0,0 +1,133 @@ +package samples.MerchantBoarding; + +import Api.MerchantBoardingApi; +import Data.MerchantBoardingConfiguration; +import Invokers.ApiClient; +import Invokers.ApiException; +import Model.*; +import com.cybersource.authsdk.core.MerchantConfig; + +import java.lang.invoke.MethodHandles; +import java.util.HashMap; +import java.util.Map; +import java.util.Properties; +import java.util.UUID; + +public class MerchantBoardingBinLookup { + + + private static String responseCode = null; + private static String status = null; + private static Properties merchantProp; + + public static void WriteLogAudit(int status) { + String filename = MethodHandles.lookup().lookupClass().getSimpleName(); + System.out.println("[Sample Code Testing] [" + filename + "] " + status); + } + + public static void main(String args[]) throws Exception { + // Accept required parameters from args[] and pass to run. + run(); + + } + + + public static InlineResponse2012 run() { + + PostRegistrationBody reqObj=new PostRegistrationBody(); + + Boardingv1registrationsOrganizationInformation organizationInformation=new Boardingv1registrationsOrganizationInformation(); + organizationInformation.parentOrganizationId("apitester00"); + organizationInformation.type(Boardingv1registrationsOrganizationInformation.TypeEnum.MERCHANT); + organizationInformation.configurable(true); + + Boardingv1registrationsOrganizationInformationBusinessInformation businessInformation=new Boardingv1registrationsOrganizationInformationBusinessInformation(); + businessInformation.name("StuartWickedFastEatz"); + Boardingv1registrationsOrganizationInformationBusinessInformationAddress address=new Boardingv1registrationsOrganizationInformationBusinessInformationAddress(); + address.country("US"); + address.address1("123456 SandMarket"); + address.locality("ORMOND BEACH"); + address.administrativeArea("FL"); + address.postalCode("32176"); + businessInformation.address(address); + businessInformation.websiteUrl("https://www.StuartWickedEats.com"); + businessInformation.phoneNumber("6574567813"); + + Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact businessContact=new Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact(); + businessContact.firstName("Stuart"); + businessContact.lastName("Stuart"); + businessContact.phoneNumber("6574567813"); + businessContact.email("svc_email_bt@corpdev.visa.com"); + businessInformation.businessContact(businessContact); + businessInformation.merchantCategoryCode("5999"); + organizationInformation.businessInformation(businessInformation); + + reqObj.organizationInformation(organizationInformation); + + + Boardingv1registrationsProductInformation productInformation=new Boardingv1registrationsProductInformation(); + Boardingv1registrationsProductInformationSelectedProducts selectedProducts=new Boardingv1registrationsProductInformationSelectedProducts(); + + PaymentsProducts payments=new PaymentsProducts(); + selectedProducts.payments(payments); + + RiskProducts risk=new RiskProducts(); + selectedProducts.risk(risk); + + CommerceSolutionsProducts commerceSolutions=new CommerceSolutionsProducts(); + CommerceSolutionsProductsBinLookup binLookup=new CommerceSolutionsProductsBinLookup(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation.enabled(true); + binLookup.subscriptionInformation(subscriptionInformation); + CommerceSolutionsProductsBinLookupConfigurationInformation configurationInformation=new CommerceSolutionsProductsBinLookupConfigurationInformation(); + + CommerceSolutionsProductsBinLookupConfigurationInformationConfigurations configurations=new CommerceSolutionsProductsBinLookupConfigurationInformationConfigurations(); + + configurations.isPayoutOptionsEnabled(false); + configurations.isAccountPrefixEnabled(true); + + configurationInformation.configurations(configurations); + binLookup.configurationInformation(configurationInformation); + + commerceSolutions.binLookup(binLookup); + selectedProducts.commerceSolutions(commerceSolutions); + + ValueAddedServicesProducts valueAddedServices=new ValueAddedServicesProducts(); + selectedProducts.valueAddedServices(valueAddedServices); + + productInformation.selectedProducts(selectedProducts); + reqObj.productInformation(productInformation); + + + InlineResponse2012 result=null; + + try { + //Boarding API support only JWT Auth Type + merchantProp = MerchantBoardingConfiguration.getMerchantConfigForBoardingAPI(); + ApiClient apiClient = new ApiClient(); + MerchantConfig merchantConfig = new MerchantConfig(merchantProp); + apiClient.merchantConfig = merchantConfig; + + MerchantBoardingApi apiInstance = new MerchantBoardingApi(apiClient); + result = apiInstance.postRegistration(reqObj, null); + + responseCode = apiClient.responseCode; + status = apiClient.status; + System.out.println("ResponseCode :" + responseCode); + System.out.println("ResponseMessage :" + status); + System.out.println(result); + WriteLogAudit(Integer.parseInt(responseCode)); + } catch (ApiException e) { + e.printStackTrace(); + WriteLogAudit(e.getCode()); + System.out.println("Msg.."+e.getMessage()+" Respbody.."+e.getResponseBody()+" cause.."+e.getCause()); + } catch (Exception e) { + e.printStackTrace(); + } + + + + return result; + } +} diff --git a/src/main/java/samples/MerchantBoarding/MerchantBoardingCUP.java b/src/main/java/samples/MerchantBoarding/MerchantBoardingCUP.java new file mode 100644 index 0000000..ca6ca8b --- /dev/null +++ b/src/main/java/samples/MerchantBoarding/MerchantBoardingCUP.java @@ -0,0 +1,218 @@ +package samples.MerchantBoarding; + +import Api.MerchantBoardingApi; +import Data.MerchantBoardingConfiguration; +import Invokers.ApiClient; +import Invokers.ApiException; +import Model.*; +import com.cybersource.authsdk.core.MerchantConfig; + +import java.lang.invoke.MethodHandles; +import java.util.*; + +public class MerchantBoardingCUP { + + private static String responseCode = null; + private static String status = null; + private static Properties merchantProp; + + public static void WriteLogAudit(int status) { + String filename = MethodHandles.lookup().lookupClass().getSimpleName(); + System.out.println("[Sample Code Testing] [" + filename + "] " + status); + } + + public static void main(String args[]) throws Exception { + // Accept required parameters from args[] and pass to run. + run(); + + } + + + public static InlineResponse2012 run() { + + PostRegistrationBody reqObj=new PostRegistrationBody(); + + Boardingv1registrationsOrganizationInformation organizationInformation=new Boardingv1registrationsOrganizationInformation(); + organizationInformation.parentOrganizationId("apitester00"); + organizationInformation.type(Boardingv1registrationsOrganizationInformation.TypeEnum.MERCHANT); + organizationInformation.configurable(true); + + Boardingv1registrationsOrganizationInformationBusinessInformation businessInformation=new Boardingv1registrationsOrganizationInformationBusinessInformation(); + businessInformation.name("StuartWickedFastEatz"); + Boardingv1registrationsOrganizationInformationBusinessInformationAddress address=new Boardingv1registrationsOrganizationInformationBusinessInformationAddress(); + address.country("US"); + address.address1("123456 SandMarket"); + address.locality("ORMOND BEACH"); + address.administrativeArea("FL"); + address.postalCode("32176"); + businessInformation.address(address); + businessInformation.websiteUrl("https://www.StuartWickedEats.com"); + businessInformation.phoneNumber("6574567813"); + + Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact businessContact=new Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact(); + businessContact.firstName("Stuart"); + businessContact.lastName("Stuart"); + businessContact.phoneNumber("6574567813"); + businessContact.email("svc_email_bt@corpdev.visa.com"); + businessInformation.businessContact(businessContact); + businessInformation.merchantCategoryCode("5999"); + organizationInformation.businessInformation(businessInformation); + + reqObj.organizationInformation(organizationInformation); + + + Boardingv1registrationsProductInformation productInformation=new Boardingv1registrationsProductInformation(); + + Boardingv1registrationsProductInformationSelectedProducts selectedProducts=new Boardingv1registrationsProductInformationSelectedProducts(); + + PaymentsProducts payments=new PaymentsProducts(); + PaymentsProductsCardProcessing cardProcessing=new PaymentsProductsCardProcessing(); + PaymentsProductsCardProcessingSubscriptionInformation subscriptionInformation=new PaymentsProductsCardProcessingSubscriptionInformation(); + + subscriptionInformation.enabled(true); + Map features=new HashMap<>(); + + PaymentsProductsCardProcessingSubscriptionInformationFeatures obj1=new PaymentsProductsCardProcessingSubscriptionInformationFeatures(); + obj1.enabled(true); + features.put("cardNotPresent",obj1); + features.put("cardPresent",obj1); + + subscriptionInformation.features(features); + cardProcessing.subscriptionInformation(subscriptionInformation); + + + PaymentsProductsCardProcessingConfigurationInformation configurationInformation=new PaymentsProductsCardProcessingConfigurationInformation(); + + CardProcessingConfig configurations=new CardProcessingConfig(); + CardProcessingConfigCommon common=new CardProcessingConfigCommon(); + common.merchantCategoryCode("1799"); + Map processors=new HashMap<>(); + + CardProcessingConfigCommonProcessors obj2=new CardProcessingConfigCommonProcessors(); + CardProcessingConfigCommonAcquirer acquirer=new CardProcessingConfigCommonAcquirer(); + + acquirer.countryCode("344_hongkong"); + acquirer.institutionId("22344"); + obj2.acquirer(acquirer); + + Map currencies=new HashMap<>(); + + CardProcessingConfigCommonCurrencies1 obj3=new CardProcessingConfigCommonCurrencies1(); + obj3.enabled(true); + obj3.enabledCardPresent(false); + obj3.enabledCardNotPresent(true); + obj3.merchantId("112233"); + obj3.terminalId("11224455"); + obj3.serviceEnablementNumber(""); + currencies.put("HKD",obj3); + currencies.put("AUD",obj3); + currencies.put("USD",obj3); + + obj2.currencies(currencies); + + Map paymentTypes=new HashMap<>(); + + CardProcessingConfigCommonPaymentTypes obj4=new CardProcessingConfigCommonPaymentTypes(); + obj4.enabled(true); + paymentTypes.put("CUP",obj4); + obj2.paymentTypes(paymentTypes); + + processors.put("CUP",obj2); + common.processors(processors); + configurations.common(common); + configurationInformation.configurations(configurations); + + UUID templateId = UUID.fromString("1D8BC41A-F04E-4133-87C8-D89D1806106F"); + configurationInformation.templateId(templateId); + cardProcessing.configurationInformation(configurationInformation); + payments.cardProcessing(cardProcessing); + + PaymentsProductsVirtualTerminal virtualTerminal=new PaymentsProductsVirtualTerminal(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation2=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation2.enabled(true); + virtualTerminal.subscriptionInformation(subscriptionInformation2); + + PaymentsProductsVirtualTerminalConfigurationInformation configurationInformation2=new PaymentsProductsVirtualTerminalConfigurationInformation(); + + UUID templateId2 = UUID.fromString("9FA1BB94-5119-48D3-B2E5-A81FD3C657B5"); + configurationInformation2.templateId(templateId2); + + virtualTerminal.configurationInformation(configurationInformation2); + payments.virtualTerminal(virtualTerminal); + + PaymentsProductsTax customerInvoicing=new PaymentsProductsTax(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation3=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation3.enabled(true); + customerInvoicing.subscriptionInformation(subscriptionInformation3); + payments.customerInvoicing(customerInvoicing); + selectedProducts.payments(payments); + + RiskProducts risk=new RiskProducts(); + selectedProducts.risk(risk); + CommerceSolutionsProducts commerceSolutions=new CommerceSolutionsProducts(); + + CommerceSolutionsProductsTokenManagement tokenManagement=new CommerceSolutionsProductsTokenManagement(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation4=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation4.enabled(true); + tokenManagement.subscriptionInformation(subscriptionInformation4); + + CommerceSolutionsProductsTokenManagementConfigurationInformation configurationInformation3=new CommerceSolutionsProductsTokenManagementConfigurationInformation(); + + UUID templateId3 = UUID.fromString("9FA1BB94-5119-48D3-B2E5-A81FD3C657B5"); + configurationInformation3.templateId(templateId3); + tokenManagement.configurationInformation(configurationInformation3); + commerceSolutions.tokenManagement(tokenManagement); + + selectedProducts.commerceSolutions(commerceSolutions); + + ValueAddedServicesProducts valueAddedServices=new ValueAddedServicesProducts(); + + PaymentsProductsTax transactionSearch=new PaymentsProductsTax(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation5=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation5.enabled(true); + transactionSearch.subscriptionInformation(subscriptionInformation5); + valueAddedServices.transactionSearch(transactionSearch); + + PaymentsProductsTax reporting=new PaymentsProductsTax(); + reporting.subscriptionInformation(subscriptionInformation5); + valueAddedServices.reporting(reporting); + selectedProducts.valueAddedServices(valueAddedServices); + productInformation.selectedProducts(selectedProducts); + reqObj.productInformation(productInformation); + + + InlineResponse2012 result=null; + + try { + //Boarding API support only JWT Auth Type + merchantProp = MerchantBoardingConfiguration.getMerchantConfigForBoardingAPI(); + ApiClient apiClient = new ApiClient(); + MerchantConfig merchantConfig = new MerchantConfig(merchantProp); + apiClient.merchantConfig = merchantConfig; + + MerchantBoardingApi apiInstance = new MerchantBoardingApi(apiClient); + result = apiInstance.postRegistration(reqObj, null); + + responseCode = apiClient.responseCode; + status = apiClient.status; + System.out.println("ResponseCode :" + responseCode); + System.out.println("ResponseMessage :" + status); + System.out.println(result); + WriteLogAudit(Integer.parseInt(responseCode)); + } catch (ApiException e) { + e.printStackTrace(); + WriteLogAudit(e.getCode()); + System.out.println("Msg.."+e.getMessage()+" Respbody.."+e.getResponseBody()+" cause.."+e.getCause()); + } catch (Exception e) { + e.printStackTrace(); + } + + + + return result; + } +} diff --git a/src/main/java/samples/MerchantBoarding/MerchantBoardingEFTPOS.java b/src/main/java/samples/MerchantBoarding/MerchantBoardingEFTPOS.java new file mode 100644 index 0000000..495e10b --- /dev/null +++ b/src/main/java/samples/MerchantBoarding/MerchantBoardingEFTPOS.java @@ -0,0 +1,172 @@ +package samples.MerchantBoarding; + +import Api.MerchantBoardingApi; +import Data.MerchantBoardingConfiguration; +import Invokers.ApiClient; +import Invokers.ApiException; +import Model.*; +import com.cybersource.authsdk.core.MerchantConfig; + +import java.lang.invoke.MethodHandles; +import java.util.HashMap; +import java.util.Map; +import java.util.Properties; +import java.util.UUID; + +public class MerchantBoardingEFTPOS { + + + private static String responseCode = null; + private static String status = null; + private static Properties merchantProp; + + public static void WriteLogAudit(int status) { + String filename = MethodHandles.lookup().lookupClass().getSimpleName(); + System.out.println("[Sample Code Testing] [" + filename + "] " + status); + } + + public static void main(String args[]) throws Exception { + // Accept required parameters from args[] and pass to run. + run(); + + } + + + public static InlineResponse2012 run() { + + PostRegistrationBody reqObj=new PostRegistrationBody(); + + Boardingv1registrationsOrganizationInformation organizationInformation=new Boardingv1registrationsOrganizationInformation(); + organizationInformation.parentOrganizationId("apitester00"); + organizationInformation.type(Boardingv1registrationsOrganizationInformation.TypeEnum.MERCHANT); + organizationInformation.configurable(true); + + Boardingv1registrationsOrganizationInformationBusinessInformation businessInformation=new Boardingv1registrationsOrganizationInformationBusinessInformation(); + businessInformation.name("StuartWickedFastEatz"); + Boardingv1registrationsOrganizationInformationBusinessInformationAddress address=new Boardingv1registrationsOrganizationInformationBusinessInformationAddress(); + address.country("US"); + address.address1("123456 SandMarket"); + address.locality("ORMOND BEACH"); + address.administrativeArea("FL"); + address.postalCode("32176"); + businessInformation.address(address); + businessInformation.websiteUrl("https://www.StuartWickedEats.com"); + businessInformation.phoneNumber("6574567813"); + + Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact businessContact=new Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact(); + businessContact.firstName("Stuart"); + businessContact.lastName("Stuart"); + businessContact.phoneNumber("6574567813"); + businessContact.email("svc_email_bt@corpdev.visa.com"); + businessInformation.businessContact(businessContact); + businessInformation.merchantCategoryCode("5999"); + organizationInformation.businessInformation(businessInformation); + + reqObj.organizationInformation(organizationInformation); + + Boardingv1registrationsProductInformation productInformation=new Boardingv1registrationsProductInformation(); + Boardingv1registrationsProductInformationSelectedProducts selectedProducts=new Boardingv1registrationsProductInformationSelectedProducts(); + + PaymentsProducts payments=new PaymentsProducts(); + PaymentsProductsCardProcessing cardProcessing=new PaymentsProductsCardProcessing(); + PaymentsProductsCardProcessingSubscriptionInformation subscriptionInformation=new PaymentsProductsCardProcessingSubscriptionInformation(); + + subscriptionInformation.enabled(true); + Map features=new HashMap<>(); + + PaymentsProductsCardProcessingSubscriptionInformationFeatures obj1=new PaymentsProductsCardProcessingSubscriptionInformationFeatures(); + obj1.enabled(true); + features.put("cardNotPresent",obj1); + obj1.enabled(false); + features.put("cardPresent",obj1); + subscriptionInformation.features(features); + cardProcessing.subscriptionInformation(subscriptionInformation); + + PaymentsProductsCardProcessingConfigurationInformation configurationInformation=new PaymentsProductsCardProcessingConfigurationInformation(); + + CardProcessingConfig configurations=new CardProcessingConfig(); + CardProcessingConfigCommon common=new CardProcessingConfigCommon(); + common.merchantCategoryCode("5999"); + common.preferCobadgedSecondaryBrand(true); + + + Map processors=new HashMap<>(); + CardProcessingConfigCommonProcessors obj5=new CardProcessingConfigCommonProcessors(); + CardProcessingConfigCommonAcquirer acquirer=new CardProcessingConfigCommonAcquirer(); + acquirer.countryCode("344_hongkong"); + acquirer.institutionId("22344"); + + obj5.acquirer(acquirer); + + Map currencies=new HashMap<>(); + + + CardProcessingConfigCommonCurrencies1 obj6=new CardProcessingConfigCommonCurrencies1(); + obj6.enabled(true); + obj6.merchantId("12345612344"); + obj6.terminalId("12121212"); + currencies.put("AUD",obj6); + obj5.currencies(currencies); + + Map paymentTypes=new HashMap<>(); + CardProcessingConfigCommonPaymentTypes obj7=new CardProcessingConfigCommonPaymentTypes(); + obj7.enabled(true); + paymentTypes.put("EFTPOS",obj7); + + obj5.paymentTypes(paymentTypes); + + obj5.enableCVVResponseIndicator(true); + obj5.enableLeastCostRouting(true); + obj5.merchantTier("000"); + + processors.put("EFTPOS",obj5); + + common.processors(processors); + configurations.common(common); + + CardProcessingConfigFeatures features2=new CardProcessingConfigFeatures(); + + configurations.features(features2); + configurationInformation.configurations(configurations); + UUID templateId = UUID.fromString("1F9B7F6E-F0DB-44C8-BF8E-5013E34C0F87"); + configurationInformation.templateId(templateId); + + cardProcessing.configurationInformation(configurationInformation); + payments.cardProcessing(cardProcessing); + selectedProducts.payments(payments); + + productInformation.selectedProducts(selectedProducts); + reqObj.productInformation(productInformation); + + + InlineResponse2012 result=null; + + try { + //Boarding API support only JWT Auth Type + merchantProp = MerchantBoardingConfiguration.getMerchantConfigForBoardingAPI(); + ApiClient apiClient = new ApiClient(); + MerchantConfig merchantConfig = new MerchantConfig(merchantProp); + apiClient.merchantConfig = merchantConfig; + + MerchantBoardingApi apiInstance = new MerchantBoardingApi(apiClient); + result = apiInstance.postRegistration(reqObj, null); + + responseCode = apiClient.responseCode; + status = apiClient.status; + System.out.println("ResponseCode :" + responseCode); + System.out.println("ResponseMessage :" + status); + System.out.println(result); + WriteLogAudit(Integer.parseInt(responseCode)); + } catch (ApiException e) { + e.printStackTrace(); + WriteLogAudit(e.getCode()); + System.out.println("Msg.."+e.getMessage()+" Respbody.."+e.getResponseBody()+" cause.."+e.getCause()); + } catch (Exception e) { + e.printStackTrace(); + } + + + + return result; + } +} diff --git a/src/main/java/samples/MerchantBoarding/MerchantBoardingFDIGlobal.java b/src/main/java/samples/MerchantBoarding/MerchantBoardingFDIGlobal.java new file mode 100644 index 0000000..944a4cc --- /dev/null +++ b/src/main/java/samples/MerchantBoarding/MerchantBoardingFDIGlobal.java @@ -0,0 +1,211 @@ +package samples.MerchantBoarding; + +import Api.MerchantBoardingApi; +import Data.MerchantBoardingConfiguration; +import Invokers.ApiClient; +import Invokers.ApiException; +import Model.*; +import com.cybersource.authsdk.core.MerchantConfig; + +import java.lang.invoke.MethodHandles; +import java.util.HashMap; +import java.util.Map; +import java.util.Properties; +import java.util.UUID; + +public class MerchantBoardingFDIGlobal { + + + private static String responseCode = null; + private static String status = null; + private static Properties merchantProp; + + public static void WriteLogAudit(int status) { + String filename = MethodHandles.lookup().lookupClass().getSimpleName(); + System.out.println("[Sample Code Testing] [" + filename + "] " + status); + } + + public static void main(String args[]) throws Exception { + // Accept required parameters from args[] and pass to run. + run(); + + } + + + public static InlineResponse2012 run() { + + PostRegistrationBody reqObj=new PostRegistrationBody(); + + Boardingv1registrationsOrganizationInformation organizationInformation=new Boardingv1registrationsOrganizationInformation(); + organizationInformation.parentOrganizationId("apitester00"); + organizationInformation.type(Boardingv1registrationsOrganizationInformation.TypeEnum.MERCHANT); + organizationInformation.configurable(true); + + Boardingv1registrationsOrganizationInformationBusinessInformation businessInformation=new Boardingv1registrationsOrganizationInformationBusinessInformation(); + businessInformation.name("StuartWickedFastEatz"); + Boardingv1registrationsOrganizationInformationBusinessInformationAddress address=new Boardingv1registrationsOrganizationInformationBusinessInformationAddress(); + address.country("US"); + address.address1("123456 SandMarket"); + address.locality("ORMOND BEACH"); + address.administrativeArea("FL"); + address.postalCode("32176"); + businessInformation.address(address); + businessInformation.websiteUrl("https://www.StuartWickedEats.com"); + businessInformation.phoneNumber("6574567813"); + + Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact businessContact=new Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact(); + businessContact.firstName("Stuart"); + businessContact.lastName("Stuart"); + businessContact.phoneNumber("6574567813"); + businessContact.email("svc_email_bt@corpdev.visa.com"); + businessInformation.businessContact(businessContact); + businessInformation.merchantCategoryCode("5999"); + organizationInformation.businessInformation(businessInformation); + + reqObj.organizationInformation(organizationInformation); + + Boardingv1registrationsProductInformation productInformation=new Boardingv1registrationsProductInformation(); + Boardingv1registrationsProductInformationSelectedProducts selectedProducts=new Boardingv1registrationsProductInformationSelectedProducts(); + + PaymentsProducts payments=new PaymentsProducts(); + PaymentsProductsCardProcessing cardProcessing=new PaymentsProductsCardProcessing(); + PaymentsProductsCardProcessingSubscriptionInformation subscriptionInformation=new PaymentsProductsCardProcessingSubscriptionInformation(); + + subscriptionInformation.enabled(true); + Map features=new HashMap<>(); + + PaymentsProductsCardProcessingSubscriptionInformationFeatures obj1=new PaymentsProductsCardProcessingSubscriptionInformationFeatures(); + obj1.enabled(true); + features.put("cardNotPresent",obj1); + features.put("cardPresent",obj1); + subscriptionInformation.features(features); + cardProcessing.subscriptionInformation(subscriptionInformation); + + PaymentsProductsCardProcessingConfigurationInformation configurationInformation=new PaymentsProductsCardProcessingConfigurationInformation(); + + CardProcessingConfig configurations=new CardProcessingConfig(); + CardProcessingConfigCommon common=new CardProcessingConfigCommon(); + common.merchantCategoryCode("0742"); + common.defaultAuthTypeCode(CardProcessingConfigCommon.DefaultAuthTypeCodeEnum.PRE); + common.processLevel3Data("ignored"); + common.masterCardAssignedId("123456789"); + common.enablePartialAuth(true); + + Map processors=new HashMap<>(); + CardProcessingConfigCommonProcessors obj5=new CardProcessingConfigCommonProcessors(); + CardProcessingConfigCommonAcquirer acquirer=new CardProcessingConfigCommonAcquirer(); + + obj5.acquirer(acquirer); + + Map currencies=new HashMap<>(); + + + CardProcessingConfigCommonCurrencies1 obj6=new CardProcessingConfigCommonCurrencies1(); + obj6.enabled(true); + obj6.enabledCardPresent(false); + obj6.enabledCardNotPresent(true); + obj6.merchantId("123456789mer"); + obj6.terminalId("12345ter"); + obj6.serviceEnablementNumber(""); + currencies.put("CHF",obj6); + currencies.put("HRK",obj6); + currencies.put("ERN",obj6); + currencies.put("USD",obj6); + + obj5.currencies(currencies); + + Map paymentTypes=new HashMap<>(); + CardProcessingConfigCommonPaymentTypes obj7=new CardProcessingConfigCommonPaymentTypes(); + obj7.enabled(true); + paymentTypes.put("MASTERCARD",obj7); + paymentTypes.put("DISCOVER",obj7); + paymentTypes.put("JCB",obj7); + paymentTypes.put("VISA",obj7); + paymentTypes.put("AMERICAN_EXPRESS",obj7); + paymentTypes.put("DINERS_CLUB",obj7); + paymentTypes.put("CUP",obj7); + Map currencies2=new HashMap<>(); + CardProcessingConfigCommonCurrencies ob1=new CardProcessingConfigCommonCurrencies(); + ob1.enabled(true); + ob1.terminalId("pint123"); + ob1.merchantId("pinm123"); + ob1.serviceEnablementNumber(null); + + currencies2.put("USD",ob1); + obj7.currencies(currencies2); + paymentTypes.put("PIN_DEBIT",obj7); + + obj5.paymentTypes(paymentTypes); + obj5.batchGroup("fdiglobal_vme_default"); + obj5.enhancedData("disabled"); + obj5.enablePosNetworkSwitching(true); + obj5.enableTransactionReferenceNumber(true); + + processors.put("fdiglobal",obj5); + + common.processors(processors); + configurations.common(common); + + CardProcessingConfigFeatures features2=new CardProcessingConfigFeatures(); + + CardProcessingConfigFeaturesCardNotPresent cardNotPresent=new CardProcessingConfigFeaturesCardNotPresent(); + + Map processors3=new HashMap<>(); + CardProcessingConfigFeaturesCardNotPresentProcessors obj9=new CardProcessingConfigFeaturesCardNotPresentProcessors(); + + obj9.relaxAddressVerificationSystem(true); + obj9.relaxAddressVerificationSystemAllowExpiredCard(true); + obj9.relaxAddressVerificationSystemAllowZipWithoutCountry(true); + + processors3.put("fdiglobal",obj9); + cardNotPresent.processors(processors3); + + cardNotPresent.visaStraightThroughProcessingOnly(true); + cardNotPresent.amexTransactionAdviceAddendum1("amex12345"); + cardNotPresent.ignoreAddressVerificationSystem(true); + features2.cardNotPresent(cardNotPresent); + + configurations.features(features2); + configurationInformation.configurations(configurations); + UUID templateId = UUID.fromString("685A1FC9-3CEC-454C-9D8A-19205529CE45"); + configurationInformation.templateId(templateId); + + cardProcessing.configurationInformation(configurationInformation); + payments.cardProcessing(cardProcessing); + selectedProducts.payments(payments); + + productInformation.selectedProducts(selectedProducts); + reqObj.productInformation(productInformation); + + + InlineResponse2012 result=null; + + try { + //Boarding API support only JWT Auth Type + merchantProp = MerchantBoardingConfiguration.getMerchantConfigForBoardingAPI(); + ApiClient apiClient = new ApiClient(); + MerchantConfig merchantConfig = new MerchantConfig(merchantProp); + apiClient.merchantConfig = merchantConfig; + + MerchantBoardingApi apiInstance = new MerchantBoardingApi(apiClient); + result = apiInstance.postRegistration(reqObj, null); + + responseCode = apiClient.responseCode; + status = apiClient.status; + System.out.println("ResponseCode :" + responseCode); + System.out.println("ResponseMessage :" + status); + System.out.println(result); + WriteLogAudit(Integer.parseInt(responseCode)); + } catch (ApiException e) { + e.printStackTrace(); + WriteLogAudit(e.getCode()); + System.out.println("Msg.."+e.getMessage()+" Respbody.."+e.getResponseBody()+" cause.."+e.getCause()); + } catch (Exception e) { + e.printStackTrace(); + } + + + + return result; + } +} diff --git a/src/main/java/samples/MerchantBoarding/MerchantBoardingGPX.java b/src/main/java/samples/MerchantBoarding/MerchantBoardingGPX.java new file mode 100644 index 0000000..fe9510f --- /dev/null +++ b/src/main/java/samples/MerchantBoarding/MerchantBoardingGPX.java @@ -0,0 +1,296 @@ +package samples.MerchantBoarding; + +import Api.MerchantBoardingApi; +import Data.MerchantBoardingConfiguration; +import Invokers.ApiClient; +import Invokers.ApiException; +import Model.*; +import com.cybersource.authsdk.core.MerchantConfig; + +import java.lang.invoke.MethodHandles; +import java.util.HashMap; +import java.util.Map; +import java.util.Properties; +import java.util.UUID; + +public class MerchantBoardingGPX { + + + private static String responseCode = null; + private static String status = null; + private static Properties merchantProp; + + public static void WriteLogAudit(int status) { + String filename = MethodHandles.lookup().lookupClass().getSimpleName(); + System.out.println("[Sample Code Testing] [" + filename + "] " + status); + } + + public static void main(String args[]) throws Exception { + // Accept required parameters from args[] and pass to run. + run(); + + } + + + public static InlineResponse2012 run() { + + PostRegistrationBody reqObj=new PostRegistrationBody(); + + Boardingv1registrationsOrganizationInformation organizationInformation=new Boardingv1registrationsOrganizationInformation(); + organizationInformation.parentOrganizationId("apitester00"); + organizationInformation.type(Boardingv1registrationsOrganizationInformation.TypeEnum.MERCHANT); + organizationInformation.configurable(true); + + Boardingv1registrationsOrganizationInformationBusinessInformation businessInformation=new Boardingv1registrationsOrganizationInformationBusinessInformation(); + businessInformation.name("StuartWickedFastEatz"); + Boardingv1registrationsOrganizationInformationBusinessInformationAddress address=new Boardingv1registrationsOrganizationInformationBusinessInformationAddress(); + address.country("US"); + address.address1("123456 SandMarket"); + address.locality("ORMOND BEACH"); + address.administrativeArea("FL"); + address.postalCode("32176"); + businessInformation.address(address); + businessInformation.websiteUrl("https://www.StuartWickedEats.com"); + businessInformation.phoneNumber("6574567813"); + + Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact businessContact=new Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact(); + businessContact.firstName("Stuart"); + businessContact.lastName("Stuart"); + businessContact.phoneNumber("6574567813"); + businessContact.email("svc_email_bt@corpdev.visa.com"); + businessInformation.businessContact(businessContact); + businessInformation.merchantCategoryCode("5999"); + organizationInformation.businessInformation(businessInformation); + + reqObj.organizationInformation(organizationInformation); + + + Boardingv1registrationsProductInformation productInformation=new Boardingv1registrationsProductInformation(); + Boardingv1registrationsProductInformationSelectedProducts selectedProducts=new Boardingv1registrationsProductInformationSelectedProducts(); + + PaymentsProducts payments=new PaymentsProducts(); + PaymentsProductsCardProcessing cardProcessing=new PaymentsProductsCardProcessing(); + PaymentsProductsCardProcessingSubscriptionInformation subscriptionInformation=new PaymentsProductsCardProcessingSubscriptionInformation(); + + subscriptionInformation.enabled(true); + Map features=new HashMap<>(); + + PaymentsProductsCardProcessingSubscriptionInformationFeatures obj1=new PaymentsProductsCardProcessingSubscriptionInformationFeatures(); + obj1.enabled(true); + features.put("cardNotPresent",obj1); + features.put("cardPresent",obj1); + subscriptionInformation.features(features); + cardProcessing.subscriptionInformation(subscriptionInformation); + + + PaymentsProductsCardProcessingConfigurationInformation configurationInformation=new PaymentsProductsCardProcessingConfigurationInformation(); + + CardProcessingConfig configurations=new CardProcessingConfig(); + CardProcessingConfigCommon common=new CardProcessingConfigCommon(); + common.merchantCategoryCode("1799"); + common.defaultAuthTypeCode(CardProcessingConfigCommon.DefaultAuthTypeCodeEnum.FINAL); + common.foodAndConsumerServiceId("1456"); + common.masterCardAssignedId("4567"); + common.sicCode("1345"); + common.enablePartialAuth(false); + common.allowCapturesGreaterThanAuthorizations(false); + common.enableDuplicateMerchantReferenceNumberBlocking(false); + common.creditCardRefundLimitPercent("2"); + common.businessCenterCreditCardRefundLimitPercent("3"); + + + Map processors=new HashMap<>(); + CardProcessingConfigCommonProcessors obj5=new CardProcessingConfigCommonProcessors(); + CardProcessingConfigCommonAcquirer acquirer=new CardProcessingConfigCommonAcquirer(); + + acquirer.countryCode("840_usa"); + acquirer.fileDestinationBin("123456"); + acquirer.interbankCardAssociationId("1256"); + acquirer.institutionId("113366"); + acquirer.discoverInstitutionId("1567"); + + obj5.acquirer(acquirer); + + Map currencies=new HashMap<>(); + + CardProcessingConfigCommonCurrencies1 obj6=new CardProcessingConfigCommonCurrencies1(); + obj6.enabled(true); + obj6.enabledCardPresent(false); + obj6.enabledCardNotPresent(true); + obj6.terminalId(""); + obj6.serviceEnablementNumber(""); + + currencies.put("AED",obj6); + + obj5.currencies(currencies); + + Map paymentTypes=new HashMap<>(); + CardProcessingConfigCommonPaymentTypes obj7=new CardProcessingConfigCommonPaymentTypes(); + obj7.enabled(true); + + paymentTypes.put("MASTERCARD",obj7); + paymentTypes.put("DISCOVER",obj7); + paymentTypes.put("JCB",obj7); + paymentTypes.put("VISA",obj7); + paymentTypes.put("DINERS_CLUB",obj7); + paymentTypes.put("PIN_DEBIT",obj7); + + obj5.paymentTypes(paymentTypes); + + obj5.allowMultipleBills(true); + obj5.batchGroup("gpx"); + obj5.businessApplicationId("AA"); + obj5.enhancedData("disabled"); + obj5.fireSafetyIndicator(false); + obj5.abaNumber("1122445566778"); + obj5.merchantVerificationValue("234"); + obj5.quasiCash(false); + obj5.merchantId("112233"); + obj5.terminalId("112244"); + + processors.put("gpx",obj5); + + common.processors(processors); + + configurations.common(common); + + CardProcessingConfigFeatures features2=new CardProcessingConfigFeatures(); + + CardProcessingConfigFeaturesCardNotPresent cardNotPresent=new CardProcessingConfigFeaturesCardNotPresent(); + + Map processors3=new HashMap<>(); + CardProcessingConfigFeaturesCardNotPresentProcessors obj9=new CardProcessingConfigFeaturesCardNotPresentProcessors(); + + obj9.enableEmsTransactionRiskScore(true); + obj9.relaxAddressVerificationSystem(true); + obj9.relaxAddressVerificationSystemAllowExpiredCard(true); + obj9.relaxAddressVerificationSystemAllowZipWithoutCountry(true); + + processors3.put("gpx",obj9); + cardNotPresent.processors(processors3); + + cardNotPresent.visaStraightThroughProcessingOnly(false); + cardNotPresent.ignoreAddressVerificationSystem(false); + + features2.cardNotPresent(cardNotPresent); + + CardProcessingConfigFeaturesCardPresent cardPresent=new CardProcessingConfigFeaturesCardPresent(); + + Map processors2=new HashMap<>(); + CardProcessingConfigFeaturesCardPresentProcessors obj4=new CardProcessingConfigFeaturesCardPresentProcessors(); + + obj4.financialInstitutionId("1347"); + obj4.pinDebitNetworkOrder("23456"); + obj4.pinDebitReimbursementCode("43567"); + obj4.defaultPointOfSaleTerminalId("5432"); + + processors2.put("gpx",obj4); + + cardPresent.processors(processors2); + + cardPresent.enableTerminalIdLookup(false); + features2.cardPresent(cardPresent); + + configurations.features(features2); + configurationInformation.configurations(configurations); + UUID templateId = UUID.fromString("D2A7C000-5FCA-493A-AD21-469744A19EEA"); + configurationInformation.templateId(templateId); + + cardProcessing.configurationInformation(configurationInformation); + payments.cardProcessing(cardProcessing); + + PaymentsProductsVirtualTerminal virtualTerminal=new PaymentsProductsVirtualTerminal(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation5=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation5.enabled(true); + virtualTerminal.subscriptionInformation(subscriptionInformation5); + + PaymentsProductsVirtualTerminalConfigurationInformation configurationInformation5=new PaymentsProductsVirtualTerminalConfigurationInformation(); + UUID templateId2 = UUID.fromString("9FA1BB94-5119-48D3-B2E5-A81FD3C657B5"); + configurationInformation5.templateId(templateId2); + virtualTerminal.configurationInformation(configurationInformation5); + + payments.virtualTerminal(virtualTerminal); + + PaymentsProductsTax customerInvoicing=new PaymentsProductsTax(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation6=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation6.enabled(true); + customerInvoicing.subscriptionInformation(subscriptionInformation6); + payments.customerInvoicing(customerInvoicing); + + selectedProducts.payments(payments); + + RiskProducts risk=new RiskProducts(); + + selectedProducts.risk(risk); + + CommerceSolutionsProducts commerceSolutions=new CommerceSolutionsProducts(); + + CommerceSolutionsProductsTokenManagement tokenManagement=new CommerceSolutionsProductsTokenManagement(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation7=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation7.enabled(true); + tokenManagement.subscriptionInformation(subscriptionInformation7); + + CommerceSolutionsProductsTokenManagementConfigurationInformation configurationInformation7=new CommerceSolutionsProductsTokenManagementConfigurationInformation(); + + UUID templateId3 = UUID.fromString("D62BEE20-DCFD-4AA2-8723-BA3725958ABA"); + configurationInformation7.templateId(templateId3); + tokenManagement.configurationInformation(configurationInformation7); + + commerceSolutions.tokenManagement(tokenManagement); + selectedProducts.commerceSolutions(commerceSolutions); + + ValueAddedServicesProducts valueAddedServices=new ValueAddedServicesProducts(); + + PaymentsProductsTax transactionSearch=new PaymentsProductsTax(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation9=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation9.enabled(true); + transactionSearch.subscriptionInformation(subscriptionInformation9); + valueAddedServices.transactionSearch(transactionSearch); + + PaymentsProductsTax reporting=new PaymentsProductsTax(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation3=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation3.enabled(true); + reporting.subscriptionInformation(subscriptionInformation3); + valueAddedServices.reporting(reporting); + + selectedProducts.valueAddedServices(valueAddedServices); + + productInformation.selectedProducts(selectedProducts); + reqObj.productInformation(productInformation); + + + InlineResponse2012 result=null; + + try { + //Boarding API support only JWT Auth Type + merchantProp = MerchantBoardingConfiguration.getMerchantConfigForBoardingAPI(); + ApiClient apiClient = new ApiClient(); + MerchantConfig merchantConfig = new MerchantConfig(merchantProp); + apiClient.merchantConfig = merchantConfig; + + MerchantBoardingApi apiInstance = new MerchantBoardingApi(apiClient); + result = apiInstance.postRegistration(reqObj, null); + + responseCode = apiClient.responseCode; + status = apiClient.status; + System.out.println("ResponseCode :" + responseCode); + System.out.println("ResponseMessage :" + status); + System.out.println(result); + WriteLogAudit(Integer.parseInt(responseCode)); + } catch (ApiException e) { + e.printStackTrace(); + WriteLogAudit(e.getCode()); + System.out.println("Msg.."+e.getMessage()+" Respbody.."+e.getResponseBody()+" cause.."+e.getCause()); + } catch (Exception e) { + e.printStackTrace(); + } + + + + return result; + } +} diff --git a/src/main/java/samples/MerchantBoarding/MerchantBoardingSmartFDC.java b/src/main/java/samples/MerchantBoarding/MerchantBoardingSmartFDC.java new file mode 100644 index 0000000..ef544fd --- /dev/null +++ b/src/main/java/samples/MerchantBoarding/MerchantBoardingSmartFDC.java @@ -0,0 +1,226 @@ +package samples.MerchantBoarding; + +import Api.MerchantBoardingApi; +import Data.MerchantBoardingConfiguration; +import Invokers.ApiClient; +import Invokers.ApiException; +import Model.*; +import com.cybersource.authsdk.core.MerchantConfig; + +import java.lang.invoke.MethodHandles; +import java.util.HashMap; +import java.util.Map; +import java.util.Properties; +import java.util.UUID; + +public class MerchantBoardingSmartFDC { + + + + private static String responseCode = null; + private static String status = null; + private static Properties merchantProp; + + public static void WriteLogAudit(int status) { + String filename = MethodHandles.lookup().lookupClass().getSimpleName(); + System.out.println("[Sample Code Testing] [" + filename + "] " + status); + } + + public static void main(String args[]) throws Exception { + // Accept required parameters from args[] and pass to run. + run(); + + } + + + public static InlineResponse2012 run() { + + PostRegistrationBody reqObj=new PostRegistrationBody(); + + Boardingv1registrationsOrganizationInformation organizationInformation=new Boardingv1registrationsOrganizationInformation(); + organizationInformation.parentOrganizationId("apitester00"); + organizationInformation.type(Boardingv1registrationsOrganizationInformation.TypeEnum.MERCHANT); + organizationInformation.configurable(true); + + Boardingv1registrationsOrganizationInformationBusinessInformation businessInformation=new Boardingv1registrationsOrganizationInformationBusinessInformation(); + businessInformation.name("StuartWickedFastEatz"); + Boardingv1registrationsOrganizationInformationBusinessInformationAddress address=new Boardingv1registrationsOrganizationInformationBusinessInformationAddress(); + address.country("US"); + address.address1("123456 SandMarket"); + address.locality("ORMOND BEACH"); + address.administrativeArea("FL"); + address.postalCode("32176"); + businessInformation.address(address); + businessInformation.websiteUrl("https://www.StuartWickedEats.com"); + businessInformation.phoneNumber("6574567813"); + + Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact businessContact=new Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact(); + businessContact.firstName("Stuart"); + businessContact.lastName("Stuart"); + businessContact.phoneNumber("6574567813"); + businessContact.email("svc_email_bt@corpdev.visa.com"); + businessInformation.businessContact(businessContact); + businessInformation.merchantCategoryCode("5999"); + organizationInformation.businessInformation(businessInformation); + + reqObj.organizationInformation(organizationInformation); + + + Boardingv1registrationsProductInformation productInformation=new Boardingv1registrationsProductInformation(); + Boardingv1registrationsProductInformationSelectedProducts selectedProducts=new Boardingv1registrationsProductInformationSelectedProducts(); + + PaymentsProducts payments=new PaymentsProducts(); + PaymentsProductsCardProcessing cardProcessing=new PaymentsProductsCardProcessing(); + PaymentsProductsCardProcessingSubscriptionInformation subscriptionInformation=new PaymentsProductsCardProcessingSubscriptionInformation(); + + subscriptionInformation.enabled(true); + Map features=new HashMap<>(); + + PaymentsProductsCardProcessingSubscriptionInformationFeatures obj1=new PaymentsProductsCardProcessingSubscriptionInformationFeatures(); + obj1.enabled(true); + features.put("cardNotPresent",obj1); + features.put("cardPresent",obj1); + subscriptionInformation.features(features); + cardProcessing.subscriptionInformation(subscriptionInformation); + + PaymentsProductsCardProcessingConfigurationInformation configurationInformation=new PaymentsProductsCardProcessingConfigurationInformation(); + + CardProcessingConfig configurations=new CardProcessingConfig(); + CardProcessingConfigCommon common=new CardProcessingConfigCommon(); + common.merchantCategoryCode("1799"); + common.defaultAuthTypeCode(CardProcessingConfigCommon.DefaultAuthTypeCodeEnum.FINAL); + common.enablePartialAuth(true); + + Map processors=new HashMap<>(); + CardProcessingConfigCommonProcessors obj5=new CardProcessingConfigCommonProcessors(); + CardProcessingConfigCommonAcquirer acquirer=new CardProcessingConfigCommonAcquirer(); + + obj5.acquirer(acquirer); + + Map paymentTypes=new HashMap<>(); + CardProcessingConfigCommonPaymentTypes obj7=new CardProcessingConfigCommonPaymentTypes(); + obj7.enabled(true); + + paymentTypes.put("MASTERCARD",obj7); + paymentTypes.put("DISCOVER",obj7); + paymentTypes.put("JCB",obj7); + paymentTypes.put("VISA",obj7); + paymentTypes.put("DINERS_CLUB",obj7); + paymentTypes.put("AMERICAN_EXPRESS",obj7); + + obj5.paymentTypes(paymentTypes); + + obj5.batchGroup("smartfdc_00"); + obj5.merchantId("00001234567"); + obj5.terminalId("00007654321"); + + processors.put("smartfdc",obj5); + + common.processors(processors); + + configurations.common(common); + + + configurationInformation.configurations(configurations); + + UUID templateId = UUID.fromString("3173DA78-A71E-405B-B79C-928C1A9C6AB2"); + configurationInformation.templateId(templateId); + + cardProcessing.configurationInformation(configurationInformation); + payments.cardProcessing(cardProcessing); + + PaymentsProductsVirtualTerminal virtualTerminal=new PaymentsProductsVirtualTerminal(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation5=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation5.enabled(true); + virtualTerminal.subscriptionInformation(subscriptionInformation5); + + PaymentsProductsVirtualTerminalConfigurationInformation configurationInformation5=new PaymentsProductsVirtualTerminalConfigurationInformation(); + UUID templateId2 = UUID.fromString("9FA1BB94-5119-48D3-B2E5-A81FD3C657B5"); + configurationInformation5.templateId(templateId2); + virtualTerminal.configurationInformation(configurationInformation5); + + payments.virtualTerminal(virtualTerminal); + + PaymentsProductsTax customerInvoicing=new PaymentsProductsTax(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation6=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation6.enabled(true); + customerInvoicing.subscriptionInformation(subscriptionInformation6); + payments.customerInvoicing(customerInvoicing); + + selectedProducts.payments(payments); + + RiskProducts risk=new RiskProducts(); + + selectedProducts.risk(risk); + + CommerceSolutionsProducts commerceSolutions=new CommerceSolutionsProducts(); + + CommerceSolutionsProductsTokenManagement tokenManagement=new CommerceSolutionsProductsTokenManagement(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation7=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation7.enabled(true); + tokenManagement.subscriptionInformation(subscriptionInformation7); + + CommerceSolutionsProductsTokenManagementConfigurationInformation configurationInformation7=new CommerceSolutionsProductsTokenManagementConfigurationInformation(); + + UUID templateId3 = UUID.fromString("D62BEE20-DCFD-4AA2-8723-BA3725958ABA"); + configurationInformation7.templateId(templateId3); + tokenManagement.configurationInformation(configurationInformation7); + + commerceSolutions.tokenManagement(tokenManagement); + selectedProducts.commerceSolutions(commerceSolutions); + + ValueAddedServicesProducts valueAddedServices=new ValueAddedServicesProducts(); + + PaymentsProductsTax transactionSearch=new PaymentsProductsTax(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation9=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation9.enabled(true); + transactionSearch.subscriptionInformation(subscriptionInformation9); + valueAddedServices.transactionSearch(transactionSearch); + + PaymentsProductsTax reporting=new PaymentsProductsTax(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation3=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation3.enabled(true); + reporting.subscriptionInformation(subscriptionInformation3); + valueAddedServices.reporting(reporting); + + selectedProducts.valueAddedServices(valueAddedServices); + + productInformation.selectedProducts(selectedProducts); + reqObj.productInformation(productInformation); + + + InlineResponse2012 result=null; + + try { + //Boarding API support only JWT Auth Type + merchantProp = MerchantBoardingConfiguration.getMerchantConfigForBoardingAPI(); + ApiClient apiClient = new ApiClient(); + MerchantConfig merchantConfig = new MerchantConfig(merchantProp); + apiClient.merchantConfig = merchantConfig; + + MerchantBoardingApi apiInstance = new MerchantBoardingApi(apiClient); + result = apiInstance.postRegistration(reqObj, null); + + responseCode = apiClient.responseCode; + status = apiClient.status; + System.out.println("ResponseCode :" + responseCode); + System.out.println("ResponseMessage :" + status); + System.out.println(result); + WriteLogAudit(Integer.parseInt(responseCode)); + } catch (ApiException e) { + e.printStackTrace(); + WriteLogAudit(e.getCode()); + System.out.println("Msg.."+e.getMessage()+" Respbody.."+e.getResponseBody()+" cause.."+e.getCause()); + } catch (Exception e) { + e.printStackTrace(); + } + + + + return result; + } +} diff --git a/src/main/java/samples/MerchantBoarding/MerchantBoardingTSYS.java b/src/main/java/samples/MerchantBoarding/MerchantBoardingTSYS.java new file mode 100644 index 0000000..7e40d28 --- /dev/null +++ b/src/main/java/samples/MerchantBoarding/MerchantBoardingTSYS.java @@ -0,0 +1,271 @@ +package samples.MerchantBoarding; + +import Api.MerchantBoardingApi; +import Data.MerchantBoardingConfiguration; +import Invokers.ApiClient; +import Invokers.ApiException; +import Model.*; +import com.cybersource.authsdk.core.MerchantConfig; + +import java.lang.invoke.MethodHandles; +import java.util.HashMap; +import java.util.Map; +import java.util.Properties; +import java.util.UUID; + +public class MerchantBoardingTSYS { + + + private static String responseCode = null; + private static String status = null; + private static Properties merchantProp; + + public static void WriteLogAudit(int status) { + String filename = MethodHandles.lookup().lookupClass().getSimpleName(); + System.out.println("[Sample Code Testing] [" + filename + "] " + status); + } + + public static void main(String args[]) throws Exception { + // Accept required parameters from args[] and pass to run. + run(); + + } + + + public static InlineResponse2012 run() { + + PostRegistrationBody reqObj=new PostRegistrationBody(); + + Boardingv1registrationsOrganizationInformation organizationInformation=new Boardingv1registrationsOrganizationInformation(); + organizationInformation.parentOrganizationId("apitester00"); + organizationInformation.type(Boardingv1registrationsOrganizationInformation.TypeEnum.MERCHANT); + organizationInformation.configurable(true); + + Boardingv1registrationsOrganizationInformationBusinessInformation businessInformation=new Boardingv1registrationsOrganizationInformationBusinessInformation(); + businessInformation.name("StuartWickedFastEatz"); + Boardingv1registrationsOrganizationInformationBusinessInformationAddress address=new Boardingv1registrationsOrganizationInformationBusinessInformationAddress(); + address.country("US"); + address.address1("123456 SandMarket"); + address.locality("ORMOND BEACH"); + address.administrativeArea("FL"); + address.postalCode("32176"); + businessInformation.address(address); + businessInformation.websiteUrl("https://www.StuartWickedEats.com"); + businessInformation.phoneNumber("6574567813"); + + Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact businessContact=new Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact(); + businessContact.firstName("Stuart"); + businessContact.lastName("Stuart"); + businessContact.phoneNumber("6574567813"); + businessContact.email("svc_email_bt@corpdev.visa.com"); + businessInformation.businessContact(businessContact); + businessInformation.merchantCategoryCode("5999"); + organizationInformation.businessInformation(businessInformation); + + reqObj.organizationInformation(organizationInformation); + + + Boardingv1registrationsProductInformation productInformation=new Boardingv1registrationsProductInformation(); + Boardingv1registrationsProductInformationSelectedProducts selectedProducts=new Boardingv1registrationsProductInformationSelectedProducts(); + + PaymentsProducts payments=new PaymentsProducts(); + PaymentsProductsCardProcessing cardProcessing=new PaymentsProductsCardProcessing(); + PaymentsProductsCardProcessingSubscriptionInformation subscriptionInformation=new PaymentsProductsCardProcessingSubscriptionInformation(); + + subscriptionInformation.enabled(true); + Map features=new HashMap<>(); + + PaymentsProductsCardProcessingSubscriptionInformationFeatures obj1=new PaymentsProductsCardProcessingSubscriptionInformationFeatures(); + obj1.enabled(true); + features.put("cardNotPresent",obj1); + features.put("cardPresent",obj1); + subscriptionInformation.features(features); + cardProcessing.subscriptionInformation(subscriptionInformation); + + + PaymentsProductsCardProcessingConfigurationInformation configurationInformation=new PaymentsProductsCardProcessingConfigurationInformation(); + + CardProcessingConfig configurations=new CardProcessingConfig(); + CardProcessingConfigCommon common=new CardProcessingConfigCommon(); + common.merchantCategoryCode("5999"); + common.processLevel3Data("ignored"); + common.defaultAuthTypeCode(CardProcessingConfigCommon.DefaultAuthTypeCodeEnum.FINAL); + common.enablePartialAuth(false); + common.amexVendorCode("2233"); + + CardProcessingConfigCommonMerchantDescriptorInformation merchantDescriptorInformation=new CardProcessingConfigCommonMerchantDescriptorInformation(); + + merchantDescriptorInformation.city("cpertino"); + merchantDescriptorInformation.country("USA"); + merchantDescriptorInformation.name("kumar"); + merchantDescriptorInformation.state("CA"); + merchantDescriptorInformation.phone("888555333"); + merchantDescriptorInformation.zip("94043"); + merchantDescriptorInformation.street("steet1"); + + common.merchantDescriptorInformation(merchantDescriptorInformation); + + Map processors=new HashMap<>(); + CardProcessingConfigCommonProcessors obj5=new CardProcessingConfigCommonProcessors(); + CardProcessingConfigCommonAcquirer acquirer=new CardProcessingConfigCommonAcquirer(); + + obj5.acquirer(acquirer); + + Map currencies=new HashMap<>(); + + + CardProcessingConfigCommonCurrencies1 obj6=new CardProcessingConfigCommonCurrencies1(); + obj6.enabled(true); + obj6.enabledCardPresent(true); + obj6.enabledCardNotPresent(true); + obj6.terminalId("1234"); + obj6.serviceEnablementNumber(""); + + currencies.put("CAD",obj6); + + obj5.currencies(currencies); + + Map paymentTypes=new HashMap<>(); + CardProcessingConfigCommonPaymentTypes obj7=new CardProcessingConfigCommonPaymentTypes(); + obj7.enabled(true); + + paymentTypes.put("MASTERCARD",obj7); + paymentTypes.put("VISA",obj7); + + obj5.paymentTypes(paymentTypes); + + obj5.bankNumber("234576"); + obj5.chainNumber("223344"); + obj5.batchGroup("vital_1130"); + obj5.enhancedData("disabled"); + obj5.industryCode(CardProcessingConfigCommonProcessors.IndustryCodeEnum.D); + obj5.merchantBinNumber("765576"); + obj5.merchantId("834215123456"); + obj5.merchantLocationNumber("00001"); + obj5.storeID("2563"); + obj5.vitalNumber("71234567"); + obj5.quasiCash(false); + obj5.sendAmexLevel2Data(null); + obj5.softDescriptorType("1 - trans_ref_no"); + obj5.travelAgencyCode("2356"); + obj5.travelAgencyName("Agent"); + + processors.put("tsys",obj5); + + common.processors(processors); + + configurations.common(common); + + CardProcessingConfigFeatures features2=new CardProcessingConfigFeatures(); + + CardProcessingConfigFeaturesCardNotPresent cardNotPresent=new CardProcessingConfigFeaturesCardNotPresent(); + + cardNotPresent.visaStraightThroughProcessingOnly(false); + cardNotPresent.amexTransactionAdviceAddendum1(null); + + features2.cardNotPresent(cardNotPresent); + + + configurations.features(features2); + configurationInformation.configurations(configurations); + UUID templateId = UUID.fromString("818048AD-2860-4D2D-BC39-2447654628A1"); + configurationInformation.templateId(templateId); + + cardProcessing.configurationInformation(configurationInformation); + payments.cardProcessing(cardProcessing); + + PaymentsProductsVirtualTerminal virtualTerminal=new PaymentsProductsVirtualTerminal(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation5=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation5.enabled(true); + virtualTerminal.subscriptionInformation(subscriptionInformation5); + + PaymentsProductsVirtualTerminalConfigurationInformation configurationInformation5=new PaymentsProductsVirtualTerminalConfigurationInformation(); + UUID templateId2 = UUID.fromString("9FA1BB94-5119-48D3-B2E5-A81FD3C657B5"); + configurationInformation5.templateId(templateId2); + virtualTerminal.configurationInformation(configurationInformation5); + + payments.virtualTerminal(virtualTerminal); + + PaymentsProductsTax customerInvoicing=new PaymentsProductsTax(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation6=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation6.enabled(true); + customerInvoicing.subscriptionInformation(subscriptionInformation6); + payments.customerInvoicing(customerInvoicing); + + selectedProducts.payments(payments); + + RiskProducts risk=new RiskProducts(); + + selectedProducts.risk(risk); + + CommerceSolutionsProducts commerceSolutions=new CommerceSolutionsProducts(); + + CommerceSolutionsProductsTokenManagement tokenManagement=new CommerceSolutionsProductsTokenManagement(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation7=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation7.enabled(true); + tokenManagement.subscriptionInformation(subscriptionInformation7); + + CommerceSolutionsProductsTokenManagementConfigurationInformation configurationInformation7=new CommerceSolutionsProductsTokenManagementConfigurationInformation(); + + UUID templateId3 = UUID.fromString("D62BEE20-DCFD-4AA2-8723-BA3725958ABA"); + configurationInformation7.templateId(templateId3); + tokenManagement.configurationInformation(configurationInformation7); + + commerceSolutions.tokenManagement(tokenManagement); + selectedProducts.commerceSolutions(commerceSolutions); + + ValueAddedServicesProducts valueAddedServices=new ValueAddedServicesProducts(); + + PaymentsProductsTax transactionSearch=new PaymentsProductsTax(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation9=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation9.enabled(true); + transactionSearch.subscriptionInformation(subscriptionInformation9); + valueAddedServices.transactionSearch(transactionSearch); + + PaymentsProductsTax reporting=new PaymentsProductsTax(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation3=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation3.enabled(true); + reporting.subscriptionInformation(subscriptionInformation3); + valueAddedServices.reporting(reporting); + + selectedProducts.valueAddedServices(valueAddedServices); + + productInformation.selectedProducts(selectedProducts); + reqObj.productInformation(productInformation); + + + InlineResponse2012 result=null; + + try { + //Boarding API support only JWT Auth Type + merchantProp = MerchantBoardingConfiguration.getMerchantConfigForBoardingAPI(); + ApiClient apiClient = new ApiClient(); + MerchantConfig merchantConfig = new MerchantConfig(merchantProp); + apiClient.merchantConfig = merchantConfig; + + MerchantBoardingApi apiInstance = new MerchantBoardingApi(apiClient); + result = apiInstance.postRegistration(reqObj, null); + + responseCode = apiClient.responseCode; + status = apiClient.status; + System.out.println("ResponseCode :" + responseCode); + System.out.println("ResponseMessage :" + status); + System.out.println(result); + WriteLogAudit(Integer.parseInt(responseCode)); + } catch (ApiException e) { + e.printStackTrace(); + WriteLogAudit(e.getCode()); + System.out.println("Msg.."+e.getMessage()+" Respbody.."+e.getResponseBody()+" cause.."+e.getCause()); + } catch (Exception e) { + e.printStackTrace(); + } + + + + return result; + } +} diff --git a/src/main/java/samples/MerchantBoarding/MerchantBoardingVPC.java b/src/main/java/samples/MerchantBoarding/MerchantBoardingVPC.java new file mode 100644 index 0000000..7e596bb --- /dev/null +++ b/src/main/java/samples/MerchantBoarding/MerchantBoardingVPC.java @@ -0,0 +1,300 @@ +package samples.MerchantBoarding; + +import Api.MerchantBoardingApi; +import Data.MerchantBoardingConfiguration; +import Invokers.ApiClient; +import Invokers.ApiException; +import Model.*; +import com.cybersource.authsdk.core.MerchantConfig; + +import java.lang.invoke.MethodHandles; +import java.util.HashMap; +import java.util.Map; +import java.util.Properties; +import java.util.UUID; + +public class MerchantBoardingVPC { + + private static String responseCode = null; + private static String status = null; + private static Properties merchantProp; + + public static void WriteLogAudit(int status) { + String filename = MethodHandles.lookup().lookupClass().getSimpleName(); + System.out.println("[Sample Code Testing] [" + filename + "] " + status); + } + + public static void main(String args[]) throws Exception { + // Accept required parameters from args[] and pass to run. + run(); + + } + + + public static InlineResponse2012 run() { + + PostRegistrationBody reqObj=new PostRegistrationBody(); + + Boardingv1registrationsOrganizationInformation organizationInformation=new Boardingv1registrationsOrganizationInformation(); + organizationInformation.parentOrganizationId("apitester00"); + organizationInformation.type(Boardingv1registrationsOrganizationInformation.TypeEnum.MERCHANT); + organizationInformation.configurable(true); + + Boardingv1registrationsOrganizationInformationBusinessInformation businessInformation=new Boardingv1registrationsOrganizationInformationBusinessInformation(); + businessInformation.name("StuartWickedFastEatz"); + Boardingv1registrationsOrganizationInformationBusinessInformationAddress address=new Boardingv1registrationsOrganizationInformationBusinessInformationAddress(); + address.country("US"); + address.address1("123456 SandMarket"); + address.locality("ORMOND BEACH"); + address.administrativeArea("FL"); + address.postalCode("32176"); + businessInformation.address(address); + businessInformation.websiteUrl("https://www.StuartWickedEats.com"); + businessInformation.phoneNumber("6574567813"); + + Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact businessContact=new Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact(); + businessContact.firstName("Stuart"); + businessContact.lastName("Stuart"); + businessContact.phoneNumber("6574567813"); + businessContact.email("svc_email_bt@corpdev.visa.com"); + businessInformation.businessContact(businessContact); + businessInformation.merchantCategoryCode("5999"); + organizationInformation.businessInformation(businessInformation); + + reqObj.organizationInformation(organizationInformation); + + + Boardingv1registrationsProductInformation productInformation=new Boardingv1registrationsProductInformation(); + Boardingv1registrationsProductInformationSelectedProducts selectedProducts=new Boardingv1registrationsProductInformationSelectedProducts(); + + PaymentsProducts payments=new PaymentsProducts(); + PaymentsProductsCardProcessing cardProcessing=new PaymentsProductsCardProcessing(); + PaymentsProductsCardProcessingSubscriptionInformation subscriptionInformation=new PaymentsProductsCardProcessingSubscriptionInformation(); + + subscriptionInformation.enabled(true); + Map features=new HashMap<>(); + + PaymentsProductsCardProcessingSubscriptionInformationFeatures obj1=new PaymentsProductsCardProcessingSubscriptionInformationFeatures(); + obj1.enabled(true); + features.put("cardNotPresent",obj1); + features.put("cardPresent",obj1); + subscriptionInformation.features(features); + cardProcessing.subscriptionInformation(subscriptionInformation); + + + PaymentsProductsCardProcessingConfigurationInformation configurationInformation=new PaymentsProductsCardProcessingConfigurationInformation(); + + CardProcessingConfig configurations=new CardProcessingConfig(); + CardProcessingConfigCommon common=new CardProcessingConfigCommon(); + common.merchantCategoryCode("1799"); + common.defaultAuthTypeCode(CardProcessingConfigCommon.DefaultAuthTypeCodeEnum.FINAL); + common.masterCardAssignedId(null); + common.sicCode(null); + common.enablePartialAuth(false); + + common.enableInterchangeOptimization(false); + common.enableSplitShipment(false); + common.visaDelegatedAuthenticationId("123457"); + + //TBC + common.domesticMerchantId("123458"); + // + common.creditCardRefundLimitPercent("2"); + common.businessCenterCreditCardRefundLimitPercent("3"); + common.allowCapturesGreaterThanAuthorizations(false); + common.enableDuplicateMerchantReferenceNumberBlocking(false); + + + Map processors=new HashMap<>(); + CardProcessingConfigCommonProcessors obj5=new CardProcessingConfigCommonProcessors(); + CardProcessingConfigCommonAcquirer acquirer=new CardProcessingConfigCommonAcquirer(); + + acquirer.countryCode("840_usa"); + acquirer.fileDestinationBin("444500"); + acquirer.interbankCardAssociationId("3684"); + acquirer.institutionId("444571"); + acquirer.discoverInstitutionId(null); + + + obj5.acquirer(acquirer); + + + Map paymentTypes=new HashMap<>(); + CardProcessingConfigCommonPaymentTypes obj7=new CardProcessingConfigCommonPaymentTypes(); + obj7.enabled(true); + + Map currencies=new HashMap<>(); + CardProcessingConfigCommonCurrencies obj2=new CardProcessingConfigCommonCurrencies(); + obj2.enabled(true); + obj2.enabledCardPresent(false); + obj2.enabledCardNotPresent(true); + obj2.terminalId("113366"); + obj2.merchantId("113355"); + obj2.serviceEnablementNumber(null); + + currencies.put("CAD",obj2); + currencies.put("USD",obj2); + + + obj7.currencies(currencies); + + paymentTypes.put("VISA",obj7); + + obj5.paymentTypes(paymentTypes); + + obj5.acquirerMerchantId("123456"); + obj5.allowMultipleBills(false); + obj5.batchGroup("vdcvantiv_est_00"); + obj5.businessApplicationId("AA"); + obj5.enableAutoAuthReversalAfterVoid(true); + obj5.enableExpresspayPanTranslation(null); + obj5.merchantVerificationValue("123456"); + obj5.quasiCash(false); + obj5.enableTransactionReferenceNumber(true); + + processors.put("VPC",obj5); + + common.processors(processors); + + configurations.common(common); + + CardProcessingConfigFeatures features2=new CardProcessingConfigFeatures(); + + CardProcessingConfigFeaturesCardNotPresent cardNotPresent=new CardProcessingConfigFeaturesCardNotPresent(); + + Map processors3=new HashMap<>(); + CardProcessingConfigFeaturesCardNotPresentProcessors obj9=new CardProcessingConfigFeaturesCardNotPresentProcessors(); + + obj9.enableEmsTransactionRiskScore(null); + obj9.relaxAddressVerificationSystem(true); + obj9.relaxAddressVerificationSystemAllowExpiredCard(true); + obj9.relaxAddressVerificationSystemAllowZipWithoutCountry(true); + + processors3.put("VPC",obj9); + cardNotPresent.processors(processors3); + + cardNotPresent.visaStraightThroughProcessingOnly(false); + cardNotPresent.ignoreAddressVerificationSystem(true); + + features2.cardNotPresent(cardNotPresent); + + CardProcessingConfigFeaturesCardPresent cardPresent=new CardProcessingConfigFeaturesCardPresent(); + + Map processors2=new HashMap<>(); + CardProcessingConfigFeaturesCardPresentProcessors obj4=new CardProcessingConfigFeaturesCardPresentProcessors(); + + + obj4.defaultPointOfSaleTerminalId("223355"); + obj4.defaultPointOfSaleTerminalId("223344"); + + processors2.put("VPC",obj4); + + cardPresent.processors(processors2); + + cardPresent.enableTerminalIdLookup(false); + features2.cardPresent(cardPresent); + + configurations.features(features2); + configurationInformation.configurations(configurations); + + UUID templateId = UUID.fromString("D671CE88-2F09-469C-A1B4-52C47812F792"); + configurationInformation.templateId(templateId); + + cardProcessing.configurationInformation(configurationInformation); + payments.cardProcessing(cardProcessing); + + PaymentsProductsVirtualTerminal virtualTerminal=new PaymentsProductsVirtualTerminal(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation5=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation5.enabled(true); + virtualTerminal.subscriptionInformation(subscriptionInformation5); + + PaymentsProductsVirtualTerminalConfigurationInformation configurationInformation5=new PaymentsProductsVirtualTerminalConfigurationInformation(); + UUID templateId2 = UUID.fromString("9FA1BB94-5119-48D3-B2E5-A81FD3C657B5"); + configurationInformation5.templateId(templateId2); + virtualTerminal.configurationInformation(configurationInformation5); + + payments.virtualTerminal(virtualTerminal); + + PaymentsProductsTax customerInvoicing=new PaymentsProductsTax(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation6=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + + subscriptionInformation6.enabled(true); + customerInvoicing.subscriptionInformation(subscriptionInformation6); + payments.customerInvoicing(customerInvoicing); + + selectedProducts.payments(payments); + + RiskProducts risk=new RiskProducts(); + + selectedProducts.risk(risk); + + CommerceSolutionsProducts commerceSolutions=new CommerceSolutionsProducts(); + + CommerceSolutionsProductsTokenManagement tokenManagement=new CommerceSolutionsProductsTokenManagement(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation7=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation7.enabled(true); + tokenManagement.subscriptionInformation(subscriptionInformation7); + + CommerceSolutionsProductsTokenManagementConfigurationInformation configurationInformation7=new CommerceSolutionsProductsTokenManagementConfigurationInformation(); + + UUID templateId3 = UUID.fromString("D62BEE20-DCFD-4AA2-8723-BA3725958ABA"); + configurationInformation7.templateId(templateId3); + tokenManagement.configurationInformation(configurationInformation7); + + commerceSolutions.tokenManagement(tokenManagement); + selectedProducts.commerceSolutions(commerceSolutions); + + ValueAddedServicesProducts valueAddedServices=new ValueAddedServicesProducts(); + + PaymentsProductsTax transactionSearch=new PaymentsProductsTax(); + + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation9=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation9.enabled(true); + transactionSearch.subscriptionInformation(subscriptionInformation9); + valueAddedServices.transactionSearch(transactionSearch); + + PaymentsProductsTax reporting=new PaymentsProductsTax(); + PaymentsProductsPayerAuthenticationSubscriptionInformation subscriptionInformation3=new PaymentsProductsPayerAuthenticationSubscriptionInformation(); + subscriptionInformation3.enabled(true); + reporting.subscriptionInformation(subscriptionInformation3); + valueAddedServices.reporting(reporting); + + selectedProducts.valueAddedServices(valueAddedServices); + + productInformation.selectedProducts(selectedProducts); + reqObj.productInformation(productInformation); + + + InlineResponse2012 result=null; + + try { + //Boarding API support only JWT Auth Type + merchantProp = MerchantBoardingConfiguration.getMerchantConfigForBoardingAPI(); + ApiClient apiClient = new ApiClient(); + MerchantConfig merchantConfig = new MerchantConfig(merchantProp); + apiClient.merchantConfig = merchantConfig; + + MerchantBoardingApi apiInstance = new MerchantBoardingApi(apiClient); + result = apiInstance.postRegistration(reqObj, null); + + responseCode = apiClient.responseCode; + status = apiClient.status; + System.out.println("ResponseCode :" + responseCode); + System.out.println("ResponseMessage :" + status); + System.out.println(result); + WriteLogAudit(Integer.parseInt(responseCode)); + } catch (ApiException e) { + e.printStackTrace(); + WriteLogAudit(e.getCode()); + System.out.println("Msg.."+e.getMessage()+" Respbody.."+e.getResponseBody()+" cause.."+e.getCause()); + } catch (Exception e) { + e.printStackTrace(); + } + + + + return result; + } +}