From 1ddb3a019ae00517ca817ee6db4236da73a352a1 Mon Sep 17 00:00:00 2001 From: Emre INAL Date: Thu, 13 Aug 2026 10:52:40 +0300 Subject: [PATCH 1/2] Adds installment and loyaltyType to RetrieveLoyaltiesRequest --- build.gradle | 2 +- .../request/RetrieveLoyaltiesRequest.java | 9 ++++---- .../io/craftgate/sample/PaymentSample.java | 21 +++++++++++++++++++ 3 files changed, 27 insertions(+), 5 deletions(-) diff --git a/build.gradle b/build.gradle index 72c4261d..89b27e42 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,7 @@ plugins { } repositories { - jcenter() + mavenCentral() } dependencies { diff --git a/src/main/java/io/craftgate/request/RetrieveLoyaltiesRequest.java b/src/main/java/io/craftgate/request/RetrieveLoyaltiesRequest.java index 5d48eb11..d017a246 100644 --- a/src/main/java/io/craftgate/request/RetrieveLoyaltiesRequest.java +++ b/src/main/java/io/craftgate/request/RetrieveLoyaltiesRequest.java @@ -1,10 +1,11 @@ package io.craftgate.request; +import io.craftgate.model.LoyaltyType; +import io.craftgate.request.common.BaseRequest; import io.craftgate.request.dto.FraudCheckParameters; import lombok.Data; -import lombok.experimental.SuperBuilder; import lombok.EqualsAndHashCode; -import io.craftgate.request.common.BaseRequest; +import lombok.experimental.SuperBuilder; @Data @SuperBuilder @@ -14,10 +15,10 @@ public class RetrieveLoyaltiesRequest extends BaseRequest { private String expireYear; private String expireMonth; private String cvc; - private String cardUserKey; private String cardToken; - + private Integer installment; + private LoyaltyType loyaltyType; private String clientIp; private String conversationId; private FraudCheckParameters fraudParams; diff --git a/src/test/java/io/craftgate/sample/PaymentSample.java b/src/test/java/io/craftgate/sample/PaymentSample.java index c2e7f1dc..c6774f59 100644 --- a/src/test/java/io/craftgate/sample/PaymentSample.java +++ b/src/test/java/io/craftgate/sample/PaymentSample.java @@ -1969,6 +1969,27 @@ void retrieve_loyalties() { assertEquals(new BigDecimal("5.20"), response.getLoyalties().get(0).getReward().getFirmRewardMoney()); } + @Test + void retrieve_loyalties_by_installment() { + RetrieveLoyaltiesRequest request = RetrieveLoyaltiesRequest.builder() + .cardNumber("5482370000000003") + .expireYear("2044") + .expireMonth("07") + .cvc("000") + .installment(2) + .loyaltyType(LoyaltyType.ADDITIONAL_INSTALLMENT) + .build(); + + RetrieveLoyaltiesResponse response = craftgate.payment().retrieveLoyalties(request); + assertNotNull(response); + assertEquals("Bonus", response.getCardBrand()); + assertNotNull(response.getLoyalties()); + assertFalse(response.getLoyalties().isEmpty()); + assertEquals(LoyaltyType.ADDITIONAL_INSTALLMENT, response.getLoyalties().get(0).getType()); + assertEquals("+5 taksit", response.getLoyalties().get(0).getMessage()); + assertEquals("installment5", response.getLoyalties().get(0).getLoyaltyData().getCode()); + } + @Test void refund_payment() { RefundPaymentRequest request = RefundPaymentRequest.builder() From d8d9567feb94d23624f64f0da1e84e54f027bfe3 Mon Sep 17 00:00:00 2001 From: Emre INAL Date: Thu, 13 Aug 2026 11:01:56 +0300 Subject: [PATCH 2/2] fix cardBrand --- src/test/java/io/craftgate/sample/PaymentSample.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/io/craftgate/sample/PaymentSample.java b/src/test/java/io/craftgate/sample/PaymentSample.java index c6774f59..3e16c979 100644 --- a/src/test/java/io/craftgate/sample/PaymentSample.java +++ b/src/test/java/io/craftgate/sample/PaymentSample.java @@ -1982,7 +1982,7 @@ void retrieve_loyalties_by_installment() { RetrieveLoyaltiesResponse response = craftgate.payment().retrieveLoyalties(request); assertNotNull(response); - assertEquals("Bonus", response.getCardBrand()); + assertEquals("Maximum", response.getCardBrand()); assertNotNull(response.getLoyalties()); assertFalse(response.getLoyalties().isEmpty()); assertEquals(LoyaltyType.ADDITIONAL_INSTALLMENT, response.getLoyalties().get(0).getType());