Search Overlay

Direct Debit

You can integrate your e-commerce application directly to our platform-agnostic Direct Debit API and process purchases and credits through a variety of bank schemes.

Click the links below to view our code samples.

Verify That the Service Is Accessible

boolean isOnline = apiClient.directDebitService().monitor();
                                

Direct Debit Purchases

Process a Purchase

Purchases purchaseresponse= Purchases.builder()
.merchantRefNum("ORDER_ID:1231")
.amount(10098)
.ach()
.accountHolderName("XYZ Company")
.accountType("CHECKING")
.accountNumber("988772192")
.routingNumber("211589828")
.payMethod("WEB")
.done()
.customerIp("192.0.126.111")
.profile()
.firstName("Joe")
.lastName("Smith")
.email("Joe.Smith@hotmail.com")
.done()
.billingDetails()
.street("100 Queen Street West")
.city("Los Angeles")
.state("CA")
.country("US")
.zip("90210")
.phone("3102649010")
.done()
.build();
Purchases response = apiClient.customerVaultService().submitPurchase(purchaseresponse);

Purchases purchaseresponse  = Purchases.builder()
.merchantRefNum("ORDER_ID:1235")
.amount(10038)
.ach()
.paymentToken(achBankAccounts.getPaymentToken())
.payMethod("WEB")
.done()
.build();
Purchases response = apiClient.customerVaultService().submitPurchase(purchaseresponse);

Purchases purchaseresponse = Purchases.builder()
.merchantRefNum(“ORDER_ID:1231”)
.amount(10098)
.eft()
.accountHolderName("XYZ Company")
.accountNumber(“336612”)
.transitNumber("22446")
.institutionId("001")
.done()
.customerIp("192.0.126.111")
.profile()
.firstName("Joe")
.lastName("Smith")
.email("Joe.Smith@hiotmail.com")
.done()
.billingDetails()
.street("100 Queen Street West")
.city("Los Angeles")
.state("CA")
.country("US")
.zip("90210")
.phone("6134491100")
.done()
.build();
Purchases response = apiClient.customerVaultService().submitPurchase(purchaseresponse);

Purchases purchaseresponse = Purchases.builder()
.merchantRefNum(“ORDER_ID:1231”)
.amount(10098)
.eft()
.paymentToken(eftBankAccounts.getPaymentToken())
.done()
.build();
Purchases response = apiClient.customerVaultService().submitPurchase(purchaseresponse);

Purchases purchaseresponse = Purchases.builder()
.merchantRefNum("ORDER_ID:1235")
.amount(10098)
.bacs()
.paymentToken("MlNZigR2IcPCyj4")
.done()
.build();
Purchases response = apiClient.customerVaultService().submitPurchase(purchaseresponse);

Purchases purchaseresponse = Purchases.builder()
.merchantRefNum("ORDER_ID:1235")
.amount(10098)
.sepa()
.paymentToken("Mk88c2UusFQQccm")
.done()
.build();
Purchases response = apiClient.customerVaultService().submitPurchase(purchaseresponse);

Cancel a Purchase

Purchases purchaseresponse = Purchases.builder()
.status("CANCELLED")
.id(Id.create("a02e52c7-c991-4418-966a-b62989cb0eae", Purchases.class))
.build();
Purchases response = apiClient.customerVaultService().cancelPurchase(purchaseresponse);

Look Up a Purchase

Purchases purchaseresponse = Purchases.builder()
.id(Id.create("a02e52c7-c991-4418-966a-b62989cb0eae", Purchases.class))
.build();
Purchases response = apiClient.customerVaultService().getPurchase(purchaseresponse);

String merchantRefNum="20160421-5718a3da57e8a";
Filter f=new Filter();
f.setLimit(2);
Pagerator<Purchases> response = Purchases.builder()
.merchantRefNum("20160421-5718a3da57e8a")
.build(),f;
Purchases response = apiClient.customerVaultService().getPurchases(purchaseresponse);

Direct Debit Standalone Credits

Process a Standalone Credit

StandaloneCredits standaloneresponse = StandaloneCredits.builder()
.merchantRefNum(java.util.UUID.randomUUID().toString())
.amount(10098)
.ach()
.accountHolderName("XYZ Company")
.accountType("CHECKING")
.accountNumber("970778344")
.routingNumber("211589828")
.payMethod("WEB")
.done()
.customerIp("192.0.126.111")
.profile()
.firstName("Joe")
.lastName("Smith")
.email("Joe.Smith@hotmail.com")
.done()
.billingDetails()
.street("100 Queen Street West")
.city("Los Angeles")
.state("CA")
.country("US")
.zip("90210")
.phone("3102649010")
.done()
.build();
StandaloneCredits response = apiClient.customerVaultService().submitStandaloneCredit(standaloneresponse);

StandaloneCredits standaloneresponse = StandaloneCredits.builder()
.merchantRefNum("ORDER_ID:1235")
.amount(10038)
.ach()
.paymentToken(achBankAccounts.getPaymentToken())
.payMethod("WEB")
.done()
.build();
StandaloneCredits response = apiClient.customerVaultService().submitStandaloneCredit(standaloneresponse);

StandaloneCredits standaloneresponse = StandaloneCredits.builder()
.merchantRefNum(“ORDER_ID:1231”)
.amount(10098)
.eft()
.accountHolderName("XYZ Company")
.accountNumber(“336612”)
.transitNumber("22446")
.institutionId("001")
.done()
.customerIp("192.0.126.111")
.profile()
.firstName("Joe")
.lastName("Smith")
.email("Joe.Smith@hiotmail.com")
.done()
.billingDetails()
.street("100 Queen Street West")
.city("Los Angeles")
.state("CA")
.country("US")
.zip("90210")
.phone("6134491100")
.done()
.build();
StandaloneCredits response = apiClient.customerVaultService().submitStandaloneCredit(standaloneresponse);

StandaloneCredits standaloneresponse = StandaloneCredits.builder()
.merchantRefNum(“ORDER_ID:1231”)
.amount(10098)
.eft()
.paymentToken(eftBankAccounts.getPaymentToken())
.done()
.build();
StandaloneCredits response = apiClient.customerVaultService().submitStandaloneCredit(standaloneresponse);

StandaloneCredits standaloneresponse = StandaloneCredits.builder()
.merchantRefNum("ORDER_ID:1235")
.amount(10098)
.bacs()
.paymentToken("MlNZigR2IcPCyj4")
.done()
.build();
StandaloneCredits response = apiClient.customerVaultService().submitStandaloneCredit(standaloneresponse);

Cancel a Standalone Credit

StandaloneCredits standaloneresponse = StandaloneCredits.builder()
.status("CANCELLED")
.id(Id.create("a02e52c7-c991-4418-966a-b62989cb0eae", StandaloneCredits .class))
.build();
StandaloneCredits response = apiClient.customerVaultService().cancelStandaloneCredit(standaloneresponse);

Look Up a Standalone Credit

StandaloneCredits standaloneresponse = StandaloneCredits.builder()
.id(Id.create("a02e52c7-c991-4418-966a-b62989cb0eae", StandaloneCredits .class))
.build();
StandaloneCredits response = apiClient.customerVaultService().getStandaloneCredit(standaloneresponse);

String merchantRefNum="20160421-5718a3da57e8a";
Filter f=new Filter();
f.setLimit(2);
Pagerator< StandaloneCredits > response = StandaloneCredits.builder()
.merchantRefNum("20160421-5718a3da57e8a")
.build(),f;
StandaloneCredits response = apiClient.customerVaultService().getStandaloneCredits(standaloneresponse);