Skip to content

Commit 9917dd0

Browse files
authored
fix(payment_methods): insert locker_id as null in case of payment method not getting stored in locker (#3919)
1 parent 8162668 commit 9917dd0

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

crates/router/src/core/payment_methods/cards.rs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,13 @@ pub async fn add_payment_method(
351351
None => {
352352
let pm_metadata = resp.metadata.as_ref().map(|data| data.peek());
353353

354-
let locker_id = Some(resp.payment_method_id);
354+
let locker_id = if resp.payment_method == api_enums::PaymentMethod::Card
355+
|| resp.payment_method == api_enums::PaymentMethod::BankTransfer
356+
{
357+
Some(resp.payment_method_id)
358+
} else {
359+
None
360+
};
355361
resp.payment_method_id = generate_id(consts::ID_LENGTH, "pm");
356362
insert_payment_method(
357363
db,

crates/router/src/core/payments/tokenization.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
use api_models::payment_methods::PaymentMethodsData;
2+
use common_enums::PaymentMethod;
23
use common_utils::{ext_traits::ValueExt, pii};
34
use error_stack::{report, ResultExt};
45
use masking::ExposeInterface;
@@ -342,7 +343,11 @@ where
342343
None => {
343344
let pm_metadata = create_payment_method_metadata(None, connector_token)?;
344345

345-
locker_id = Some(resp.payment_method_id);
346+
locker_id = if resp.payment_method == PaymentMethod::Card {
347+
Some(resp.payment_method_id)
348+
} else {
349+
None
350+
};
346351
resp.payment_method_id = generate_id(consts::ID_LENGTH, "pm");
347352
payment_methods::cards::create_payment_method(
348353
db,

0 commit comments

Comments
 (0)