From b8e76ad5e612b801dadcff0ca846fce0b79d5c14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Burak=20Bald=C4=B1rl=C4=B1o=C4=9Flu?= Date: Tue, 20 Oct 2026 14:59:27 +0200 Subject: [PATCH] CG-5269 Remove cross-border settlement and payout account API --- .../craftgate/adapter/SettlementAdapter.java | 29 -------- .../io/craftgate/model/PayoutAccountType.java | 5 -- .../model/SettlementEarningsDestination.java | 1 - .../request/CreatePayoutAccountRequest.java | 21 ------ .../request/DeletePayoutAccountRequest.java | 14 ---- .../request/SearchPayoutAccountRequest.java | 24 ------- .../request/UpdatePayoutAccountRequest.java | 15 ----- .../response/PayoutAccountListResponse.java | 11 ---- .../response/PayoutAccountResponse.java | 17 ----- .../io/craftgate/sample/SettlementSample.java | 66 ------------------- 10 files changed, 203 deletions(-) delete mode 100644 src/main/java/io/craftgate/model/PayoutAccountType.java delete mode 100644 src/main/java/io/craftgate/request/CreatePayoutAccountRequest.java delete mode 100644 src/main/java/io/craftgate/request/DeletePayoutAccountRequest.java delete mode 100644 src/main/java/io/craftgate/request/SearchPayoutAccountRequest.java delete mode 100644 src/main/java/io/craftgate/request/UpdatePayoutAccountRequest.java delete mode 100644 src/main/java/io/craftgate/response/PayoutAccountListResponse.java delete mode 100644 src/main/java/io/craftgate/response/PayoutAccountResponse.java diff --git a/src/main/java/io/craftgate/adapter/SettlementAdapter.java b/src/main/java/io/craftgate/adapter/SettlementAdapter.java index b87df137..a815f67b 100644 --- a/src/main/java/io/craftgate/adapter/SettlementAdapter.java +++ b/src/main/java/io/craftgate/adapter/SettlementAdapter.java @@ -2,14 +2,7 @@ import io.craftgate.net.HttpClient; import io.craftgate.request.CreateInstantWalletSettlementRequest; -import io.craftgate.request.CreatePayoutAccountRequest; -import io.craftgate.request.DeletePayoutAccountRequest; -import io.craftgate.request.SearchPayoutAccountRequest; -import io.craftgate.request.UpdatePayoutAccountRequest; import io.craftgate.request.common.RequestOptions; -import io.craftgate.request.common.RequestQueryParamsBuilder; -import io.craftgate.response.PayoutAccountListResponse; -import io.craftgate.response.PayoutAccountResponse; import io.craftgate.response.SettlementResponse; public class SettlementAdapter extends BaseAdapter { @@ -22,26 +15,4 @@ public SettlementResponse createInstantWalletSettlement(CreateInstantWalletSettl String path = "/settlement/v1/instant-wallet-settlements"; return HttpClient.post(requestOptions.getBaseUrl() + path, createHeaders(request, path, requestOptions), request, SettlementResponse.class); } - - public PayoutAccountResponse createPayoutAccount(CreatePayoutAccountRequest request) { - String path = "/settlement/v1/payout-accounts"; - return HttpClient.post(requestOptions.getBaseUrl() + path, createHeaders(request, path, requestOptions), request, PayoutAccountResponse.class); - } - - public void updatePayoutAccount(Long id, UpdatePayoutAccountRequest request) { - String path = "/settlement/v1/payout-accounts/" + id; - HttpClient.put(requestOptions.getBaseUrl() + path, createHeaders(request, path, requestOptions), - request, Void.class); - } - - public void deletePayoutAccount(DeletePayoutAccountRequest deletePayoutAccountRequest) { - String path = "/settlement/v1/payout-accounts/" + deletePayoutAccountRequest.getId(); - HttpClient.delete(requestOptions.getBaseUrl() + path, createHeadersWithoutBody(deletePayoutAccountRequest, path, requestOptions)); - } - - public PayoutAccountListResponse searchPayoutAccount(SearchPayoutAccountRequest request) { - String query = RequestQueryParamsBuilder.buildQueryParam(request); - String path = "/settlement/v1/payout-accounts" + query; - return HttpClient.get(requestOptions.getBaseUrl() + path, createHeadersWithoutBody(request, path, requestOptions), PayoutAccountListResponse.class); - } } diff --git a/src/main/java/io/craftgate/model/PayoutAccountType.java b/src/main/java/io/craftgate/model/PayoutAccountType.java deleted file mode 100644 index 1a78e17b..00000000 --- a/src/main/java/io/craftgate/model/PayoutAccountType.java +++ /dev/null @@ -1,5 +0,0 @@ -package io.craftgate.model; - -public enum PayoutAccountType { - WISE -} diff --git a/src/main/java/io/craftgate/model/SettlementEarningsDestination.java b/src/main/java/io/craftgate/model/SettlementEarningsDestination.java index 1657a251..2fc86c75 100644 --- a/src/main/java/io/craftgate/model/SettlementEarningsDestination.java +++ b/src/main/java/io/craftgate/model/SettlementEarningsDestination.java @@ -4,6 +4,5 @@ public enum SettlementEarningsDestination { IBAN, WALLET, - CROSS_BORDER, NONE } diff --git a/src/main/java/io/craftgate/request/CreatePayoutAccountRequest.java b/src/main/java/io/craftgate/request/CreatePayoutAccountRequest.java deleted file mode 100644 index 1e079051..00000000 --- a/src/main/java/io/craftgate/request/CreatePayoutAccountRequest.java +++ /dev/null @@ -1,21 +0,0 @@ -package io.craftgate.request; - -import io.craftgate.model.AccountOwner; -import io.craftgate.model.Currency; -import io.craftgate.model.PayoutAccountType; -import lombok.Data; -import lombok.experimental.SuperBuilder; -import lombok.EqualsAndHashCode; -import io.craftgate.request.common.BaseRequest; - -@Data -@SuperBuilder -@EqualsAndHashCode(callSuper = false) -public class CreatePayoutAccountRequest extends BaseRequest { - - private PayoutAccountType type; - private String externalAccountId; - private Currency currency; - private AccountOwner accountOwner; - private Long subMerchantMemberId; -} diff --git a/src/main/java/io/craftgate/request/DeletePayoutAccountRequest.java b/src/main/java/io/craftgate/request/DeletePayoutAccountRequest.java deleted file mode 100644 index b5d2cabe..00000000 --- a/src/main/java/io/craftgate/request/DeletePayoutAccountRequest.java +++ /dev/null @@ -1,14 +0,0 @@ -package io.craftgate.request; - -import io.craftgate.request.common.BaseRequest; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.SuperBuilder; - -@Data -@EqualsAndHashCode(callSuper = false) -@SuperBuilder -public class DeletePayoutAccountRequest extends BaseRequest { - - private Long id; -} diff --git a/src/main/java/io/craftgate/request/SearchPayoutAccountRequest.java b/src/main/java/io/craftgate/request/SearchPayoutAccountRequest.java deleted file mode 100644 index 0d17ed56..00000000 --- a/src/main/java/io/craftgate/request/SearchPayoutAccountRequest.java +++ /dev/null @@ -1,24 +0,0 @@ -package io.craftgate.request; - -import io.craftgate.model.AccountOwner; -import io.craftgate.model.Currency; -import lombok.Builder; -import lombok.Data; -import lombok.experimental.SuperBuilder; -import lombok.EqualsAndHashCode; -import io.craftgate.request.common.BaseRequest; -@Data -@SuperBuilder -@EqualsAndHashCode(callSuper = false) -public class SearchPayoutAccountRequest extends BaseRequest { - - private Currency currency; - private AccountOwner accountOwner; - private Long subMerchantMemberId; - - @Builder.Default - private Integer page = 0; - - @Builder.Default - private Integer size = 10; -} diff --git a/src/main/java/io/craftgate/request/UpdatePayoutAccountRequest.java b/src/main/java/io/craftgate/request/UpdatePayoutAccountRequest.java deleted file mode 100644 index 39bacac6..00000000 --- a/src/main/java/io/craftgate/request/UpdatePayoutAccountRequest.java +++ /dev/null @@ -1,15 +0,0 @@ -package io.craftgate.request; - -import io.craftgate.model.PayoutAccountType; -import lombok.Data; -import lombok.experimental.SuperBuilder; -import lombok.EqualsAndHashCode; -import io.craftgate.request.common.BaseRequest; -@Data -@SuperBuilder -@EqualsAndHashCode(callSuper = false) -public class UpdatePayoutAccountRequest extends BaseRequest { - - private PayoutAccountType type; - private String externalAccountId; -} diff --git a/src/main/java/io/craftgate/response/PayoutAccountListResponse.java b/src/main/java/io/craftgate/response/PayoutAccountListResponse.java deleted file mode 100644 index cc414c54..00000000 --- a/src/main/java/io/craftgate/response/PayoutAccountListResponse.java +++ /dev/null @@ -1,11 +0,0 @@ -package io.craftgate.response; - -import io.craftgate.response.common.ListResponse; -import lombok.Data; -import lombok.EqualsAndHashCode; - -@Data -@EqualsAndHashCode(callSuper = true) -public class PayoutAccountListResponse extends ListResponse { - -} diff --git a/src/main/java/io/craftgate/response/PayoutAccountResponse.java b/src/main/java/io/craftgate/response/PayoutAccountResponse.java deleted file mode 100644 index c94731b4..00000000 --- a/src/main/java/io/craftgate/response/PayoutAccountResponse.java +++ /dev/null @@ -1,17 +0,0 @@ -package io.craftgate.response; - -import io.craftgate.model.AccountOwner; -import io.craftgate.model.PayoutAccountType; -import lombok.Data; - -import java.util.Currency; - -@Data -public class PayoutAccountResponse { - private Long id; - private PayoutAccountType type; - private String externalAccountId; - private Currency currency; - private AccountOwner accountOwner; - private Long subMerchantMemberId; -} diff --git a/src/test/java/io/craftgate/sample/SettlementSample.java b/src/test/java/io/craftgate/sample/SettlementSample.java index 29002850..bd7d6d8b 100644 --- a/src/test/java/io/craftgate/sample/SettlementSample.java +++ b/src/test/java/io/craftgate/sample/SettlementSample.java @@ -1,16 +1,7 @@ package io.craftgate.sample; import io.craftgate.Craftgate; -import io.craftgate.model.AccountOwner; -import io.craftgate.model.Currency; -import io.craftgate.model.PayoutAccountType; import io.craftgate.request.CreateInstantWalletSettlementRequest; -import io.craftgate.request.CreatePayoutAccountRequest; -import io.craftgate.request.DeletePayoutAccountRequest; -import io.craftgate.request.SearchPayoutAccountRequest; -import io.craftgate.request.UpdatePayoutAccountRequest; -import io.craftgate.response.PayoutAccountListResponse; -import io.craftgate.response.PayoutAccountResponse; import io.craftgate.response.SettlementResponse; import org.junit.jupiter.api.Test; @@ -28,61 +19,4 @@ void create_instant_wallet_settlement() { SettlementResponse response = craftgate.settlement().createInstantWalletSettlement(request); assertNotNull(response.getSettlementResultStatus()); } - - @Test - void create_merchant_payout_account() { - CreatePayoutAccountRequest request = CreatePayoutAccountRequest.builder() - .accountOwner(AccountOwner.MERCHANT) - .currency(Currency.USD) - .type(PayoutAccountType.WISE) - .externalAccountId("wiseRecipientId") - .build(); - - PayoutAccountResponse response = craftgate.settlement().createPayoutAccount(request); - assertNotNull(response.getId()); - } - - @Test - void create_sub_merchant_payout_account() { - CreatePayoutAccountRequest request = CreatePayoutAccountRequest.builder() - .accountOwner(AccountOwner.SUB_MERCHANT_MEMBER) - .subMerchantMemberId(1L) - .currency(Currency.USD) - .type(PayoutAccountType.WISE) - .externalAccountId("wiseRecipientId") - .build(); - - PayoutAccountResponse response = craftgate.settlement().createPayoutAccount(request); - assertNotNull(response.getId()); - } - - @Test - void update_payout_account() { - UpdatePayoutAccountRequest request = UpdatePayoutAccountRequest.builder() - .type(PayoutAccountType.WISE) - .externalAccountId("wiseRecipientId2") - .build(); - - craftgate.settlement().updatePayoutAccount(11L, request); - } - - @Test - void search_payout_account() { - SearchPayoutAccountRequest request = SearchPayoutAccountRequest.builder() - .accountOwner(AccountOwner.MERCHANT) - .currency(Currency.USD) - .page(0) - .size(10) - .build(); - - PayoutAccountListResponse response = craftgate.settlement().searchPayoutAccount(request); - assertNotNull(response.getItems()); - } - - @Test - void delete_payout_account() { - craftgate.settlement().deletePayoutAccount(DeletePayoutAccountRequest.builder() - .id(10L) - .build()); - } }