fix(payment_link): add validation for return_url during payment link creation (#7802)

This commit is contained in:
Kashif
2025-04-12 20:01:56 +05:30
committed by GitHub
parent 2123f63bc5
commit 81eaf396c1
2 changed files with 13 additions and 10 deletions

View File

@ -6338,16 +6338,19 @@ pub fn get_key_params_for_surcharge_details(
}
pub fn validate_payment_link_request(
confirm: Option<bool>,
request: &api::PaymentsRequest,
) -> Result<(), errors::ApiErrorResponse> {
if let Some(cnf) = confirm {
if !cnf {
return Ok(());
} else {
return Err(errors::ApiErrorResponse::InvalidRequestData {
message: "cannot confirm a payment while creating a payment link".to_string(),
});
}
#[cfg(feature = "v1")]
if request.confirm == Some(true) {
return Err(errors::ApiErrorResponse::InvalidRequestData {
message: "cannot confirm a payment while creating a payment link".to_string(),
});
}
if request.return_url.is_none() {
return Err(errors::ApiErrorResponse::InvalidRequestData {
message: "return_url must be sent while creating a payment link".to_string(),
});
}
Ok(())
}

View File

@ -979,7 +979,7 @@ impl<F: Send + Clone + Sync> ValidateRequest<F, api::PaymentsRequest, PaymentDat
if let Some(payment_link) = &request.payment_link {
if *payment_link {
helpers::validate_payment_link_request(request.confirm)?;
helpers::validate_payment_link_request(request)?;
}
};