From ae684dcea4a5cf5b3382ac1afc4a77f98cb24b04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9D=B4=EB=8C=80=ED=99=98?= Date: Mon, 12 Oct 2026 18:29:07 +0900 Subject: [PATCH] =?UTF-8?q?Stripe=20=ED=99=98=EB=B6=88=20=EC=A0=81?= =?UTF-8?q?=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/BORtngudrefndService.java | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/main/java/com/wb/domainserver/domain/gcone/ordr/rtngudrefnd/service/BORtngudrefndService.java b/src/main/java/com/wb/domainserver/domain/gcone/ordr/rtngudrefnd/service/BORtngudrefndService.java index 588eae7c..aa2a898a 100644 --- a/src/main/java/com/wb/domainserver/domain/gcone/ordr/rtngudrefnd/service/BORtngudrefndService.java +++ b/src/main/java/com/wb/domainserver/domain/gcone/ordr/rtngudrefnd/service/BORtngudrefndService.java @@ -1,6 +1,9 @@ package com.wb.domainserver.domain.gcone.ordr.rtngudrefnd.service; import com.fasterxml.jackson.databind.ObjectMapper; +import com.stripe.StripeClient; +import com.stripe.model.Refund; +import com.stripe.param.RefundCreateParams; import com.wb.domainserver.domain.gcone.goods.goods.service.BOGoodsService; import com.wb.domainserver.domain.gcone.goods.purchs.mapper.BOPurchsMapper; import com.wb.domainserver.domain.gcone.goods.purchs.service.BOOrderService; @@ -1151,6 +1154,30 @@ public class BORtngudrefndService { throw new WnbtRestException("잘못된 요청입니다. 관리자에게 문의하세요."); } + } else if ("stripe".equals(setle.getPgCmpnyNm())) { + log.debug("stripe 취소 진입"); + + StripeClient client = new StripeClient("sk_test_51TyR73GgW2hla0lOFbAPuSlGp3nDswNX54tikyI2OxFDtUU8LDC6ooahlgfV5qXPMD2y3V035UKhzz3LA1RcaF6700Lck9uPVR"); + RefundCreateParams params = + RefundCreateParams.builder() + .setPaymentIntent(setle.getPgInnb()) + .setAmount(Long.valueOf(cancelAmt)) + .build(); + Refund refund = client.v1().refunds().create(params); + String resultCode = refund.getStatus(); + + if ("succeeded".equals(resultCode)) { + // succeeded : 취소성공 + log.debug(resultCode); + message.put("setleStatus", resultCode); + message.put("setleMessage", "Refund is expected to arrive in customer’s bank"); + } else { + log.debug(resultCode); + message.put("setleStatus", resultCode); + message.put("setleMessage", resultCode); + logDtlCn = "잘못된 요청입니다. 관리자에게 문의하세요."; + throw new WnbtRestException("잘못된 요청입니다. 관리자에게 문의하세요."); + } } }