Simple SDKs

eWAY is the easiest way to accept payments in your app or on your website. Get integrated and start selling more, faster - in a range of languages using the eWAY SDKs, helpful documentation, and 24/7 support from real humans. eWAY - with you every step of the way.

JAVA SDK


Accept payments quickly and easily with eWAY using the eWAY Rapid ​Java SDK. Using the ​Java SDK provides convenient access to all the features of eWAY’s Rapid API, so you can create transactions, process refunds, query transactions, create token customers, and more!


Getting Started


Installation

The easiest way to add the eWAY Java SDK to your project is using Maven – it will add the SDK along with its required dependencies. 

To add the eWAY Java SDK, in your project’s pom.xml file add the following in the dependencies section: 

  1. <dependency>
  2.     <groupId>com.ewaypayments</groupId>
  3.     <artifactId>eway-rapid-java</artifactId>
  4.     <version>1.0.0</version>
  5. </dependency>


Since the eWAY Java SDK is in Maven Central, no extra repositories are required. 

To make development and testing with eWAY easy, get a free partner account which provides access to the eWAY Sandbox. 

 Now you are all set to build your eWAY integration! You can find code samples for integrating various eWAY functions as part of the eWAY Rapid API reference 



Example Integration


To demonstrate adding the eWAY ​Java SDK, this example will show how to accept a payment with the Responsive Shared Page

This example assumes that Maven is already installed and a new project is being started. To keep things simple, standard lines such as import statements aren’t shown. Only the eWAY specific code is shown so it can be added to your preferred framework. 

1. Add the eWAY Java SDK

In the project’s pom.xml, add the eWAY Java SDK dependency in the dependencies section:  
  1. <dependency>
  2.     <groupId>com.ewaypayments</groupId>
  3.     <artifactId>eway-rapid-java</artifactId>
  4.     <version>1.0.0</version>
  5. </dependency>

 Once completed,​ on the command line you can run

  1. maven install

 to download the eWAY Java SDK and dependencies. 

2. Load the eWAY Client

With the eWAY Java SDK installed, the next step is to add the eWAY integration to your project. To start, generate an instance of the eWAY Client which interacts with eWAY’s Rapid API. It needs an eWAY Rapid API key & password, along with the endpoint to connect to (Live or Sandbox): 

  1. String apiKey = "60CF3Ce97nRS1Z1Wp5m9kMmzHHEh8Rkuj31QCtVxjPWGYA9FymyqsK0Enm1P6mHJf0THbR";
  2. String password = "API-P4ss";
  3. String rapidEndpoint = "Sandbox";

  4. RapidClient client = RapidSDK.newRapidClient(apiKey, password, rapidEndpoint);


3. Create a Shared Payment URL


In order to send a customer to the Responsive Shared Page, a URL must be generated using the
create function. This accepts a PaymentMethod and a Transaction object. 

The PaymentMethod determines how the card data will be accepted (in this case ResponsiveShared) while the Transaction object contains customer and invoice details – more details of the variables that can be passed can be found in the
Rapid API reference

This step would usually take place after collecting the customer’s information in a checkout process. For this example, just some dummy data will be used:
 
  1. PaymentDetails paymentDetails = new PaymentDetails();
  2. paymentDetails.setTotalAmount(1000);

  3. transaction.setPaymentDetails(paymentDetails);
  4. // Set these to URLs on your website
  5. transaction.setRedirectURL("http://www.eway.com.au");
  6. transaction.setCancelURL("http://www.eway.com.au");
  7. transaction.setTransactionType(TransactionType.Purchase);

  8. CreateTransactionResponse response = client.create(PaymentMethod.ResponsiveShared, transaction);
 

To make sure everything went well, check getErrors is empty. If it isn’t, userDisplayMessage can be used to convert any error codes to human readable messages: 

  1. if (!response.getErrors().isEmpty()) {
  2.     for (String errorcode: response.getErrors()) {
  3.         System.out.println("Error Message: "
  4.             + RapidSDK.userDisplayMessage(errorcode, "en"));
  5.     }
  6. }

 

4. ​Redirect the Customer

​Once the shared page URL has been created, the customer can be redirected. How this is done will depend on the Java framework being used. For example, in a Servlet the method would be: 

  1. httpResponse.sendRedirect(response.getSharedPaymentUrl());

 So now a Responsive Shared Page URL has been created and the customer is redirected to complete their payment. 

5. ​​Fetch the Result

Once the customer has gone to the Responsive Shared Page and submitted their payment information, they will be redirected back to the RedirectUrl specified in the request. This page should use the AccessCode (passed as a query variable) to fetch the result of the transaction. 

  1. QueryTransactionResponse response =
  2.     client.queryTransaction(request.getParameter("AccessCode"));

 

Key information such as the success of the transaction and the transaction ID can be found in the transactionStatus of the response. If the transaction wasn’t successful, the reason can be found in the ResponsiveMessage. An example of handling this information would be: 

  1. if (response.getTransactionStatus().isStatus()) {
  2.     System.out.println("Payment successful! ID: " + response.getTransactionStatus().getTransactionID());
  3. } else {
  4.     String[] errorcodes = response.getTransactionStatus().getProcessingDetails().getResponseMessage().split(", ");
  5.    
  6.     for (String errorcode: errorcodes) {
  7.         System.out.println("Response Messages: "
  8.             + RapidSDK.userDisplayMessage(errorcode, "en"));
  9.     }
  10.  
  11. }
 
That’s it – a complete Responsive Shared Page integration! 

For more information on the functions available in the eWAY Java SDK, check out the eWAY Rapid API Reference

 

eWAY makes it easy for us to process and manage payments. They have an SDK that my developers liked working with and their payment management tools are very easy to use.

Dean Van Es, Managing Director FastCover