From 4329eee7640efd429057747ea3b35da393c09df8 Mon Sep 17 00:00:00 2001 From: Onur Polattimur Date: Wed, 18 Mar 2026 10:34:03 +0300 Subject: [PATCH] Add RoutingOptions to payment requests --- .../request/CreateDepositPaymentRequest.java | 2 ++ .../craftgate/request/CreatePaymentRequest.java | 2 ++ .../request/InitCheckoutPaymentRequest.java | 2 ++ .../io/craftgate/request/dto/RoutingOptions.java | 15 +++++++++++++++ 4 files changed, 21 insertions(+) create mode 100644 src/main/java/io/craftgate/request/dto/RoutingOptions.java diff --git a/src/main/java/io/craftgate/request/CreateDepositPaymentRequest.java b/src/main/java/io/craftgate/request/CreateDepositPaymentRequest.java index 0633d84c..19818d66 100644 --- a/src/main/java/io/craftgate/request/CreateDepositPaymentRequest.java +++ b/src/main/java/io/craftgate/request/CreateDepositPaymentRequest.java @@ -2,6 +2,7 @@ import io.craftgate.model.Currency; import io.craftgate.request.dto.Card; +import io.craftgate.request.dto.RoutingOptions; import lombok.Builder; import lombok.Data; @@ -19,4 +20,5 @@ public class CreateDepositPaymentRequest { private String posAlias; private String clientIp; private Card card; + private RoutingOptions routingOptions; } diff --git a/src/main/java/io/craftgate/request/CreatePaymentRequest.java b/src/main/java/io/craftgate/request/CreatePaymentRequest.java index adde5591..72b45d57 100644 --- a/src/main/java/io/craftgate/request/CreatePaymentRequest.java +++ b/src/main/java/io/craftgate/request/CreatePaymentRequest.java @@ -6,6 +6,7 @@ import io.craftgate.request.dto.Card; import io.craftgate.request.dto.FraudCheckParameters; import io.craftgate.request.dto.PaymentItem; +import io.craftgate.request.dto.RoutingOptions; import lombok.Builder; import lombok.Data; import lombok.experimental.SuperBuilder; @@ -39,6 +40,7 @@ public class CreatePaymentRequest { protected Long buyerMemberId; protected String bankOrderId; protected Card card; + protected RoutingOptions routingOptions; protected FraudCheckParameters fraudParams; protected List items; protected Map additionalParams; diff --git a/src/main/java/io/craftgate/request/InitCheckoutPaymentRequest.java b/src/main/java/io/craftgate/request/InitCheckoutPaymentRequest.java index 674cacdc..3115887c 100644 --- a/src/main/java/io/craftgate/request/InitCheckoutPaymentRequest.java +++ b/src/main/java/io/craftgate/request/InitCheckoutPaymentRequest.java @@ -7,6 +7,7 @@ import io.craftgate.request.dto.CustomInstallment; import io.craftgate.request.dto.FraudCheckParameters; import io.craftgate.request.dto.PaymentItem; +import io.craftgate.request.dto.RoutingOptions; import lombok.Builder; import lombok.Data; @@ -53,6 +54,7 @@ public class InitCheckoutPaymentRequest { protected Long ttl; protected List customInstallments; protected List items; + protected RoutingOptions routingOptions; protected FraudCheckParameters fraudParams; protected Map additionalParams; protected Map> cardBrandInstallments; diff --git a/src/main/java/io/craftgate/request/dto/RoutingOptions.java b/src/main/java/io/craftgate/request/dto/RoutingOptions.java new file mode 100644 index 00000000..9d11e208 --- /dev/null +++ b/src/main/java/io/craftgate/request/dto/RoutingOptions.java @@ -0,0 +1,15 @@ +package io.craftgate.request.dto; + +import java.util.List; + +public class RoutingOptions { + + private OrderingRule orderingRule; + private List posAliases; + + public enum OrderingRule { + ON_US, + LOW_COMMISSION_RATE, + IN_ORDER + } +}