Skip to content

Commit 4a28603

Browse files
committed
Merge branch 'main' of github.com:juspay/hyperswitch into cypress-delete-pm
* 'main' of github.com:juspay/hyperswitch: fix(connector): Update mandate PMT configs for Mandate Supported Connectors (#6903) fix(connector): [STRIPE] fix stripe mandate (#6899)
2 parents fb8a8e5 + 02f0824 commit 4a28603

File tree

7 files changed

+140
-80
lines changed

7 files changed

+140
-80
lines changed

config/deployments/integration_test.toml

Lines changed: 25 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -159,19 +159,31 @@ payout_connector_list = "stripe,wise"
159159
connectors_with_delayed_session_response = "trustpay,payme" # List of connectors which have delayed session response
160160

161161
[mandates.supported_payment_methods]
162-
bank_debit.ach = { connector_list = "gocardless,adyen" } # Mandate supported payment method type and connector for bank_debit
163-
bank_debit.becs = { connector_list = "gocardless" } # Mandate supported payment method type and connector for bank_debit
164-
bank_debit.bacs = { connector_list = "adyen" } # Mandate supported payment method type and connector for bank_debit
165-
bank_debit.sepa = { connector_list = "gocardless,adyen" } # Mandate supported payment method type and connector for bank_debit
166-
card.credit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree" # Mandate supported payment method type and connector for card
167-
card.debit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree" # Mandate supported payment method type and connector for card
168-
pay_later.klarna.connector_list = "adyen" # Mandate supported payment method type and connector for pay_later
169-
wallet.apple_pay.connector_list = "stripe,adyen,cybersource,noon,bankofamerica" # Mandate supported payment method type and connector for wallets
170-
wallet.google_pay.connector_list = "stripe,adyen,cybersource,bankofamerica" # Mandate supported payment method type and connector for wallets
171-
wallet.paypal.connector_list = "adyen" # Mandate supported payment method type and connector for wallets
172-
bank_redirect.ideal.connector_list = "stripe,adyen,globalpay,multisafepay" # Mandate supported payment method type and connector for bank_redirect
173-
bank_redirect.sofort.connector_list = "stripe,adyen,globalpay" # Mandate supported payment method type and connector for bank_redirect
174-
bank_redirect.giropay.connector_list = "adyen,globalpay,multisafepay" # Mandate supported payment method type and connector for bank_redirect
162+
bank_debit.ach = { connector_list = "gocardless,adyen,stripe" }
163+
bank_debit.becs = { connector_list = "gocardless,stripe,adyen" }
164+
bank_debit.bacs = { connector_list = "stripe,gocardless" }
165+
bank_debit.sepa = { connector_list = "gocardless,adyen,stripe,deutschebank" }
166+
card.credit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,nuvei,payme,wellsfargo,bamboraapac,elavon,fiuu,nexixpay,novalnet,paybox,paypal"
167+
card.debit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,nuvei,payme,wellsfargo,bamboraapac,elavon,fiuu,nexixpay,novalnet,paybox,paypal"
168+
pay_later.klarna.connector_list = "adyen"
169+
wallet.apple_pay.connector_list = "stripe,adyen,cybersource,noon,bankofamerica,nexinets,novalnet"
170+
wallet.google_pay.connector_list = "stripe,adyen,cybersource,bankofamerica,noon,globalpay,multisafepay,novalnet"
171+
wallet.paypal.connector_list = "adyen,globalpay,nexinets,novalnet,paypal"
172+
wallet.momo.connector_list = "adyen"
173+
wallet.kakao_pay.connector_list = "adyen"
174+
wallet.go_pay.connector_list = "adyen"
175+
wallet.gcash.connector_list = "adyen"
176+
wallet.dana.connector_list = "adyen"
177+
wallet.twint.connector_list = "adyen"
178+
wallet.vipps.connector_list = "adyen"
179+
180+
bank_redirect.ideal.connector_list = "stripe,adyen,globalpay,multisafepay,nexinets"
181+
bank_redirect.sofort.connector_list = "stripe,adyen,globalpay"
182+
bank_redirect.giropay.connector_list = "adyen,globalpay,multisafepay,nexinets"
183+
bank_redirect.bancontact_card.connector_list="adyen,stripe"
184+
bank_redirect.trustly.connector_list="adyen"
185+
bank_redirect.open_banking_uk.connector_list="adyen"
186+
bank_redirect.eps.connector_list="globalpay,nexinets"
175187

176188
[mandates.update_mandate_supported]
177189
card.credit = { connector_list = "cybersource" } # Update Mandate supported payment method type and connector for card

config/deployments/production.toml

Lines changed: 25 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -159,19 +159,31 @@ force_cookies = false
159159
enabled = false
160160

161161
[mandates.supported_payment_methods]
162-
bank_debit.ach = { connector_list = "gocardless,adyen" } # Mandate supported payment method type and connector for bank_debit
163-
bank_debit.becs = { connector_list = "gocardless" } # Mandate supported payment method type and connector for bank_debit
164-
bank_debit.bacs = { connector_list = "adyen" } # Mandate supported payment method type and connector for bank_debit
165-
bank_debit.sepa = { connector_list = "gocardless,adyen" } # Mandate supported payment method type and connector for bank_debit
166-
card.credit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree" # Mandate supported payment method type and connector for card
167-
card.debit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree" # Mandate supported payment method type and connector for card
168-
pay_later.klarna.connector_list = "adyen" # Mandate supported payment method type and connector for pay_later
169-
wallet.apple_pay.connector_list = "stripe,adyen,cybersource,noon,bankofamerica" # Mandate supported payment method type and connector for wallets
170-
wallet.google_pay.connector_list = "stripe,adyen,cybersource,bankofamerica" # Mandate supported payment method type and connector for wallets
171-
wallet.paypal.connector_list = "adyen" # Mandate supported payment method type and connector for wallets
172-
bank_redirect.ideal.connector_list = "stripe,adyen,globalpay,multisafepay" # Mandate supported payment method type and connector for bank_redirect
173-
bank_redirect.sofort.connector_list = "stripe,adyen,globalpay" # Mandate supported payment method type and connector for bank_redirect
174-
bank_redirect.giropay.connector_list = "adyen,globalpay,multisafepay" # Mandate supported payment method type and connector for bank_redirect
162+
bank_debit.ach = { connector_list = "gocardless,adyen,stripe" }
163+
bank_debit.becs = { connector_list = "gocardless,stripe,adyen" }
164+
bank_debit.bacs = { connector_list = "stripe,gocardless" }
165+
bank_debit.sepa = { connector_list = "gocardless,adyen,stripe,deutschebank" }
166+
card.credit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,nuvei,payme,wellsfargo,bamboraapac,elavon,fiuu,nexixpay,novalnet,paybox,paypal"
167+
card.debit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,nuvei,payme,wellsfargo,bamboraapac,elavon,fiuu,nexixpay,novalnet,paybox,paypal"
168+
pay_later.klarna.connector_list = "adyen"
169+
wallet.apple_pay.connector_list = "stripe,adyen,cybersource,noon,bankofamerica,nexinets,novalnet"
170+
wallet.google_pay.connector_list = "stripe,adyen,cybersource,bankofamerica,noon,globalpay,multisafepay,novalnet"
171+
wallet.paypal.connector_list = "adyen,globalpay,nexinets,novalnet,paypal"
172+
wallet.momo.connector_list = "adyen"
173+
wallet.kakao_pay.connector_list = "adyen"
174+
wallet.go_pay.connector_list = "adyen"
175+
wallet.gcash.connector_list = "adyen"
176+
wallet.dana.connector_list = "adyen"
177+
wallet.twint.connector_list = "adyen"
178+
wallet.vipps.connector_list = "adyen"
179+
180+
bank_redirect.ideal.connector_list = "stripe,adyen,globalpay,multisafepay,nexinets"
181+
bank_redirect.sofort.connector_list = "stripe,adyen,globalpay"
182+
bank_redirect.giropay.connector_list = "adyen,globalpay,multisafepay,nexinets"
183+
bank_redirect.bancontact_card.connector_list="adyen,stripe"
184+
bank_redirect.trustly.connector_list="adyen"
185+
bank_redirect.open_banking_uk.connector_list="adyen"
186+
bank_redirect.eps.connector_list="globalpay,nexinets"
175187

176188
[mandates.update_mandate_supported]
177189
card.credit = { connector_list = "cybersource" } # Update Mandate supported payment method type and connector for card

config/deployments/sandbox.toml

Lines changed: 25 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -159,19 +159,31 @@ force_cookies = false
159159
enabled = true
160160

161161
[mandates.supported_payment_methods]
162-
bank_debit.ach = { connector_list = "gocardless,adyen" } # Mandate supported payment method type and connector for bank_debit
163-
bank_debit.becs = { connector_list = "gocardless" } # Mandate supported payment method type and connector for bank_debit
164-
bank_debit.bacs = { connector_list = "adyen" } # Mandate supported payment method type and connector for bank_debit
165-
bank_debit.sepa = { connector_list = "gocardless,adyen" } # Mandate supported payment method type and connector for bank_debit
166-
card.credit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree" # Mandate supported payment method type and connector for card
167-
card.debit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree" # Mandate supported payment method type and connector for card
168-
pay_later.klarna.connector_list = "adyen" # Mandate supported payment method type and connector for pay_later
169-
wallet.apple_pay.connector_list = "stripe,adyen,cybersource,noon,bankofamerica" # Mandate supported payment method type and connector for wallets
170-
wallet.google_pay.connector_list = "stripe,adyen,cybersource,bankofamerica" # Mandate supported payment method type and connector for wallets
171-
wallet.paypal.connector_list = "adyen" # Mandate supported payment method type and connector for wallets
172-
bank_redirect.ideal.connector_list = "stripe,adyen,globalpay,multisafepay" # Mandate supported payment method type and connector for bank_redirect
173-
bank_redirect.sofort.connector_list = "stripe,adyen,globalpay" # Mandate supported payment method type and connector for bank_redirect
174-
bank_redirect.giropay.connector_list = "adyen,globalpay,multisafepay" # Mandate supported payment method type and connector for bank_redirect
162+
bank_debit.ach = { connector_list = "gocardless,adyen,stripe" }
163+
bank_debit.becs = { connector_list = "gocardless,stripe,adyen" }
164+
bank_debit.bacs = { connector_list = "stripe,gocardless" }
165+
bank_debit.sepa = { connector_list = "gocardless,adyen,stripe,deutschebank" }
166+
card.credit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,nuvei,payme,wellsfargo,bamboraapac,elavon,fiuu,nexixpay,novalnet,paybox,paypal"
167+
card.debit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,nuvei,payme,wellsfargo,bamboraapac,elavon,fiuu,nexixpay,novalnet,paybox,paypal"
168+
pay_later.klarna.connector_list = "adyen"
169+
wallet.apple_pay.connector_list = "stripe,adyen,cybersource,noon,bankofamerica,nexinets,novalnet"
170+
wallet.google_pay.connector_list = "stripe,adyen,cybersource,bankofamerica,noon,globalpay,multisafepay,novalnet"
171+
wallet.paypal.connector_list = "adyen,globalpay,nexinets,novalnet,paypal"
172+
wallet.momo.connector_list = "adyen"
173+
wallet.kakao_pay.connector_list = "adyen"
174+
wallet.go_pay.connector_list = "adyen"
175+
wallet.gcash.connector_list = "adyen"
176+
wallet.dana.connector_list = "adyen"
177+
wallet.twint.connector_list = "adyen"
178+
wallet.vipps.connector_list = "adyen"
179+
180+
bank_redirect.ideal.connector_list = "stripe,adyen,globalpay,multisafepay,nexinets"
181+
bank_redirect.sofort.connector_list = "stripe,adyen,globalpay"
182+
bank_redirect.giropay.connector_list = "adyen,globalpay,multisafepay,nexinets"
183+
bank_redirect.bancontact_card.connector_list="adyen,stripe"
184+
bank_redirect.trustly.connector_list="adyen"
185+
bank_redirect.open_banking_uk.connector_list="adyen"
186+
bank_redirect.eps.connector_list="globalpay,nexinets"
175187

176188
[mandates.update_mandate_supported]
177189
card.credit = { connector_list = "cybersource" } # Update Mandate supported payment method type and connector for card

config/development.toml

Lines changed: 25 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -614,19 +614,31 @@ connectors_with_delayed_session_response = "trustpay,payme"
614614
connectors_with_webhook_source_verification_call = "paypal"
615615

616616
[mandates.supported_payment_methods]
617-
pay_later.klarna = { connector_list = "adyen" }
618-
wallet.google_pay = { connector_list = "stripe,adyen,cybersource,bankofamerica" }
619-
wallet.apple_pay = { connector_list = "stripe,adyen,cybersource,noon,bankofamerica" }
620-
wallet.paypal = { connector_list = "adyen" }
621-
card.credit = { connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,fiuu" }
622-
card.debit = { connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,fiuu" }
623-
bank_debit.ach = { connector_list = "gocardless,adyen" }
624-
bank_debit.becs = { connector_list = "gocardless" }
625-
bank_debit.bacs = { connector_list = "adyen" }
626-
bank_debit.sepa = { connector_list = "gocardless,adyen" }
627-
bank_redirect.ideal = { connector_list = "stripe,adyen,globalpay,multisafepay" }
628-
bank_redirect.sofort = { connector_list = "stripe,adyen,globalpay" }
629-
bank_redirect.giropay = { connector_list = "adyen,globalpay,multisafepay" }
617+
bank_debit.ach = { connector_list = "gocardless,adyen,stripe" }
618+
bank_debit.becs = { connector_list = "gocardless,stripe,adyen" }
619+
bank_debit.bacs = { connector_list = "stripe,gocardless" }
620+
bank_debit.sepa = { connector_list = "gocardless,adyen,stripe,deutschebank" }
621+
card.credit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,nuvei,payme,wellsfargo,bamboraapac,elavon,fiuu,nexixpay,novalnet,paybox,paypal"
622+
card.debit.connector_list = "stripe,adyen,authorizedotnet,cybersource,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,nuvei,payme,wellsfargo,bamboraapac,elavon,fiuu,nexixpay,novalnet,paybox,paypal"
623+
pay_later.klarna.connector_list = "adyen"
624+
wallet.apple_pay.connector_list = "stripe,adyen,cybersource,noon,bankofamerica,nexinets,novalnet"
625+
wallet.google_pay.connector_list = "stripe,adyen,cybersource,bankofamerica,noon,globalpay,multisafepay,novalnet"
626+
wallet.paypal.connector_list = "adyen,globalpay,nexinets,novalnet,paypal"
627+
wallet.momo.connector_list = "adyen"
628+
wallet.kakao_pay.connector_list = "adyen"
629+
wallet.go_pay.connector_list = "adyen"
630+
wallet.gcash.connector_list = "adyen"
631+
wallet.dana.connector_list = "adyen"
632+
wallet.twint.connector_list = "adyen"
633+
wallet.vipps.connector_list = "adyen"
634+
635+
bank_redirect.ideal.connector_list = "stripe,adyen,globalpay,multisafepay,nexinets"
636+
bank_redirect.sofort.connector_list = "stripe,adyen,globalpay"
637+
bank_redirect.giropay.connector_list = "adyen,globalpay,multisafepay,nexinets"
638+
bank_redirect.bancontact_card.connector_list="adyen,stripe"
639+
bank_redirect.trustly.connector_list="adyen"
640+
bank_redirect.open_banking_uk.connector_list="adyen"
641+
bank_redirect.eps.connector_list="globalpay,nexinets"
630642

631643
[mandates.update_mandate_supported]
632644
card.credit = { connector_list = "cybersource" }

crates/router/src/connector/stripe/transformers.rs

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1703,7 +1703,13 @@ impl TryFrom<(&types::PaymentsAuthorizeRouterData, MinorUnit)> for PaymentIntent
17031703
};
17041704
let mut payment_method_options = None;
17051705

1706-
let (mut payment_data, payment_method, billing_address, payment_method_types) = {
1706+
let (
1707+
mut payment_data,
1708+
payment_method,
1709+
billing_address,
1710+
payment_method_types,
1711+
setup_future_usage,
1712+
) = {
17071713
match item
17081714
.request
17091715
.mandate_id
@@ -1717,6 +1723,7 @@ impl TryFrom<(&types::PaymentsAuthorizeRouterData, MinorUnit)> for PaymentIntent
17171723
connector_mandate_ids.get_connector_mandate_id(),
17181724
StripeBillingAddress::default(),
17191725
get_payment_method_type_for_saved_payment_method_payment(item)?,
1726+
None,
17201727
),
17211728
Some(api_models::payments::MandateReferenceId::NetworkMandateId(
17221729
network_transaction_id,
@@ -1782,9 +1789,10 @@ impl TryFrom<(&types::PaymentsAuthorizeRouterData, MinorUnit)> for PaymentIntent
17821789
None,
17831790
StripeBillingAddress::default(),
17841791
None,
1792+
None,
17851793
)
17861794
}
1787-
_ => {
1795+
Some(api_models::payments::MandateReferenceId::NetworkTokenWithNTI(_)) | None => {
17881796
let (payment_method_data, payment_method_type, billing_address) =
17891797
create_stripe_payment_method(
17901798
&item.request.payment_method_data,
@@ -1806,6 +1814,7 @@ impl TryFrom<(&types::PaymentsAuthorizeRouterData, MinorUnit)> for PaymentIntent
18061814
None,
18071815
billing_address,
18081816
payment_method_type,
1817+
item.request.setup_future_usage,
18091818
)
18101819
}
18111820
}
@@ -1969,7 +1978,7 @@ impl TryFrom<(&types::PaymentsAuthorizeRouterData, MinorUnit)> for PaymentIntent
19691978
customer,
19701979
setup_mandate_details,
19711980
off_session: item.request.off_session,
1972-
setup_future_usage: item.request.setup_future_usage,
1981+
setup_future_usage,
19731982
payment_method_types,
19741983
expand: Some(ExpandableObjects::LatestCharge),
19751984
browser_info,

0 commit comments

Comments
 (0)