mirror of
				https://github.com/juspay/hyperswitch.git
				synced 2025-10-31 01:57:45 +08:00 
			
		
		
		
	fix(connector): fix for sending refund_amount in connectors refund request (#1278)
Co-authored-by: Narayan Bhat <48803246+Narayanbhat166@users.noreply.github.com>
This commit is contained in:
		| @ -480,7 +480,7 @@ impl<F> TryFrom<&types::RefundsRouterData<F>> for BamboraRefundRequest { | ||||
|     type Error = error_stack::Report<errors::ParsingError>; | ||||
|     fn try_from(item: &types::RefundsRouterData<F>) -> Result<Self, Self::Error> { | ||||
|         Ok(Self { | ||||
|             amount: item.request.amount, | ||||
|             amount: item.request.refund_amount, | ||||
|         }) | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -463,7 +463,7 @@ impl<F> TryFrom<&types::RefundsRouterData<F>> for ForteRefundRequest { | ||||
|             utils::to_connector_meta(item.request.connector_metadata.clone())?; | ||||
|         let auth_code = connector_auth_id.auth_id; | ||||
|         let authorization_amount = | ||||
|             utils::to_currency_base_unit_asf64(item.request.amount, item.request.currency)?; | ||||
|             utils::to_currency_base_unit_asf64(item.request.refund_amount, item.request.currency)?; | ||||
|         Ok(Self { | ||||
|             action: "reverse".to_string(), | ||||
|             authorization_amount, | ||||
|  | ||||
| @ -352,7 +352,7 @@ impl<F> TryFrom<&types::RefundsRouterData<F>> for MollieRefundRequest { | ||||
|     fn try_from(item: &types::RefundsRouterData<F>) -> Result<Self, Self::Error> { | ||||
|         let amount = Amount { | ||||
|             currency: item.request.currency, | ||||
|             value: utils::to_currency_base_unit(item.request.amount, item.request.currency)?, | ||||
|             value: utils::to_currency_base_unit(item.request.refund_amount, item.request.currency)?, | ||||
|         }; | ||||
|         Ok(Self { | ||||
|             amount, | ||||
|  | ||||
| @ -508,7 +508,7 @@ impl<F> TryFrom<&types::RefundsRouterData<F>> for MultisafepayRefundRequest { | ||||
|     fn try_from(item: &types::RefundsRouterData<F>) -> Result<Self, Self::Error> { | ||||
|         Ok(Self { | ||||
|             currency: item.request.currency, | ||||
|             amount: item.request.amount, | ||||
|             amount: item.request.refund_amount, | ||||
|             description: item.description.clone(), | ||||
|             refund_order_id: Some(item.request.refund_id.clone()), | ||||
|             checkout_data: None, | ||||
|  | ||||
| @ -1009,7 +1009,7 @@ impl TryFrom<&types::RefundExecuteRouterData> for NuveiPaymentFlowRequest { | ||||
|         Self::try_from(NuveiPaymentRequestData { | ||||
|             client_request_id: item.attempt_id.clone(), | ||||
|             connector_auth_type: item.connector_auth_type.clone(), | ||||
|             amount: item.request.amount.to_string(), | ||||
|             amount: item.request.refund_amount.to_string(), | ||||
|             currency: item.request.currency, | ||||
|             related_transaction_id: Some(item.request.connector_transaction_id.clone()), | ||||
|             ..Default::default() | ||||
|  | ||||
| @ -145,7 +145,7 @@ impl<F> TryFrom<&types::RefundsRouterData<F>> for OpennodeRefundRequest { | ||||
|     type Error = error_stack::Report<errors::ConnectorError>; | ||||
|     fn try_from(item: &types::RefundsRouterData<F>) -> Result<Self, Self::Error> { | ||||
|         Ok(Self { | ||||
|             amount: item.request.amount, | ||||
|             amount: item.request.refund_amount, | ||||
|         }) | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -257,7 +257,7 @@ impl<F> TryFrom<&types::RefundsRouterData<F>> for RapydRefundRequest { | ||||
|     fn try_from(item: &types::RefundsRouterData<F>) -> Result<Self, Self::Error> { | ||||
|         Ok(Self { | ||||
|             payment: item.request.connector_transaction_id.to_string(), | ||||
|             amount: Some(item.request.amount), | ||||
|             amount: Some(item.request.refund_amount), | ||||
|             currency: Some(item.request.currency), | ||||
|         }) | ||||
|     } | ||||
|  | ||||
| @ -885,7 +885,7 @@ impl<F> TryFrom<&types::RefundsRouterData<F>> for TrustpayRefundRequest { | ||||
|     fn try_from(item: &types::RefundsRouterData<F>) -> Result<Self, Self::Error> { | ||||
|         let amount = format!( | ||||
|             "{:.2}", | ||||
|             utils::to_currency_base_unit(item.request.amount, item.request.currency)? | ||||
|             utils::to_currency_base_unit(item.request.refund_amount, item.request.currency)? | ||||
|                 .parse::<f64>() | ||||
|                 .into_report() | ||||
|                 .change_context(errors::ConnectorError::RequestEncodingFailed)? | ||||
|  | ||||
| @ -171,7 +171,7 @@ impl<F> TryFrom<&types::RefundsRouterData<F>> for WorldpayRefundRequest { | ||||
|         Ok(Self { | ||||
|             reference: item.request.connector_transaction_id.clone(), | ||||
|             value: PaymentValue { | ||||
|                 amount: item.request.amount, | ||||
|                 amount: item.request.refund_amount, | ||||
|                 currency: item.request.currency.to_string(), | ||||
|             }, | ||||
|         }) | ||||
|  | ||||
| @ -52,7 +52,7 @@ pub async fn construct_refund_router_data<'a, F>( | ||||
|  | ||||
|     let status = payment_attempt.status; | ||||
|  | ||||
|     let (amount, currency) = money; | ||||
|     let (payment_amount, currency) = money; | ||||
|  | ||||
|     let payment_method_type = payment_attempt | ||||
|         .payment_method | ||||
| @ -87,7 +87,7 @@ pub async fn construct_refund_router_data<'a, F>( | ||||
|             connector_transaction_id: refund.connector_transaction_id.clone(), | ||||
|             refund_amount: refund.refund_amount, | ||||
|             currency, | ||||
|             amount, | ||||
|             payment_amount, | ||||
|             webhook_url, | ||||
|             connector_metadata: payment_attempt.connector_metadata.clone(), | ||||
|             reason: refund.refund_reason.clone(), | ||||
|  | ||||
| @ -461,7 +461,7 @@ pub struct RefundsData { | ||||
|     pub connector_refund_id: Option<String>, | ||||
|     pub currency: storage_enums::Currency, | ||||
|     /// Amount for the payment against which this refund is issued | ||||
|     pub amount: i64, | ||||
|     pub payment_amount: i64, | ||||
|     pub reason: Option<String>, | ||||
|     pub webhook_url: Option<String>, | ||||
|     /// Amount to be refunded | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Arjun Karthik
					Arjun Karthik