From 8173c65e0dfd19f588eb08f94333e11322007c05 Mon Sep 17 00:00:00 2001
From: Gering112 <45523369+Gering112@users.noreply.github.com>
Date: Tue, 11 Feb 2025 20:30:41 -0500
Subject: [PATCH 01/12] Created Recommendation class, changed Recommendation
from string to list in Advice class. Added api-version:2 to header
---
riskified-sdk/pom.xml | 2 +-
.../java/com/riskified/RiskifiedClient.java | 3 +-
.../java/com/riskified/models/Advice.java | 33 +++++++++++++++++++
.../com/riskified/models/Recommendation.java | 20 +++++++++++
.../java/com/riskified/models/ResOrder.java | 21 +-----------
5 files changed, 57 insertions(+), 22 deletions(-)
create mode 100644 riskified-sdk/src/main/java/com/riskified/models/Advice.java
create mode 100644 riskified-sdk/src/main/java/com/riskified/models/Recommendation.java
diff --git a/riskified-sdk/pom.xml b/riskified-sdk/pom.xml
index 1d61dd5..504d5b4 100644
--- a/riskified-sdk/pom.xml
+++ b/riskified-sdk/pom.xml
@@ -4,7 +4,7 @@
4.0.0
com.riskified
riskified-sdk
- v2.13-score
+ v2-api-version
Riskified SDK
Riskified rest api SDK for java
https://www.riskified.com
diff --git a/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java b/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java
index 6f6e863..9206390 100644
--- a/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java
+++ b/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java
@@ -1064,6 +1064,7 @@ private void addDataToRequest(Object data, HttpPost postRequest) throws IllegalS
byte[] body = jsonData.getBytes("UTF-8");
String hmac = sha256Handler.createSHA256(body);
postRequest.setHeader("X-RISKIFIED-HMAC-SHA256", hmac);
+ postRequest.setHeader("API-VERSION", "2");
ByteArrayEntity input;
input = new ByteArrayEntity(body, ContentType.APPLICATION_JSON);
postRequest.setEntity(input);
@@ -1074,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/2.13-score"); // TODO: take the version automatically
+ postRequest.setHeader("User-Agent","riskified_java_sdk/v2-api-version"); // TODO: take the version automatically
postRequest.setHeader("Version",versionHeaderValue);
return postRequest;
}
diff --git a/riskified-sdk/src/main/java/com/riskified/models/Advice.java b/riskified-sdk/src/main/java/com/riskified/models/Advice.java
new file mode 100644
index 0000000..ced0906
--- /dev/null
+++ b/riskified-sdk/src/main/java/com/riskified/models/Advice.java
@@ -0,0 +1,33 @@
+package com.riskified.models;
+
+import java.util.List;
+
+public class Advice {
+ private boolean in_regulatory_scope;
+ private boolean safe_order;
+ private List recommendations;
+
+
+ public boolean getRegulatoryScope() {
+ return in_regulatory_scope;
+ }
+
+ public void setRegulatoryScope(boolean in_regulatory_scope) {
+ this.in_regulatory_scope = in_regulatory_scope;
+ }
+
+ public List getRecommendation() {
+ return recommendations;
+ }
+ public void setRecommendation(List recommendations) {
+ this.recommendations = recommendations;
+ }
+
+ public boolean getSafeOrder() {
+ return safe_order;
+ }
+ public void setSafeOrder(boolean safe_order) {
+ this.safe_order = safe_order;
+ }
+}
+
diff --git a/riskified-sdk/src/main/java/com/riskified/models/Recommendation.java b/riskified-sdk/src/main/java/com/riskified/models/Recommendation.java
new file mode 100644
index 0000000..1c3d822
--- /dev/null
+++ b/riskified-sdk/src/main/java/com/riskified/models/Recommendation.java
@@ -0,0 +1,20 @@
+package com.riskified.models;
+
+public class Recommendation {
+ private String type;
+ private boolean recommended;
+
+
+ public String getType() {
+ return type;
+ }
+ public void setType(String type) {
+ this.type = type;
+ }
+ public boolean getIsRecommended() {
+ return recommended;
+ }
+ public void setRecommended(boolean recommended) {
+ this.recommended = recommended;
+ }
+}
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 c6be000..d067a45 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/ResOrder.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/ResOrder.java
@@ -99,25 +99,6 @@ public void setAction(String action) {
public RecoveryEligibility getRecoveryEligibility(){return recoveryEligibility;}
public void setRecoveryEligibility(RecoveryEligibility recoveryEligibility){this.recoveryEligibility = recoveryEligibility;}
-
- public class Advice {
-
- private boolean in_regulatory_scope;
- private boolean safe_order;
- private String recommendation;
-
-
- public boolean getRegulatoryScope() {
- return in_regulatory_scope;
- }
- public String getRecommendation() {
- return recommendation;
- }
-
- public boolean getSafeOrder() {
- return safe_order;
- }
-
- }
+
}
From fd20cb345538847e0d0621632ac733cd8e4b018a Mon Sep 17 00:00:00 2001
From: Gering112 <45523369+Gering112@users.noreply.github.com>
Date: Tue, 18 Mar 2025 14:27:07 -0400
Subject: [PATCH 02/12] Changed amount from double to Double in DecisionDetails
added riskScores to ResOrder Renamed tranStatus to transStatus Renamed
tranStatusReason to transStatusReason
---
riskified-sdk/pom.xml | 2 +-
.../java/com/riskified/RiskifiedClient.java | 2 +-
...atusReason.java => TransStatusReason.java} | 10 ++++-----
.../models/AuthenticationResult.java | 22 +++++++++----------
.../com/riskified/models/DecisionDetails.java | 2 +-
.../java/com/riskified/models/ResOrder.java | 4 ++++
6 files changed, 23 insertions(+), 19 deletions(-)
rename riskified-sdk/src/main/java/com/riskified/{TranStatusReason.java => TransStatusReason.java} (74%)
diff --git a/riskified-sdk/pom.xml b/riskified-sdk/pom.xml
index afb9149..94f5302 100644
--- a/riskified-sdk/pom.xml
+++ b/riskified-sdk/pom.xml
@@ -4,7 +4,7 @@
4.0.0
com.riskified
riskified-sdk
- v2.15.0
+ v3.0.0
Riskified SDK
Riskified rest api SDK for java
https://www.riskified.com
diff --git a/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java b/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java
index 91bbc17..715ad9c 100644
--- a/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java
+++ b/riskified-sdk/src/main/java/com/riskified/RiskifiedClient.java
@@ -1074,7 +1074,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/2.15.0"); // TODO: take the version automatically
+ postRequest.setHeader("User-Agent","riskified_java_sdk/3.0.0"); // TODO: take the version automatically
postRequest.setHeader("Version",versionHeaderValue);
return postRequest;
}
diff --git a/riskified-sdk/src/main/java/com/riskified/TranStatusReason.java b/riskified-sdk/src/main/java/com/riskified/TransStatusReason.java
similarity index 74%
rename from riskified-sdk/src/main/java/com/riskified/TranStatusReason.java
rename to riskified-sdk/src/main/java/com/riskified/TransStatusReason.java
index 33b4be8..0d77a99 100644
--- a/riskified-sdk/src/main/java/com/riskified/TranStatusReason.java
+++ b/riskified-sdk/src/main/java/com/riskified/TransStatusReason.java
@@ -1,6 +1,6 @@
package com.riskified;
-public enum TranStatusReason {
+public enum TransStatusReason {
Zero_One("01"),
Zero_TWO("02"),
Zero_Three("03"),
@@ -33,14 +33,14 @@ public enum TranStatusReason {
- private final String tranStatusReason;
+ private final String transStatusReason;
- TranStatusReason(String tranStatusReason) {
- this.tranStatusReason = tranStatusReason;
+ TransStatusReason(String transStatusReason) {
+ this.transStatusReason = transStatusReason;
}
public String getValue() {
- return tranStatusReason;
+ return transStatusReason;
}
}
diff --git a/riskified-sdk/src/main/java/com/riskified/models/AuthenticationResult.java b/riskified-sdk/src/main/java/com/riskified/models/AuthenticationResult.java
index 439cf94..1a7f845 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/AuthenticationResult.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/AuthenticationResult.java
@@ -2,7 +2,7 @@
import java.util.Date;
-import com.riskified.TranStatusReason;
+import com.riskified.TransStatusReason;
import com.riskified.TransStatus;
import com.riskified.validations.*;
@@ -11,8 +11,8 @@ public class AuthenticationResult implements IValidated {
private String eci;
private String cavv;
private Date createdAt;
- private TransStatus tranStatus;
- private TranStatusReason tranStatusReason;
+ private TransStatus transStatus;
+ private TransStatusReason transStatusReason;
private Boolean liabilityShift;
private Boolean three_d_challenge;
private Boolean tra_exemption;
@@ -23,21 +23,21 @@ public AuthenticationResult(String eci) {
this.eci = eci;
}
- public TranStatusReason getTranStatusReason() {
- return tranStatusReason;
+ public TransStatusReason getTransStatusReason() {
+ return transStatusReason;
}
- public void setTranStatusReason(TranStatusReason tranStatusReason) {
- this.tranStatusReason = tranStatusReason;
+ public void setTransStatusReason(TransStatusReason transStatusReason) {
+ this.transStatusReason = transStatusReason;
}
- public TransStatus getTranStatus() {
- return tranStatus;
+ public TransStatus getTransStatus() {
+ return transStatus;
}
- public void setTranStatus(TransStatus transStatus) {
- this.tranStatus = transStatus;
+ public void setTransStatus(TransStatus transStatus) {
+ this.transStatus = transStatus;
}
diff --git a/riskified-sdk/src/main/java/com/riskified/models/DecisionDetails.java b/riskified-sdk/src/main/java/com/riskified/models/DecisionDetails.java
index 2993da1..3b7c19a 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/DecisionDetails.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/DecisionDetails.java
@@ -9,7 +9,7 @@ public class DecisionDetails implements IValidated {
private DecisionType externalStatus;
private String reason;
private Date decidedAt;
- private double amount;
+ private Double amount;
private String currency;
private String notes;
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 c6be000..ea85783 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/ResOrder.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/ResOrder.java
@@ -13,6 +13,7 @@ public class ResOrder {
private String action;
private Advice advice;
private RecoveryEligibility recoveryEligibility;
+ private Double riskScore;
public String getId() {
@@ -99,6 +100,9 @@ public void setAction(String action) {
public RecoveryEligibility getRecoveryEligibility(){return recoveryEligibility;}
public void setRecoveryEligibility(RecoveryEligibility recoveryEligibility){this.recoveryEligibility = recoveryEligibility;}
+
+ public void setRiskScore(Double riskScore){this.riskScore = riskScore;}
+ public Double getRiskScore(){return riskScore;}
public class Advice {
From 0215fbcddfa4931b59ec2f3604bbe643078effdc Mon Sep 17 00:00:00 2001
From: Gering112 <45523369+Gering112@users.noreply.github.com>
Date: Mon, 31 Mar 2025 14:57:56 -0400
Subject: [PATCH 03/12] Recommendation Class: changed type from boolean to
String, renamed recommended to Recommendation
---
.../java/com/riskified/models/Recommendation.java | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/riskified-sdk/src/main/java/com/riskified/models/Recommendation.java b/riskified-sdk/src/main/java/com/riskified/models/Recommendation.java
index 1c3d822..0168efe 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/Recommendation.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/Recommendation.java
@@ -2,7 +2,7 @@
public class Recommendation {
private String type;
- private boolean recommended;
+ private String recommendation;
public String getType() {
@@ -11,10 +11,11 @@ public String getType() {
public void setType(String type) {
this.type = type;
}
- public boolean getIsRecommended() {
- return recommended;
+
+ public String getRecommendation() {
+ return recommendation;
}
- public void setRecommended(boolean recommended) {
- this.recommended = recommended;
+ public void setRecommendation(String recommended) {
+ this.recommendation = recommendation;
}
}
From 33ede8691bc889877ee3335c1bfdd4ba569b9ef1 Mon Sep 17 00:00:00 2001
From: Gering112 <45523369+Gering112@users.noreply.github.com>
Date: Mon, 31 Mar 2025 14:59:45 -0400
Subject: [PATCH 04/12] Updated property fields to camel case
---
.../main/java/com/riskified/models/Advice.java | 18 ++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)
diff --git a/riskified-sdk/src/main/java/com/riskified/models/Advice.java b/riskified-sdk/src/main/java/com/riskified/models/Advice.java
index ced0906..a010d6c 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/Advice.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/Advice.java
@@ -3,31 +3,33 @@
import java.util.List;
public class Advice {
- private boolean in_regulatory_scope;
- private boolean safe_order;
+ private boolean inRegulatoryScope;
+ private boolean safeOrder;
private List recommendations;
public boolean getRegulatoryScope() {
- return in_regulatory_scope;
+ return inRegulatoryScope;
}
- public void setRegulatoryScope(boolean in_regulatory_scope) {
- this.in_regulatory_scope = in_regulatory_scope;
+ public void setRegulatoryScope(boolean inRegulatoryScope) {
+ this.inRegulatoryScope = inRegulatoryScope;
}
public List getRecommendation() {
return recommendations;
}
+
public void setRecommendation(List recommendations) {
this.recommendations = recommendations;
}
public boolean getSafeOrder() {
- return safe_order;
+ return safeOrder;
}
- public void setSafeOrder(boolean safe_order) {
- this.safe_order = safe_order;
+
+ public void setSafeOrder(boolean safeOrder) {
+ this.safeOrder = safeOrder;
}
}
From f2d6c99e61ba0ddd56d64829feb931606d497b95 Mon Sep 17 00:00:00 2001
From: Gering112 <45523369+Gering112@users.noreply.github.com>
Date: Mon, 31 Mar 2025 15:08:48 -0400
Subject: [PATCH 05/12] Updated naming conventions from snake to camel case,
serialized name for TRA_exemption
---
.../models/AuthenticationResult.java | 37 ++++++++++---------
1 file changed, 20 insertions(+), 17 deletions(-)
diff --git a/riskified-sdk/src/main/java/com/riskified/models/AuthenticationResult.java b/riskified-sdk/src/main/java/com/riskified/models/AuthenticationResult.java
index 439cf94..cd5561c 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/AuthenticationResult.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/AuthenticationResult.java
@@ -2,7 +2,8 @@
import java.util.Date;
-import com.riskified.TranStatusReason;
+import com.google.gson.annotations.SerializedName;
+import com.riskified.TransStatusReason;
import com.riskified.TransStatus;
import com.riskified.validations.*;
@@ -11,11 +12,13 @@ public class AuthenticationResult implements IValidated {
private String eci;
private String cavv;
private Date createdAt;
- private TransStatus tranStatus;
- private TranStatusReason tranStatusReason;
+ private TransStatus transStatus;
+ private TransStatusReason transStatusReason;
private Boolean liabilityShift;
- private Boolean three_d_challenge;
- private Boolean tra_exemption;
+ private Boolean threeDChallenge;
+
+ @SerializedName("TRA_exemption")
+ private Boolean traExemption;
@@ -23,21 +26,21 @@ public AuthenticationResult(String eci) {
this.eci = eci;
}
- public TranStatusReason getTranStatusReason() {
- return tranStatusReason;
+ public TransStatusReason getTransStatusReason() {
+ return transStatusReason;
}
- public void setTranStatusReason(TranStatusReason tranStatusReason) {
- this.tranStatusReason = tranStatusReason;
+ public void setTransStatusReason(TransStatusReason transStatusReason) {
+ this.transStatusReason = transStatusReason;
}
- public TransStatus getTranStatus() {
- return tranStatus;
+ public TransStatus getTransStatus() {
+ return transStatus;
}
- public void setTranStatus(TransStatus transStatus) {
- this.tranStatus = transStatus;
+ public void setTransStatus(TransStatus transStatus) {
+ this.transStatus = transStatus;
}
@@ -85,19 +88,19 @@ public void validate(Validation validationType)
}
public boolean get3DChallenge() {
- return three_d_challenge;
+ return threeDChallenge;
}
public void set3DChallenge(boolean ThreeDChallenge) {
- this.three_d_challenge = ThreeDChallenge;
+ this.threeDChallenge = ThreeDChallenge;
}
public boolean getTRAExemption() {
- return tra_exemption;
+ return traExemption;
}
public void setTRAExemption(boolean TRAExemption) {
- tra_exemption = TRAExemption;
+ traExemption = TRAExemption;
}
}
From 69832bde99f3114cfab62848a19e2e0a4d983b7d Mon Sep 17 00:00:00 2001
From: Gering112 <45523369+Gering112@users.noreply.github.com>
Date: Mon, 31 Mar 2025 16:08:50 -0400
Subject: [PATCH 06/12] updated client test
---
.../riskified/samples/orderClient/Client.java | 219 ++++++++++++++----
1 file changed, 177 insertions(+), 42 deletions(-)
diff --git a/riskified-sample/src/main/java/com/riskified/samples/orderClient/Client.java b/riskified-sample/src/main/java/com/riskified/samples/orderClient/Client.java
index cb79785..ee140e7 100644
--- a/riskified-sample/src/main/java/com/riskified/samples/orderClient/Client.java
+++ b/riskified-sample/src/main/java/com/riskified/samples/orderClient/Client.java
@@ -4,14 +4,12 @@
import java.text.SimpleDateFormat;
import java.util.*;
-import com.riskified.Environment;
+import com.riskified.*;
+import com.riskified.validations.Validation;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpResponseException;
-import com.riskified.RiskifiedError;
//import com.riskified.TransStatus;
-import com.riskified._type;
-import com.riskified.RiskifiedClient;
import com.riskified.models.*;
import com.riskified.validations.FieldBadFormatException;
@@ -26,6 +24,8 @@ public static void main(String[] arg) throws FieldBadFormatException, ParseExcep
Order order = generateOrder();
+ Order decideOrder = decideOrder();
+
Order updateOrder = generateUpdateOrder(order);
CheckoutOrder screenOrder = generateScreenOrder();
@@ -39,42 +39,55 @@ public static void main(String[] arg) throws FieldBadFormatException, ParseExcep
DecisionOrder decisionOrder = generateDecisionOrder(order);
ArrayOrders orders = generateHistoricalOrders(order);
+ ChargebackOrder chargebackOrder = generateChargebackOrder();
try {
// Riskified client parameters can be set in the constructor, like this:
// RiskifiedClient client = new RiskifiedClient("", "", Environment.SANDBOX);
// Or according 'riskified_sdk.properties' configuration file, like this:
- RiskifiedClient client = new RiskifiedClient();
- /*
- Response resAdviseOrder = client.adviseOrder(adviseOrder);
-
- System.out.println("Advise order response:");
- System.out.println("id: " + resAdviseOrder.getOrder().getId());
- System.out.println("status: " + resAdviseOrder.getOrder().getStatus());
- System.out.println("advise response rec " + resAdviseOrder.getOrder().getAdvice().getRecommendation());
- System.out.println("advise response scope " + resAdviseOrder.getOrder().getAdvice().getRegulatoryScope());
-
-
- System.out.println("-----------------------------------------");
-
- */
- Response resCheckoutOrder = client.checkoutOrder(checkoutOrder);
-
- System.out.println("Checkout create order response:");
- System.out.println("id: " + resCheckoutOrder.getOrder().getId());
- System.out.println("status: " + resCheckoutOrder.getOrder().getStatus());
- System.out.println("description: " + resCheckoutOrder.getOrder().getDescription());
-
+ //RiskifiedClient client = new RiskifiedClient("www.yossirtest_post.com", "6a21f867852d8a097b46803fa09ea61d", Environment.SANDBOX);
+ RiskifiedClient client = new RiskifiedClient("geringtestAsync.com", "d68531d725768c84748b16749d184592", Environment.SANDBOX);
+
+ //RiskifiedClient client = new RiskifiedClient("www.kaorisugado_test_pre.com", "db76c5924368ff011f697a365a9be778", Environment.SANDBOX, Validation.IGNORE_MISSING);
+ //RiskifiedClient.RiskifiedClientBuilder builder = new RiskifiedClient.RiskifiedClientBuilder("www.theory.co.jp_jp", "4f65048287059f4a8aa4a36e0dd36aa5", Environment.SANDBOX);
+ //builder.setRequestTimeout(10);
+ //builder.setConnectionTimeout(5);
+ //RiskifiedClient client = new RiskifiedClient(builder);
+
+// Response resAdviseOrder = client.adviseOrder(adviseOrder);
+//
+// System.out.println("Advise order response:");
+// System.out.println("id: " + resAdviseOrder.getOrder().getId());
+// System.out.println("status: " + resAdviseOrder.getOrder().getStatus());
+// if (resAdviseOrder.getOrder().getAdvice() != null) {
+// for(Recommendation recs: resAdviseOrder.getOrder().getAdvice().getRecommendation()){
+// System.out.println("rec type: " + recs.getType());
+// System.out.println( "recommended: " + recs.getRecommendation());
+// }
+//
+// }
- Response resCheckoutDeniedOrder = client.checkoutDeniedOrder(checkoutDeniedOrder);
System.out.println("-----------------------------------------");
- System.out.println("Checkout denied order response:");
- System.out.println("id: " + resCheckoutDeniedOrder.getOrder().getId());
- System.out.println("status: " + resCheckoutDeniedOrder.getOrder().getStatus());
- System.out.println("description: " + resCheckoutDeniedOrder.getOrder().getDescription());
+// Response resCheckoutOrder = client.checkoutOrder(checkoutOrder);
+//
+// System.out.println("Checkout create order response:");
+// System.out.println("id: " + resCheckoutOrder.getOrder().getId());
+// System.out.println("status: " + resCheckoutOrder.getOrder().getStatus());
+// System.out.println("description: " + resCheckoutOrder.getOrder().getDescription());
+//
+//
+// Response resCheckoutDeniedOrder = client.checkoutDeniedOrder(checkoutDeniedOrder);
+//
+// System.out.println("-----------------------------------------");
+// System.out.println("Checkout denied order response:");
+// System.out.println("id: " + resCheckoutDeniedOrder.getOrder().getId());
+// System.out.println("status: " + resCheckoutDeniedOrder.getOrder().getStatus());
+// System.out.println("description: " + resCheckoutDeniedOrder.getOrder().getDescription());
+
+//
Response resCreateOrder = client.createOrder(order);
System.out.println("-----------------------------------------");
@@ -82,6 +95,40 @@ public static void main(String[] arg) throws FieldBadFormatException, ParseExcep
System.out.println("id: " + resCreateOrder.getOrder().getId());
System.out.println("status: " + resCreateOrder.getOrder().getStatus());
System.out.println("description: " + resCreateOrder.getOrder().getDescription());
+ System.out.println("risk score: " + resCreateOrder.getOrder().getRiskScore());
+
+// Response resChargebackOrder = client.chargebackOrder(chargebackOrder);
+//
+// System.out.println("-----------------------------------------");
+// System.out.println("Chargeback order response:");
+// System.out.println("id: " + resChargebackOrder.getOrder().getId());
+// System.out.println("status: " + resChargebackOrder.getOrder().getStatus());
+// System.out.println("description: " + resChargebackOrder.getOrder().getDescription());
+// //System.out.println("risk score: " + resChargebackOrder.getOrder().getRiskScore());
+
+// Response resDecision = client.decisionOrder(decisionOrder);
+//
+// System.out.println("-----------------------------------------");
+// System.out.println("Decision order response:");
+// System.out.println("id: " + resDecision.getOrder().getId());
+// System.out.println("status: " + resDecision.getOrder().getStatus());
+// System.out.println("description: " + resDecision.getOrder().getDescription());
+// //System.out.println("risk score: " + resDecision.getOrder().getRiskScore());
+// Response response = client.analyzeOrder(order);
+// System.out.println("-----------------------------------------");
+// System.out.println("Create order response:");
+// System.out.println("id: " + response.getOrder().getId());
+// System.out.println("status: " + response.getOrder().getStatus());
+// System.out.println("description: " + response.getOrder().getDescription());
+// System.out.println("category: " + response.getOrder().getCategory());
+// System.out.println("risk score: " + response.getOrder().getRiskScore());
+// if (response.getOrder().getAdvice() != null) {
+// for(Recommendation recs: response.getOrder().getAdvice().getRecommendation()){
+// System.out.println("rec type: " + recs.getType() + "is recommended: " + recs.getIsRecommended());
+// }
+//
+// }
+
/*
Response resScreenOrder = client.screenOrder(screenOrder);
@@ -152,6 +199,41 @@ public static void main(String[] arg) throws FieldBadFormatException, ParseExcep
}
+ }
+
+ private static Order decideOrder() throws ParseException {
+ Order order = new Order();
+ order.setId("Test_LT2500118405");
+ order.setName("null null");
+ order.setCartToken("5cbbdfa359d38b9d250f7a7c943c7935fab8e28d24b7b1fccd0eabf553f702ac");
+ order.setCreatedAt(parseDate("02-11-2025 00:00:00.0"));
+ order.setCurrency("JPY");
+ order.setUpdatedAt(parseDate("01-23-2025 00:00:00.0"));
+ order.setGateway("gmopg_cc");
+ order.setBrowserIp("113.32.8.18");
+ order.setTotalPrice(6600);
+ order.setSource("web");
+ order.setEmail("3ds_not_recommended@test.com");
+
+
+
+ LineItem lineItem = new LineItem(6000, 1, "セーター sweater", "3913470");
+ lineItem.setColor("black");
+ lineItem.setRequiresShipping(true);
+ lineItem.setProperties(null);
+ lineItem.setTaxLines(null);
+ lineItem.setBrand("Theory luxe");
+ lineItem.setProductType("physical");
+ lineItem.setDeliveredTo("shipping_address");
+
+
+ order.setDiscountCodes(Arrays.asList(new DiscountCode(0, "")));
+
+ order.setPaymentDetails(Arrays.asList(new CreditCardPaymentDetails("5cbbdfa359d38b9d250f7a7c943c7935fab8e28d24b7b1fccd0eabf553f702ac", "", "", "410000******0100", "VISA") ));
+ Customer customer = new Customer("kaori.sugado@riskified.com", "太郎", "佐藤", "1", parseDate("02-11-2025 00:00:00.0"), true, 2);
+ order.setCustomer(customer);
+ return order;
+
}
private static void printError(Exception e) {
@@ -307,7 +389,7 @@ private static CheckoutOrder generateAdviseOrder() throws ParseException {
order.setShippingLines(Arrays.asList(new ShippingLine(123, "free")));
CreditCardPaymentDetails creditCardPaymentDetails = new CreditCardPaymentDetails("370002", "y", "n", "xxxx-xxxx-xxxx-1234", "VISA");
- creditCardPaymentDetails.setType(_type.credit_card);
+ //creditCardPaymentDetails.setType(_type.credit_card);
creditCardPaymentDetails.setAcquirerBin("232323");
creditCardPaymentDetails.setGateway("goGateway");
creditCardPaymentDetails.setMid("212212121");
@@ -334,16 +416,47 @@ private static CheckoutOrder generateAdviseOrder() throws ParseException {
return order;
}
+ private static ChargebackOrder generateChargebackOrder() throws ParseException {
+ ChargebackOrder order = new ChargebackOrder();
+ order.setId("#120000000003459");
+ ChargebackDetails cd = new ChargebackDetails();
+ cd.setId("99992328889900");
+ cd.setChargebackAt(parseDate("03-13-2025 00:00:00.0"));
+ cd.setChargebackCurrency("USD");
+ cd.setChargebackAmount(123.23);
+ cd.setReasonCode("ACME Widget");
+ cd.setType("cb");
+ cd.setReasonCode("ACME Spring");
+ cd.setGateway("VNTV");
+ cd.setMid("72395");
+ cd.setArn("2514514541324134");
+ cd.setCreditCardCompany("M/C");
+ //cd.setRespondBy(parseDate("03-14-2025 00:00:00.0"));
+ cd.setCardholder("M/C");
+ cd.setMessage("someMessagee");
+ order.setChargebackDetails(cd);
+
+ //order.setFulfillment(null);
+ DisputeDetails disputeDetails = new DisputeDetails();
+ //disputeDetails.setDisputeType("Fraud");
+ //disputeDetails.setDisputeType("dispute Type");
+ //order.setDisputeDetails(disputeDetails);
+ //System.out.println(order.getDisputeDetails());
+
+ return order;
+
+ }
+
private static Order generateOrder() throws ParseException {
Order order = new Order();
- order.setId("#120000000003451");
+ order.setId("#120000000003460");
order.setName("#12345");
order.setEmail("great.customer@example.com");
- order.setCreatedAt(parseDate("15-12-2016 00:00:00.0"));
- order.setClosedAt(parseDate("15-12-2016 00:00:00.0"));
+ order.setCreatedAt(parseDate("28-03-2025 00:00:00.0"));
+ order.setClosedAt(parseDate("28-03-2025 00:00:00.0"));
order.setCurrency("CAD");
- order.setUpdatedAt(parseDate("15-12-2016 00:00:00.0"));
+ order.setUpdatedAt(parseDate("11-03-2025 00:00:00.0"));
order.setGateway("mypaymentprocessor");
order.setBrowserIp("124.185.86.55");
order.setTotalPrice(120.22);
@@ -361,6 +474,11 @@ private static Order generateOrder() throws ParseException {
LineItem lineItem = new LineItem(200, 4, "ACME Spring", "AAA2");
lineItem.setColor("black");
+ Recipient recipient = new Recipient();
+ //recipient.setRoutingNumber("CNRB008304");
+ //recipient.setAccountNumber("786868768");
+ recipient.setEmail("regularLineItem@risky.com");
+ //lineItem.setRecipient(recipient);
TravelLineItem travelLineItem = new TravelLineItem(340, 1, "Flight from Israel to France", "211", "B11", 1, 1);
travelLineItem.setDeparturePortCode("LLBG");
@@ -375,20 +493,37 @@ private static Order generateOrder() throws ParseException {
travelLineItem.setCarrierCode("AF");
travelLineItem.setCarrierName("Air France");
travelLineItem.setRequiresShipping(false);
-
+
+ Recipient recipientTravel = new Recipient();
+ //recipientTravel.setRoutingNumber("CNRB008304");
+ //recipientTravel.setAccountNumber("786868768");
+ recipientTravel.setEmail("travelLineItem@risky.com");
+ //travelLineItem.setRecipient(recipientTravel);
+
+ Recipient digitalRecipient = new Recipient();
+ //digitalRecipient.setRoutingNumber("abc123");
+ //digitalRecipient.setAccountNumber("18006868768");
+ digitalRecipient.setEmail("DigitalLineItem2@risky.com");
+
+ //DigitalLineItem digitalLineItem = new DigitalLineItem(12.00, 1, "soap");
+ //digitalLineItem.setRecipient(digitalRecipient);
+ //System.out.println(digitalLineItem.getRecipient().getRoutingNumber());
order.setShippingLines(Arrays.asList(new ShippingLine(123, "free")));
CreditCardPaymentDetails cr = new CreditCardPaymentDetails("370010", "y", "n", "xxxx-xxxx-xxxx-1234", "VISA");
cr.setInstallmentMonths(6);
cr.setPaymentPlan("at&t");
+ //cr.setExpiryMonth(12);
+ //cr.setExpiryYear(2027);
- /*
+
AuthenticationResult authResults = new AuthenticationResult("1");
- authResults.setTranStatus(TransStatus.A);
- authResults.set3DChallenge(true);
+ authResults.setTransStatus(TransStatus.A);
+ authResults.set3DChallenge(true);
authResults.setTRAExemption(true);
-
+ authResults.setTransStatusReason(TransStatusReason.Eighteen);
+
cr.setAuthenticationResult(authResults);
- */
+
order.setPaymentDetails(Arrays.asList( cr ));
@@ -418,7 +553,7 @@ private static Order generateOrder() throws ParseException {
- order.setPaymentDetails(Arrays.asList(new CreditCardPaymentDetails("370002", "y", "n", "xxxx-xxxx-xxxx-1234", "VISA") ));
+ order.setPaymentDetails(Arrays.asList(new CreditCardPaymentDetails("370002", "y", "n", "xxxx-xxxx-xxxx-1234", "VISA"), cr ));
Address address = new Address("John", "Doe", "108 Main Street", "NYC", "1234567", "United States");
address.setCompany("Kansas Computers");
From 7ab81cbd6d49bfb9ee88a6cf3c00dc67fd530259 Mon Sep 17 00:00:00 2001
From: Gering112 <45523369+Gering112@users.noreply.github.com>
Date: Tue, 1 Apr 2025 12:53:39 -0400
Subject: [PATCH 07/12] Added recommended
---
.../main/java/com/riskified/models/Recommendation.java | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/riskified-sdk/src/main/java/com/riskified/models/Recommendation.java b/riskified-sdk/src/main/java/com/riskified/models/Recommendation.java
index 0168efe..d9bb422 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/Recommendation.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/Recommendation.java
@@ -3,6 +3,7 @@
public class Recommendation {
private String type;
private String recommendation;
+ private Boolean recommended;
public String getType() {
@@ -18,4 +19,11 @@ public String getRecommendation() {
public void setRecommendation(String recommended) {
this.recommendation = recommendation;
}
+
+ public Boolean getRecommended() {
+ return recommended;
+ }
+ public void setRecommended(Boolean recommended) {
+ this.recommended = recommended;
+ }
}
From a37d7c4770ff388d7f7ebd1303463e45c1c3ad90 Mon Sep 17 00:00:00 2001
From: Gering112 <45523369+Gering112@users.noreply.github.com>
Date: Wed, 2 Apr 2025 16:21:11 -0400
Subject: [PATCH 08/12] Created KycDetails class
---
.../java/com/riskified/models/KycDetails.java | 57 +++++++++++++++++++
1 file changed, 57 insertions(+)
create mode 100644 riskified-sdk/src/main/java/com/riskified/models/KycDetails.java
diff --git a/riskified-sdk/src/main/java/com/riskified/models/KycDetails.java b/riskified-sdk/src/main/java/com/riskified/models/KycDetails.java
new file mode 100644
index 0000000..beca90c
--- /dev/null
+++ b/riskified-sdk/src/main/java/com/riskified/models/KycDetails.java
@@ -0,0 +1,57 @@
+package com.riskified.models;
+
+import com.riskified.validations.FieldBadFormatException;
+import com.riskified.validations.IValidated;
+import com.riskified.validations.Validation;
+
+import java.util.Date;
+
+public class KycDetails implements IValidated {
+
+ private String vendorName;
+ private Date updateAt;
+ private Boolean kyc_verified;
+ private String kycType;
+
+
+ public KycDetails() {
+ }
+
+ public void validate(Validation validationType)
+ throws FieldBadFormatException {
+ }
+
+ public String getVendorName() {
+ return vendorName;
+ }
+
+ public void setVendorName(String vendorName) {
+ this.vendorName = vendorName;
+ }
+
+ public Date getUpdateAt() {
+ return updateAt;
+ }
+
+ public void setUpdateAt(Date updateAt) {
+ this.updateAt = updateAt;
+ }
+
+ public Boolean getKycVerified() {
+ return kyc_verified;
+ }
+
+ public void setKycVerified(Boolean kyc_verified) {
+ this.kyc_verified = kyc_verified;
+ }
+
+ public String getKycType() {
+ return kycType;
+ }
+
+ public void setKycType(String kycType) {
+ this.kycType = kycType;
+ }
+
+
+}
From 3a0d70711a1ef84fcbc27057d4603487be4834b7 Mon Sep 17 00:00:00 2001
From: Gering112 <45523369+Gering112@users.noreply.github.com>
Date: Wed, 2 Apr 2025 16:21:48 -0400
Subject: [PATCH 09/12] Added dateOfBirth and hasDefault moved kycVerified to
KycDetails
---
.../java/com/riskified/models/Customer.java | 20 +++++++++++++++----
1 file changed, 16 insertions(+), 4 deletions(-)
diff --git a/riskified-sdk/src/main/java/com/riskified/models/Customer.java b/riskified-sdk/src/main/java/com/riskified/models/Customer.java
index b897e90..e9d059f 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/Customer.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/Customer.java
@@ -34,7 +34,9 @@ public class Customer implements IValidated {
private Boolean verifiedPhone;
private Date verifiedPhoneAt;
private String userName;
- private Boolean kycVerified;
+ private Boolean hasDefaulted;
+ private Date dateOfBirth;
+ private List kycDetails;
public Customer() {
@@ -261,9 +263,19 @@ public Integer getLinkedAccounts() {
public void setUserName(String userName) { this.userName = userName; }
- public Boolean getKycVerified() { return kycVerified; }
+ public List getKycDetails() { return kycDetails; }
- public void setKycVerified(Boolean kycVerified) {
- this.kycVerified = kycVerified;
+ public void setKycDetails(List kycDetails) {
+ this.kycDetails = kycDetails;
}
+
+ public void setHasDefaulted(Boolean hasDefaulted) {
+ this.hasDefaulted = hasDefaulted;
+ }
+
+ public Boolean getHasDefaulted() { return hasDefaulted; }
+
+ public void setDateOfBirth(Date dateOfBirth) { this.dateOfBirth = dateOfBirth; }
+
+ public Date getDateOfBirth() { return dateOfBirth; }
}
From 6ed9b8f75d62b03e6fdce1c000fd820d2180f3dc Mon Sep 17 00:00:00 2001
From: Gering112 <45523369+Gering112@users.noreply.github.com>
Date: Wed, 2 Apr 2025 16:21:59 -0400
Subject: [PATCH 10/12] Added token field
---
.../com/riskified/models/BankWirePaymentDetails.java | 9 +++++++++
1 file changed, 9 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 ca83cd1..41bc08b 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/BankWirePaymentDetails.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/BankWirePaymentDetails.java
@@ -5,6 +5,7 @@
public class BankWirePaymentDetails implements IPaymentDetails {
private String accountNumber;
private String routingNumber;
+ private String token;
public BankWirePaymentDetails(String accountNumber, String routingNumber) {
this.accountNumber = accountNumber;
@@ -27,6 +28,14 @@ public void setRoutingNumber(String routingNumber) {
this.routingNumber = routingNumber;
}
+ public String getToken(){
+ return token;
+ }
+
+ public void setToken(String token){
+ this.token = token;
+ }
+
public void validate(Validation validationType) throws FieldBadFormatException {
if (validationType == Validation.ALL) {
Validate.notNullOrEmpty(this, this.accountNumber, "Bank Account Number");
From 55e1ed1cec57e23eaf246751825ac611896568dd Mon Sep 17 00:00:00 2001
From: Gering112 <45523369+Gering112@users.noreply.github.com>
Date: Thu, 3 Apr 2025 14:19:26 -0400
Subject: [PATCH 11/12] Update main.yml
---
.github/workflows/main.yml | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 2ec8d27..5e678e6 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -41,10 +41,10 @@ jobs:
- name: Build project with Maven
run: mvn -B package --file pom.xml
- - name: Publish to Apache Maven Central
- if: github.event_name == 'push' && github.ref == 'refs/heads/master'
- run: GPG_TTY=$(tty); mvn -s .github/workflows/maven-release-setting.xml clean deploy -DdeployAtEnd=true -DperformRelease=true -DskipTests -Dspotbugs.skip=true
- env:
- SERVER_OSSRH_USERNAME: ${{ secrets.SERVER_OSSRH_USERNAME }}
- SERVER_OSSRH_PASSWORD: ${{ secrets.SERVER_OSSRH_PASSWORD }}
- GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
+ # - name: Publish to Apache Maven Central
+ # if: github.event_name == 'push' && github.ref == 'refs/heads/master'
+ # run: GPG_TTY=$(tty); mvn -s .github/workflows/maven-release-setting.xml clean deploy -DdeployAtEnd=true -DperformRelease=true -DskipTests -Dspotbugs.skip=true
+ # env:
+ # SERVER_OSSRH_USERNAME: ${{ secrets.SERVER_OSSRH_USERNAME }}
+ # SERVER_OSSRH_PASSWORD: ${{ secrets.SERVER_OSSRH_PASSWORD }}
+ # GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
From b2a2a8adef66169a8df44fad090d9cfbc15ffe99 Mon Sep 17 00:00:00 2001
From: Gering112 <45523369+Gering112@users.noreply.github.com>
Date: Thu, 3 Apr 2025 18:22:48 -0400
Subject: [PATCH 12/12] Remove some shop url
---
.../com/riskified/samples/orderClient/Client.java | 14 +++-----------
1 file changed, 3 insertions(+), 11 deletions(-)
diff --git a/riskified-sample/src/main/java/com/riskified/samples/orderClient/Client.java b/riskified-sample/src/main/java/com/riskified/samples/orderClient/Client.java
index ee140e7..7a215ed 100644
--- a/riskified-sample/src/main/java/com/riskified/samples/orderClient/Client.java
+++ b/riskified-sample/src/main/java/com/riskified/samples/orderClient/Client.java
@@ -44,15 +44,7 @@ public static void main(String[] arg) throws FieldBadFormatException, ParseExcep
try {
// Riskified client parameters can be set in the constructor, like this:
// RiskifiedClient client = new RiskifiedClient("", "", Environment.SANDBOX);
- // Or according 'riskified_sdk.properties' configuration file, like this:
- //RiskifiedClient client = new RiskifiedClient("www.yossirtest_post.com", "6a21f867852d8a097b46803fa09ea61d", Environment.SANDBOX);
- RiskifiedClient client = new RiskifiedClient("geringtestAsync.com", "d68531d725768c84748b16749d184592", Environment.SANDBOX);
- //RiskifiedClient client = new RiskifiedClient("www.kaorisugado_test_pre.com", "db76c5924368ff011f697a365a9be778", Environment.SANDBOX, Validation.IGNORE_MISSING);
- //RiskifiedClient.RiskifiedClientBuilder builder = new RiskifiedClient.RiskifiedClientBuilder("www.theory.co.jp_jp", "4f65048287059f4a8aa4a36e0dd36aa5", Environment.SANDBOX);
- //builder.setRequestTimeout(10);
- //builder.setConnectionTimeout(5);
- //RiskifiedClient client = new RiskifiedClient(builder);
// Response resAdviseOrder = client.adviseOrder(adviseOrder);
//
@@ -213,7 +205,7 @@ private static Order decideOrder() throws ParseException {
order.setBrowserIp("113.32.8.18");
order.setTotalPrice(6600);
order.setSource("web");
- order.setEmail("3ds_not_recommended@test.com");
+ order.setEmail("test@test.com");
@@ -229,8 +221,8 @@ private static Order decideOrder() throws ParseException {
order.setDiscountCodes(Arrays.asList(new DiscountCode(0, "")));
- order.setPaymentDetails(Arrays.asList(new CreditCardPaymentDetails("5cbbdfa359d38b9d250f7a7c943c7935fab8e28d24b7b1fccd0eabf553f702ac", "", "", "410000******0100", "VISA") ));
- Customer customer = new Customer("kaori.sugado@riskified.com", "太郎", "佐藤", "1", parseDate("02-11-2025 00:00:00.0"), true, 2);
+ order.setPaymentDetails(Arrays.asList(new CreditCardPaymentDetails("1233434", "", "", "410000******0100", "VISA") ));
+ Customer customer = new Customer("test@test.com", "太郎", "佐藤", "1", parseDate("02-11-2025 00:00:00.0"), true, 2);
order.setCustomer(customer);
return order;