diff --git a/crates/router/src/core/payments/operations/payment_update.rs b/crates/router/src/core/payments/operations/payment_update.rs index 074063a72e..2bf5f3b3b3 100644 --- a/crates/router/src/core/payments/operations/payment_update.rs +++ b/crates/router/src/core/payments/operations/payment_update.rs @@ -174,11 +174,14 @@ impl GetTracker, api::PaymentsRequest> for Pa }; match payment_intent.status { - enums::IntentStatus::Succeeded | enums::IntentStatus::Failed => { + enums::IntentStatus::Succeeded + | enums::IntentStatus::Failed + | enums::IntentStatus::RequiresCapture => { Err(report!(errors::ApiErrorResponse::PreconditionFailed { - message: - "You cannot update this Payment because it has already succeeded/failed." - .into() + message: format!( + "You cannot update this Payment because the status of this payment is {}", + payment_intent.status + ) })) } _ => Ok((