diff --git a/CHANGELOG.md b/CHANGELOG.md index ae8b703..088e74c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,9 @@ # Changelog All notable changes to this project will be documented in this file. +## [3.1.18] +- Added possibility to pass client browser data in `MerchantApi` to support 3DS processing for wallet nontokenized flow (eg. GooglePay from desktop browser). + ## [3.1.17] - Added optional `Type` element (`CardType`: `CREDIT`, `DEBIT`, `CHARGE_CARD`) to `CardInformation` in API responses, exposing the card type derived from the BIN interchange group. diff --git a/build.gradle b/build.gradle index d73b3a8..7840c3e 100644 --- a/build.gradle +++ b/build.gradle @@ -9,7 +9,7 @@ plugins { } group = 'com.altapay' -version = '3.1.17' +version = '3.1.18' repositories { mavenCentral() diff --git a/readme.md b/readme.md index 205ad8d..7e7435a 100644 --- a/readme.md +++ b/readme.md @@ -49,12 +49,12 @@ For integrating Java projects with the AltaPay gateway. com.altapay sdk-java - 3.1.17 + 3.1.18 ### Gradle - implementation 'com.altapay:sdk-java:3.1.17' + implementation 'com.altapay:sdk-java:3.1.18' ## Changelog diff --git a/src/main/java/com/pensio/api/PensioMerchantAPI.java b/src/main/java/com/pensio/api/PensioMerchantAPI.java index bea059f..f8012ca 100644 --- a/src/main/java/com/pensio/api/PensioMerchantAPI.java +++ b/src/main/java/com/pensio/api/PensioMerchantAPI.java @@ -614,6 +614,19 @@ private void setCustomerInfo(HashMap params, CustomerInfo custom addParam(params, String.format("%s[shipping_region]",groupTag), customerInfo.getShippingAddress().getRegion()); } addParam(params, String.format("%s[device_id]", groupTag), customerInfo.getDeviceId()); + if(customerInfo.getBrowserData() != null) + { + addParam(params, String.format("%s[client_time_zone]",groupTag), customerInfo.getBrowserData().getTimeZone()); + addParam(params, String.format("%s[client_javascript_enabled]",groupTag), customerInfo.getBrowserData().getJavascriptEnabled()); + addParam(params, String.format("%s[client_screen_width]",groupTag), customerInfo.getBrowserData().getScreenWidth()); + addParam(params, String.format("%s[client_screen_height]",groupTag), customerInfo.getBrowserData().getScreenHeight()); + addParam(params, String.format("%s[client_color_depth]",groupTag), customerInfo.getBrowserData().getColorDepth()); + addParam(params, String.format("%s[client_java_enabled]",groupTag), customerInfo.getBrowserData().getJavaEnabled()); + addParam(params, String.format("%s[client_forwarded_ip]",groupTag), customerInfo.getBrowserData().getForwardedIp()); + addParam(params, String.format("%s[client_user_agent]",groupTag), customerInfo.getBrowserData().getUserAgent()); + addParam(params, String.format("%s[client_accept]",groupTag), customerInfo.getBrowserData().getAccept()); + addParam(params, String.format("%s[client_accept_language]",groupTag), customerInfo.getBrowserData().getAcceptLanguage()); + } } private void addOrderLines(String prepend, HashMap params, List orderLines)