From eacebe4931a2d8d18440e7adcd3fc8c6e9d96497 Mon Sep 17 00:00:00 2001 From: tyler-techcombine Date: Wed, 12 Mar 2025 11:19:41 +0700 Subject: [PATCH 1/2] support merchant_advice_code in charge response --- src/main/java/co/omise/models/Charge.java | 6 ++++++ src/test/java/co/omise/requests/ChargeRequestTest.java | 1 + src/test/java/co/omise/requests/TokenRequestTest.java | 2 +- .../charges/chrg_test_4yq7duw15p9hdrjp8oq-get.json | 3 ++- 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/main/java/co/omise/models/Charge.java b/src/main/java/co/omise/models/Charge.java index 3c10a703..ff8dc083 100644 --- a/src/main/java/co/omise/models/Charge.java +++ b/src/main/java/co/omise/models/Charge.java @@ -93,6 +93,8 @@ public class Charge extends Model { private List webhookEndpoints; @JsonProperty("merchant_advice") private String merchantAdvice; + @JsonProperty("merchant_advice_code") + private String merchantAdviceCode; public long getAmount() { return this.amount; @@ -238,6 +240,10 @@ public void setFailureMessage(String failureMessage) { this.failureMessage = failureMessage; } + public String getMerchantAdviceCode() { return merchantAdviceCode; } + + public void setMerchantAdviceCode(String merchantAdviceCode) { this.merchantAdviceCode = merchantAdviceCode; } + public long getFee() { return this.fee; } diff --git a/src/test/java/co/omise/requests/ChargeRequestTest.java b/src/test/java/co/omise/requests/ChargeRequestTest.java index 6722f382..b83d45f1 100644 --- a/src/test/java/co/omise/requests/ChargeRequestTest.java +++ b/src/test/java/co/omise/requests/ChargeRequestTest.java @@ -26,6 +26,7 @@ public void testGet() throws IOException, OmiseException { assertEquals("thb", charge.getCurrency()); assertEquals("trxn_test_4yq7duwb9jts1vxgqua", charge.getTransaction()); assertEquals("Test advice", charge.getMerchantAdvice()); + assertEquals("Test advice code", charge.getMerchantAdviceCode()); } @Test diff --git a/src/test/java/co/omise/requests/TokenRequestTest.java b/src/test/java/co/omise/requests/TokenRequestTest.java index 26e6d8c5..cce4a91e 100644 --- a/src/test/java/co/omise/requests/TokenRequestTest.java +++ b/src/test/java/co/omise/requests/TokenRequestTest.java @@ -44,7 +44,7 @@ public void testCreate() throws IOException, OmiseException { assertRequested("POST", "/tokens", 200); assertVaultRequest(); - assertRequestBody("{\"card\":{\"city\":\"Bangkok\",\"country\":null,\"name\":\"JOHN DOE\",\"number\":\"4242424242424242\",\"state\":null,\"street1\":null,\"street2\":null,\"email\":\"email@opn.ooo\",\"expiration_month\":9,\"expiration_year\":2025,\"phone_number\":null,\"postal_code\":\"10240\",\"security_code\":\"123\"}}"); + assertRequestBody("{\"card\":{\"city\":\"Bangkok\",\"country\":null,\"name\":\"JOHN DOE\",\"number\":\"4242424242424242\",\"state\":null,\"street1\":null,\"street2\":null,\"email\":\"email@opn.ooo\",\"expiration_month\":3,\"expiration_year\":2026,\"phone_number\":null,\"postal_code\":\"10240\",\"security_code\":\"123\"}}"); assertEquals(TOKEN_ID, token.getId()); assertFalse(token.isLiveMode()); diff --git a/src/test/resources/testdata/fixtures/api.omise.co/charges/chrg_test_4yq7duw15p9hdrjp8oq-get.json b/src/test/resources/testdata/fixtures/api.omise.co/charges/chrg_test_4yq7duw15p9hdrjp8oq-get.json index 059a34bb..d5d8060f 100644 --- a/src/test/resources/testdata/fixtures/api.omise.co/charges/chrg_test_4yq7duw15p9hdrjp8oq-get.json +++ b/src/test/resources/testdata/fixtures/api.omise.co/charges/chrg_test_4yq7duw15p9hdrjp8oq-get.json @@ -59,5 +59,6 @@ "capturable": false, "reversible": false, "refundable": false, - "merchant_advice": "Test advice" + "merchant_advice": "Test advice", + "merchant_advice_code": "Test advice code" } From 4824fd336636a2e69c69582ea3351ca4b403b7ad Mon Sep 17 00:00:00 2001 From: tyler-techcombine Date: Thu, 20 Mar 2025 15:47:23 +0700 Subject: [PATCH 2/2] support missing_3ds_fields in charge response --- src/main/java/co/omise/models/Charge.java | 8 ++++++++ src/test/java/co/omise/requests/ChargeRequestTest.java | 1 + .../charges/chrg_test_4yq7duw15p9hdrjp8oq-get.json | 3 ++- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main/java/co/omise/models/Charge.java b/src/main/java/co/omise/models/Charge.java index ff8dc083..31e3db55 100644 --- a/src/main/java/co/omise/models/Charge.java +++ b/src/main/java/co/omise/models/Charge.java @@ -95,6 +95,8 @@ public class Charge extends Model { private String merchantAdvice; @JsonProperty("merchant_advice_code") private String merchantAdviceCode; + @JsonProperty("missing_3ds_fields") + private List missing3DSFields; public long getAmount() { return this.amount; @@ -516,6 +518,12 @@ public void setMerchantAdvice(String merchantAdvice) { this.merchantAdvice = merchantAdvice; } + public List getMissing3DSFields() { return missing3DSFields; } + + public void setMissing3DSFields(List missing3DSFields) { + this.missing3DSFields = missing3DSFields; + } + public static class ListRequestBuilder extends RequestBuilder> { private ScopedList.Options options; diff --git a/src/test/java/co/omise/requests/ChargeRequestTest.java b/src/test/java/co/omise/requests/ChargeRequestTest.java index b83d45f1..734285b0 100644 --- a/src/test/java/co/omise/requests/ChargeRequestTest.java +++ b/src/test/java/co/omise/requests/ChargeRequestTest.java @@ -27,6 +27,7 @@ public void testGet() throws IOException, OmiseException { assertEquals("trxn_test_4yq7duwb9jts1vxgqua", charge.getTransaction()); assertEquals("Test advice", charge.getMerchantAdvice()); assertEquals("Test advice code", charge.getMerchantAdviceCode()); + assertEquals(Collections.singletonList("email"), charge.getMissing3DSFields()); } @Test diff --git a/src/test/resources/testdata/fixtures/api.omise.co/charges/chrg_test_4yq7duw15p9hdrjp8oq-get.json b/src/test/resources/testdata/fixtures/api.omise.co/charges/chrg_test_4yq7duw15p9hdrjp8oq-get.json index d5d8060f..345184f3 100644 --- a/src/test/resources/testdata/fixtures/api.omise.co/charges/chrg_test_4yq7duw15p9hdrjp8oq-get.json +++ b/src/test/resources/testdata/fixtures/api.omise.co/charges/chrg_test_4yq7duw15p9hdrjp8oq-get.json @@ -60,5 +60,6 @@ "reversible": false, "refundable": false, "merchant_advice": "Test advice", - "merchant_advice_code": "Test advice code" + "merchant_advice_code": "Test advice code", + "missing_3ds_fields": ["email"] }