File tree Expand file tree Collapse file tree
lib/mobility-core/src/Kernel/External/Payment Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -685,7 +685,8 @@ refundPayment serviceConfig mRoutingId req = case serviceConfig of
685685 amount = req. amount,
686686 refundApplicationFee = False ,
687687 driverAccountId = driverAccount,
688- email = req. email
688+ email = req. email,
689+ deductFromDriver = req. deductFromDriver
689690 }
690691 resp <- Stripe. createRefund cfg stripeReq
691692 pure
Original file line number Diff line number Diff line change @@ -730,9 +730,9 @@ createRefund config req = do
730730 -- Driver receives payment directly (Direct Charges)
731731 ConnectedAccount -> createConnectedAccountRefund url apiKey
732732 where
733- -- Platform Charge: Need to reverse transfer
733+ -- Platform Charge: Need to reverse transfer (req.deductFromDriver overrides default Just True).
734734 createPlatformRefund url apiKey = do
735- let reverseTransfer = Just True
735+ let reverseTransfer = req . deductFromDriver <|> Just True
736736 refundReq = mkRefundReq req reverseTransfer
737737 mkRefundResp <$> Stripe. createRefund url apiKey Nothing refundReq
738738
Original file line number Diff line number Diff line change @@ -938,7 +938,8 @@ data CreateRefundReq = CreateRefundReq
938938 amount :: Maybe HighPrecMoney ,
939939 refundApplicationFee :: Bool ,
940940 driverAccountId :: AccountId ,
941- email :: Maybe Text
941+ email :: Maybe Text ,
942+ deductFromDriver :: Maybe Bool
942943 }
943944
944945data CreateRefundResp = CreateRefundResp
@@ -1031,6 +1032,7 @@ data RefundPaymentReq = RefundPaymentReq
10311032 paymentIntentId :: Maybe PaymentIntentId ,
10321033 driverAccountId :: Maybe AccountId ,
10331034 email :: Maybe Text ,
1035+ deductFromDriver :: Maybe Bool ,
10341036 -- Juspay-specific
10351037 splitSettlementDetails :: Maybe RefundSplitSettlementDetails
10361038 }
You can’t perform that action at this time.
0 commit comments