diff --git a/riskified-sdk/pom.xml b/riskified-sdk/pom.xml
index 4e82514..e163122 100644
--- a/riskified-sdk/pom.xml
+++ b/riskified-sdk/pom.xml
@@ -4,7 +4,7 @@
4.0.0
com.riskified
riskified-sdk
- v3.1.0
+ v3.2.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 86f80a9..c51ddfd 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.1.0"); // TODO: take the version automatically
+ postRequest.setHeader("User-Agent","riskified_java_sdk/3.2.0"); // TODO: take the version automatically
postRequest.setHeader("Version",versionHeaderValue);
return postRequest;
}
diff --git a/riskified-sdk/src/main/java/com/riskified/models/BaseOrder.java b/riskified-sdk/src/main/java/com/riskified/models/BaseOrder.java
index 7e61eca..04436b3 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/BaseOrder.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/BaseOrder.java
@@ -83,10 +83,15 @@ public void validate(Validation validationType) throws FieldBadFormatException {
Validate.notNull(this, this.createdAt, "Created At");
Validate.notNull(this, this.updatedAt, "Updated At");
Validate.notNullOrEmpty(this, this.gateway, "Gateway");
- Validate.notNullOrEmpty(this, this.browserIp, "Browser IP");
+ if (this.source != null && !this.source.equalsIgnoreCase("phone")){
+ Validate.notNullOrEmpty(this, this.browserIp, "Browser IP");
+ }
+
Validate.notNull(this, this.totalPrice, "Total Price");
Validate.notNull(this, this.lineItems, "Line Items");
- Validate.notNull(this, this.paymentDetails, "Payment Details");
+ if (this.gateway != null && !this.gateway.equalsIgnoreCase("giftcard")){
+ Validate.notNull(this, this.paymentDetails, "Payment Details");
+ }
Validate.notNull(this, this.customer, "Customer");
Validate.notNull(this, this.billingAddress, "Billing Address");
}
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 e9d059f..30fbc17 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/Customer.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/Customer.java
@@ -62,12 +62,14 @@ public Customer(String email, String firstName, String lastName, String id, Date
public void validate(Validation validationType) throws FieldBadFormatException {
if (validationType == Validation.ALL) {
- Validate.notNullOrEmpty(this, this.email, "Email");
Validate.notNullOrEmpty(this, this.firstName, "First Name");
Validate.notNullOrEmpty(this, this.lastName, "Last Name");
- Validate.notNullOrEmpty(this, this.id, "Id");
- Validate.notNull(this, this.createdAt, "Created At");
- Validate.notNull(this, this.verifiedEmail, "Verified Email");
+ if (this.accountType != null && !this.accountType.equalsIgnoreCase("guest")){
+ Validate.notNullOrEmpty(this, this.email, "Email");
+ Validate.notNullOrEmpty(this, this.id, "Id");
+ Validate.notNull(this, this.createdAt, "Created At");
+ Validate.notNull(this, this.verifiedEmail, "Verified Email");
+ }
}
if (this.email != null) {
diff --git a/riskified-sdk/src/main/java/com/riskified/models/PolicyProtect.java b/riskified-sdk/src/main/java/com/riskified/models/PolicyProtect.java
new file mode 100644
index 0000000..54dc30a
--- /dev/null
+++ b/riskified-sdk/src/main/java/com/riskified/models/PolicyProtect.java
@@ -0,0 +1,13 @@
+package com.riskified.models;
+
+import java.util.List;
+
+public class PolicyProtect {
+ private List useCases;
+ public List getUseCases() {
+ return useCases;
+ }
+ public void setUseCases(List useCases) {
+ this.useCases = useCases;
+ }
+}
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 163aa14..8571322 100644
--- a/riskified-sdk/src/main/java/com/riskified/models/ResOrder.java
+++ b/riskified-sdk/src/main/java/com/riskified/models/ResOrder.java
@@ -14,6 +14,7 @@ public class ResOrder {
private Advice advice;
private RecoveryEligibility recoveryEligibility;
private Double riskScore;
+ private PolicyProtect policyProtect;
public String getId() {
@@ -105,4 +106,11 @@ public void setAction(String action) {
public Double getRiskScore(){return riskScore;}
+ public PolicyProtect getPolicyProtect() {
+ return policyProtect;
+ }
+ public void setPolicyProtect(PolicyProtect policyProtect) {
+ this.policyProtect = policyProtect;
+ }
+
}
diff --git a/riskified-sdk/src/main/java/com/riskified/models/UseCase.java b/riskified-sdk/src/main/java/com/riskified/models/UseCase.java
new file mode 100644
index 0000000..c355558
--- /dev/null
+++ b/riskified-sdk/src/main/java/com/riskified/models/UseCase.java
@@ -0,0 +1,16 @@
+package com.riskified.models;
+
+public class UseCase {
+ private String useCase;
+ private String decision;
+
+ public String getUseCase() {
+ return useCase;
+ }
+ public void setUseCase(String useCase) {
+ this.useCase = useCase;
+ }
+ public String getDecision() {
+ return decision;
+ }
+}
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 2f62a5f..7a7e778 100644
--- a/riskified-sdk/src/main/java/com/riskified/notifications/Notification.java
+++ b/riskified-sdk/src/main/java/com/riskified/notifications/Notification.java
@@ -2,6 +2,7 @@
import com.riskified.models.Context;
import com.riskified.models.Custom;
+import com.riskified.models.PolicyProtect;
import com.riskified.models.RecoveryEligibility;
// Shop URL may also be added to the API notifications from Riskified depending on your
@@ -32,6 +33,7 @@ public static class NotificationOrder {
private RecoveryEligibility recoveryEligibility;
private Context context;
private String[] decision_reasons;
+ private PolicyProtect policyProtect;
public String getId() {
return id;
@@ -106,5 +108,10 @@ public String[] getDecisionReasons() {
public void setDecisionReasons(String[] decisionReasons) {
this.decision_reasons = decisionReasons;
}
+
+ public PolicyProtect getPolicyProtect() {
+ return policyProtect;
+ }
+ public void setPolicyProtect(PolicyProtect policyProtect) {}
}
}