From 7eae6e86bb233e8c23f9f83e103de718bf831bd9 Mon Sep 17 00:00:00 2001 From: Gering112 <45523369+Gering112@users.noreply.github.com> Date: Thu, 9 Oct 2025 11:51:26 -0400 Subject: [PATCH 1/3] Added risk_indicator object to ResOrder.java updated pom.xml --- .circleci/maven-release-settings.xml | 5 -- riskified-sdk/pom.xml | 14 +---- .../java/com/riskified/RiskifiedClient.java | 2 +- .../java/com/riskified/models/ResOrder.java | 36 ++++++++++++ .../com/riskified/models/RiskIndicators.java | 55 +++++++++++++++++++ .../riskified/notifications/Notification.java | 38 +++++++++++-- 6 files changed, 128 insertions(+), 22 deletions(-) create mode 100644 riskified-sdk/src/main/java/com/riskified/models/RiskIndicators.java diff --git a/.circleci/maven-release-settings.xml b/.circleci/maven-release-settings.xml index 046022b..1f83b48 100644 --- a/.circleci/maven-release-settings.xml +++ b/.circleci/maven-release-settings.xml @@ -1,10 +1,5 @@ - central ${env.MAVEN_CENTRAL_USERNAME} diff --git a/riskified-sdk/pom.xml b/riskified-sdk/pom.xml index 4d74fad..8a06cd2 100644 --- a/riskified-sdk/pom.xml +++ b/riskified-sdk/pom.xml @@ -4,7 +4,7 @@ 4.0.0 com.riskified riskified-sdk - v3.2.0 + v3.3.0 Riskified SDK Riskified rest api SDK for java https://www.riskified.com @@ -36,17 +36,6 @@ - org.sonatype.central central-publishing-maven-plugin @@ -54,6 +43,7 @@ true central + true diff --git a/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java b/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java index c51ddfd..84d0cf0 100644 --- a/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java +++ b/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java @@ -1075,7 +1075,7 @@ private HttpPost createPostRequest(String url) { postRequest.setHeader(HttpHeaders.ACCEPT, "application/vnd.riskified.com; version=2"); postRequest.setHeader(HttpHeaders.ACCEPT, "application/json"); postRequest.setHeader("X-RISKIFIED-SHOP-DOMAIN", shopUrl); - postRequest.setHeader("User-Agent","riskified_java_sdk/3.2.0"); // TODO: take the version automatically + postRequest.setHeader("User-Agent","riskified_java_sdk/3.3.0"); // TODO: take the version automatically postRequest.setHeader("Version",versionHeaderValue); return postRequest; } diff --git a/riskified-sdk/src/main/java/com/riskified/models/ResOrder.java b/riskified-sdk/src/main/java/com/riskified/models/ResOrder.java index 8571322..ab56450 100644 --- a/riskified-sdk/src/main/java/com/riskified/models/ResOrder.java +++ b/riskified-sdk/src/main/java/com/riskified/models/ResOrder.java @@ -1,5 +1,9 @@ package com.riskified.models; +import com.google.gson.annotations.SerializedName; + +import java.util.Map; + public class ResOrder { private String id; @@ -16,6 +20,9 @@ public class ResOrder { private Double riskScore; private PolicyProtect policyProtect; + @SerializedName("risk_indicators") + private Map riskIndicatorsMap; + public String getId() { return id; @@ -113,4 +120,33 @@ public void setPolicyProtect(PolicyProtect policyProtect) { this.policyProtect = policyProtect; } + + public Map getRiskIndicatorsMap() { + return riskIndicatorsMap; + } + + public void setRiskIndicatorsMap(Map riskIndicatorsMap) { + this.riskIndicatorsMap = riskIndicatorsMap; + } + + // Convenience method to get as RiskIndicators object + public RiskIndicators getRiskIndicators() { + if (riskIndicatorsMap == null || riskIndicatorsMap.isEmpty()) { + return null; + } + + RiskIndicators ri = new RiskIndicators(); + riskIndicatorsMap.forEach(ri::set); + return ri; + } + + // Convenience method to set from RiskIndicators object + public void setRiskIndicators(RiskIndicators riskIndicators) { + if (riskIndicators == null) { + this.riskIndicatorsMap = null; + } else { + this.riskIndicatorsMap = riskIndicators.getAllProperties(); + } + } + } diff --git a/riskified-sdk/src/main/java/com/riskified/models/RiskIndicators.java b/riskified-sdk/src/main/java/com/riskified/models/RiskIndicators.java new file mode 100644 index 0000000..5d3d1c4 --- /dev/null +++ b/riskified-sdk/src/main/java/com/riskified/models/RiskIndicators.java @@ -0,0 +1,55 @@ +package com.riskified.models; + +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +public class RiskIndicators { + private final Map properties = new HashMap<>(); + + // Generic setter - accepts any field name and value + public RiskIndicators set(String fieldName, Object value) { + properties.put(fieldName, value); + return this; + } + + // Generic getter with type casting + @SuppressWarnings("unchecked") + public T get(String fieldName, Class type) { + Object value = properties.get(fieldName); + if (value == null) return null; + return (T) value; + } + + // Simple getter (returns Object) + public Object get(String fieldName) { + return properties.get(fieldName); + } + + // Check if field exists + public boolean has(String fieldName) { + return properties.containsKey(fieldName); + } + + // Get all defined fields + public Set getFields() { + return properties.keySet(); + } + + // Remove field + public RiskIndicators remove(String fieldName) { + properties.remove(fieldName); + return this; + } + + // Get all properties + public Map getAllProperties() { + return new HashMap<>(properties); + } + + @Override + public String toString() { + return "RiskIndicators" + properties; + } +} + diff --git a/riskified-sdk/src/main/java/com/riskified/notifications/Notification.java b/riskified-sdk/src/main/java/com/riskified/notifications/Notification.java index 7a7e778..b9d59fd 100644 --- a/riskified-sdk/src/main/java/com/riskified/notifications/Notification.java +++ b/riskified-sdk/src/main/java/com/riskified/notifications/Notification.java @@ -1,9 +1,9 @@ package com.riskified.notifications; -import com.riskified.models.Context; -import com.riskified.models.Custom; -import com.riskified.models.PolicyProtect; -import com.riskified.models.RecoveryEligibility; +import com.google.gson.annotations.SerializedName; +import com.riskified.models.*; + +import java.util.Map; // Shop URL may also be added to the API notifications from Riskified depending on your // account configuration (contact your Account Manager or Integration Engineer for details). @@ -34,6 +34,8 @@ public static class NotificationOrder { private Context context; private String[] decision_reasons; private PolicyProtect policyProtect; + @SerializedName("risk_indicators") + private Map riskIndicatorsMap; public String getId() { return id; @@ -113,5 +115,33 @@ public PolicyProtect getPolicyProtect() { return policyProtect; } public void setPolicyProtect(PolicyProtect policyProtect) {} + + public Map getRiskIndicatorsMap() { + return riskIndicatorsMap; + } + + public void setRiskIndicatorsMap(Map riskIndicatorsMap) { + this.riskIndicatorsMap = riskIndicatorsMap; + } + + // Convenience method to get as RiskIndicators object + public RiskIndicators getRiskIndicators() { + if (riskIndicatorsMap == null || riskIndicatorsMap.isEmpty()) { + return null; + } + + RiskIndicators ri = new RiskIndicators(); + riskIndicatorsMap.forEach(ri::set); + return ri; + } + + // Convenience method to set from RiskIndicators object + public void setRiskIndicators(RiskIndicators riskIndicators) { + if (riskIndicators == null) { + this.riskIndicatorsMap = null; + } else { + this.riskIndicatorsMap = riskIndicators.getAllProperties(); + } + } } } From d1f5f835e11c3477aff14eda354788d565b90cc8 Mon Sep 17 00:00:00 2001 From: Gering112 <45523369+Gering112@users.noreply.github.com> Date: Tue, 14 Oct 2025 12:08:36 -0400 Subject: [PATCH 2/3] updated BankWirePaymentDetails + Recipient class --- .../models/BankWirePaymentDetails.java | 18 ++++++++++++++++++ .../java/com/riskified/models/Recipient.java | 9 +++++++++ 2 files changed, 27 insertions(+) diff --git a/riskified-sdk/src/main/java/com/riskified/models/BankWirePaymentDetails.java b/riskified-sdk/src/main/java/com/riskified/models/BankWirePaymentDetails.java index 41bc08b..dde737a 100644 --- a/riskified-sdk/src/main/java/com/riskified/models/BankWirePaymentDetails.java +++ b/riskified-sdk/src/main/java/com/riskified/models/BankWirePaymentDetails.java @@ -6,6 +6,8 @@ public class BankWirePaymentDetails implements IPaymentDetails { private String accountNumber; private String routingNumber; private String token; + private Date storedPaymentCreatedAt; + private Date storedPaymentUpdatedAt; public BankWirePaymentDetails(String accountNumber, String routingNumber) { this.accountNumber = accountNumber; @@ -36,6 +38,22 @@ public void setToken(String token){ this.token = token; } + public Date getStoredPaymentCreatedAt(){ + return self.storedPaymentCreatedAt; + } + + public void setStoredPaymentCreatedAt(Date storedPaymentCreatedAt){ + this.token = storedPaymentCreatedAt; + } + + public Date getStoredPaymentUpdateddAt(){ + return self.storedPaymentUpdatedAt; + } + + public void setStoredPaymentUpdateddAt(Date storedPaymentUpdatedAt){ + this.token = storedPaymentUpdatedAt; + } + public void validate(Validation validationType) throws FieldBadFormatException { if (validationType == Validation.ALL) { Validate.notNullOrEmpty(this, this.accountNumber, "Bank Account Number"); diff --git a/riskified-sdk/src/main/java/com/riskified/models/Recipient.java b/riskified-sdk/src/main/java/com/riskified/models/Recipient.java index 292addd..96d217d 100644 --- a/riskified-sdk/src/main/java/com/riskified/models/Recipient.java +++ b/riskified-sdk/src/main/java/com/riskified/models/Recipient.java @@ -14,6 +14,7 @@ public class Recipient implements IValidated { private Date createdAt; private Date updatedAt; private boolean selfRecipient; + private String walletId; public Recipient() { } @@ -79,4 +80,12 @@ public boolean isSelfRecipient() { public void setSelfRecipient(boolean selfRecipient) { this.selfRecipient = selfRecipient; } + + public String getWalletId(){ + return self.walletId; + } + + public void setWalletId(String walletId){ + self.walletId = walletId + } } From 2369ae2edda96852c2b66eef25a7d4191df5a634 Mon Sep 17 00:00:00 2001 From: Gering112 <45523369+Gering112@users.noreply.github.com> Date: Tue, 14 Oct 2025 12:19:09 -0400 Subject: [PATCH 3/3] Update README.md --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d4a2c90..c9a1e85 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ Riskified JAVA SDK ================= -version: 2.3.2 +version: 3.3.0 ------------------ See http://apiref.riskified.com for full API documentation @@ -104,6 +104,7 @@ curl -H "Content-Type: application/json" -H "X-RISKIFIED-HMAC-SHA256: 071ef80d5 com.riskified riskified-sdk - v2.3.0 + v3.3.0 ``` +