This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
+12 more
Affected surfaces
Summary
AI summaryUpdates Bug Fixes, 1.123.1, and 2026-05-19 across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Add COF Data For CardWithLimitedDetails CIT And No-3DS Cards CIT to Peachpayments connector Add COF Data For CardWithLimitedDetails CIT And No-3DS Cards CIT to Peachpayments connector Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Feature | Medium |
Implement profile-based payment method blocking with CardSubtype variants in blocking module Implement profile-based payment method blocking with CardSubtype variants in blocking module Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Feature | Medium |
Enable Googlepay Predecrypted flow for Stripe connector Enable Googlepay Predecrypted flow for Stripe connector Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Feature | Medium |
Add Apple Pay and Google Pay wallet support to ACI connector Add Apple Pay and Google Pay wallet support to ACI connector Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Feature | Medium |
Add 3DS support to setup mandate flow in Cybersource connector Add 3DS support to setup mandate flow in Cybersource connector Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Dependency | Medium |
Update wallet.apple_pay.connector_list to include aci and remove unnecessary connectors Update wallet.apple_pay.connector_list to include aci and remove unnecessary connectors Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Dependency | Medium |
Update wallet.samsung_pay.connector_list to include aci Update wallet.samsung_pay.connector_list to include aci Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Dependency | Medium |
Update wallet.google_pay.connector_list to include aci and remove unnecessary connectors Update wallet.google_pay.connector_list to include aci and remove unnecessary connectors Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Dependency | Medium |
Add peachpayments to card.credit.connector_list Add peachpayments to card.credit.connector_list Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Dependency | Medium |
Add peachpayments to card.debit.connector_list Add peachpayments to card.debit.connector_list Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Dependency | Medium |
Update stripe tokenization configuration for Google Pay pre-decrypt flow Update stripe tokenization configuration for Google Pay pre-decrypt flow Source: granite4.1:8b-q6_K@2026-05-19 Confidence: low |
— |
| Performance | Medium |
Database migration adds payment_method_blocking column to business_profile table Database migration adds payment_method_blocking column to business_profile table Source: granite4.1:8b-q6_K@2026-05-19 Confidence: low |
— |
| Performance | Medium |
Creates card_issuers table with id, issuer_name, created_at, last_modified_at columns Creates card_issuers table with id, issuer_name, created_at, last_modified_at columns Source: granite4.1:8b-q6_K@2026-05-19 Confidence: low |
— |
| Bugfix | Medium |
Fix analytics query issue Fix analytics query issue Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Bugfix | Medium |
Add first name and last name for payments in Nmi connector Add first name and last name for payments in Nmi connector Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Bugfix | Medium |
Update status mapping for Worldpayxml connector Update status mapping for Worldpayxml connector Source: granite4.1:8b-q6_K@2026-05-19 Confidence: high |
— |
| Bugfix | Medium |
Validate client_secret in session and eligibility authentication APIs Validate client_secret in session and eligibility authentication APIs Source: granite4.1:8b-q6_K@2026-05-19 Confidence: low |
— |
Full changelog
1.123.1 (2026-05-19)
Features
- Connector: [Peachpayments] Add COF Data For CardWithLimitedDetails CIT And No-3DS Cards CIT (#12001)
- blocking: Add profile-based payment method blocking with CardSubtype variants (#11796) (#11915)
- connector:
Bug Fixes
- analytics: Analytics query fix (#12316)
- connector:
- Add
client_secretvalidation in session and eligibility authentication apis (#11085)
Compatibility
This version of the Hyperswitch App server is compatible with the following versions of the other components:
- Control Center: v1.38.4
- Web Client: v0.130.0
- WooCommerce Plugin: v1.6.1
- Card Vault: v0.7.0
- Encryption Service: v0.1.12
Database Migration Changes
DB Difference between v1.123.0 and v1.123.1
-- Your SQL goes here
ALTER TABLE business_profile
ADD COLUMN IF NOT EXISTS payment_method_blocking JSONB;
-- Your SQL goes here
CREATE TABLE IF NOT EXISTS card_issuers (
id VARCHAR(64) PRIMARY KEY,
issuer_name VARCHAR NOT NULL UNIQUE,
created_at TIMESTAMP NOT NULL,
last_modified_at TIMESTAMP NOT NULL
);
Configuration Changes
diff --git a/config/deployments/sandbox.toml b/config/deployments/sandbox.toml
index 57cd9688e7..e0f0c84fb8 100644
--- a/config/deployments/sandbox.toml
+++ b/config/deployments/sandbox.toml
@@ -226,47 +226,47 @@ adyen = "Star,Pulse,Accel,Nyce"
enabled = true
[zero_mandates.supported_payment_methods]
bank_debit.ach = { connector_list = "gocardless,adyen,payload" }
bank_debit.becs = { connector_list = "gocardless,adyen" }
bank_debit.bacs = { connector_list = "gocardless" }
bank_debit.sepa = { connector_list = "gocardless,adyen" }
card.credit.connector_list = "checkout,stripe,adyen,zift,authorizedotnet,cybersource,datatrans,worldpay,nmi,bankofamerica,wellsfargo,bamboraapac,nexixpay,novalnet,paypal,archipel,tesouro,mollie"
card.debit.connector_list = "checkout,stripe,adyen,zift,authorizedotnet,cybersource,datatrans,worldpay,nmi,bankofamerica,wellsfargo,bamboraapac,nexixpay,novalnet,paypal,archipel,tesouro,mollie"
pay_later.klarna.connector_list = "adyen"
-wallet.apple_pay.connector_list = "checkout,stripe,adyen,cybersource,bankofamerica,novalnet,nuvei,authorizedotnet,nmi,tesouro,worldpaymodular,worldpayxml"
-wallet.samsung_pay.connector_list = "cybersource"
-wallet.google_pay.connector_list = "checkout,stripe,adyen,cybersource,bankofamerica,novalnet,nuvei,authorizedotnet,nmi,tesouro,worldpaymodular,worldpayxml"
+wallet.apple_pay.connector_list = "aci,checkout,stripe,adyen,cybersource,bankofamerica,novalnet,nuvei,authorizedotnet,nmi,tesouro,worldpaymodular,worldpayxml"
+wallet.samsung_pay.connector_list = "aci,cybersource"
+wallet.google_pay.connector_list = "aci,checkout,stripe,adyen,cybersource,bankofamerica,novalnet,nuvei,authorizedotnet,nmi,tesouro,worldpaymodular,worldpayxml"
wallet.paypal.connector_list = "adyen,novalnet"
wallet.momo.connector_list = "adyen"
wallet.kakao_pay.connector_list = "adyen"
wallet.go_pay.connector_list = "adyen"
wallet.gcash.connector_list = "adyen"
wallet.dana.connector_list = "adyen"
wallet.twint.connector_list = "adyen"
wallet.vipps.connector_list = "adyen"
bank_redirect.ideal.connector_list = "adyen"
bank_redirect.bancontact_card.connector_list = "adyen"
bank_redirect.trustly.connector_list = "adyen"
bank_redirect.open_banking_uk.connector_list = "adyen"
[mandates.supported_payment_methods]
bank_debit.ach = { connector_list = "gocardless,adyen,stripe,payload" }
bank_debit.becs = { connector_list = "gocardless,stripe,adyen" }
bank_debit.bacs = { connector_list = "stripe,gocardless" }
bank_debit.sepa = { connector_list = "gocardless,adyen,stripe,deutschebank" }
-card.credit.connector_list = "aci,checkout,stripe,adyen,authorizedotnet,cybersource,datatrans,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,nuvei,payme,wellsfargo,bamboraapac,elavon,fiuu,nexixpay,novalnet,paybox,paypal,xendit,moneris,archipel,worldpayvantiv,payload,paysafe,finix,tesouro,mollie,airwallex"
-card.debit.connector_list = "aci,checkout,stripe,adyen,authorizedotnet,cybersource,datatrans,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,nuvei,payme,wellsfargo,bamboraapac,elavon,fiuu,nexixpay,novalnet,paybox,paypal,xendit,moneris,archipel,worldpayvantiv,payload,paysafe,finix,tesouro,mollie,airwallex"
+card.credit.connector_list = "aci,checkout,stripe,adyen,authorizedotnet,cybersource,datatrans,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,nuvei,payme,wellsfargo,bamboraapac,elavon,fiuu,nexixpay,novalnet,paybox,paypal,xendit,moneris,archipel,worldpayvantiv,payload,paysafe,finix,tesouro,mollie,airwallex,peachpayments"
+card.debit.connector_list = "aci,checkout,stripe,adyen,authorizedotnet,cybersource,datatrans,globalpay,worldpay,multisafepay,nmi,nexinets,noon,bankofamerica,braintree,nuvei,payme,wellsfargo,bamboraapac,elavon,fiuu,nexixpay,novalnet,paybox,paypal,xendit,moneris,archipel,worldpayvantiv,payload,paysafe,finix,tesouro,mollie,airwallex,peachpayments"
pay_later.klarna.connector_list = "adyen,aci"
-wallet.apple_pay.connector_list = "checkout,stripe,adyen,braintree,cybersource,noon,bankofamerica,nexinets,novalnet,nuvei,authorizedotnet,wellsfargo,worldpaymodular,worldpayvantiv,finix,nmi,tesouro,worldpayxml"
-wallet.samsung_pay.connector_list = "cybersource"
-wallet.google_pay.connector_list = "checkout,stripe,adyen,cybersource,bankofamerica,noon,globalpay,multisafepay,novalnet,nuvei,authorizedotnet,wellsfargo,worldpaymodular,worldpayvantiv,finix,nmi,tesouro,worldpayxml"
+wallet.apple_pay.connector_list = "aci,checkout,stripe,adyen,braintree,cybersource,noon,bankofamerica,nexinets,novalnet,nuvei,authorizedotnet,wellsfargo,worldpaymodular,worldpayvantiv,finix,nmi,tesouro,worldpayxml"
+wallet.samsung_pay.connector_list = "aci,cybersource"
+wallet.google_pay.connector_list = "aci,checkout,stripe,adyen,cybersource,bankofamerica,noon,globalpay,multisafepay,novalnet,nuvei,authorizedotnet,wellsfargo,worldpaymodular,worldpayvantiv,finix,nmi,tesouro,worldpayxml"
wallet.paypal.connector_list = "adyen,globalpay,nexinets,novalnet,paypal,authorizedotnet"
wallet.momo.connector_list = "adyen"
wallet.kakao_pay.connector_list = "adyen"
wallet.go_pay.connector_list = "adyen"
wallet.gcash.connector_list = "adyen"
wallet.dana.connector_list = "adyen"
wallet.twint.connector_list = "adyen"
wallet.vipps.connector_list = "adyen"
bank_redirect.ideal.connector_list = "stripe,adyen,globalpay,multisafepay,nexinets,aci"
@@ -824,20 +824,23 @@ debit = { country = "AD,AE,AT,BE,BG,CH,CN,CO,CR,CY,CZ,DE,DK,DO,EE,EG,ES,ET,FI,FR
mb_way = { country = "EE,ES,PT", currency = "EUR" }
ali_pay = { country = "CN", currency = "CNY" }
eps = { country = "AT", currency = "EUR" }
ideal = { country = "NL", currency = "EUR" }
giropay = { country = "DE", currency = "EUR" }
sofort = { country = "AT,BE,CH,DE,ES,GB,IT,NL,PL", currency = "CHF,EUR,GBP,HUF,PLN"}
interac = { country = "CA", currency = "CAD,USD"}
przelewy24 = { country = "PL", currency = "CZK,EUR,GBP,PLN" }
trustly = { country = "ES,GB,SE,NO,AT,NL,DE,DK,FI,EE,LT,LV", currency = "CZK,DKK,EUR,GBP,NOK,SEK" }
klarna = { country = "AU,AT,BE,CA,CZ,DK,FI,FR,DE,GR,IE,IT,NL,NZ,NO,PL,PT,ES,SE,CH,GB,US", currency = "CHF,DKK,EUR,GBP,NOK,PLN,SEK,USD,AUD,NZD,CAD" }
+apple_pay = { country = "AU,CN,HK,JP,MO,MY,NZ,SG,TW,AM,AT,AZ,BY,BE,BG,HR,CY,CZ,DK,EE,FO,FI,FR,GE,DE,GR,GL,GG,HU,IS,IE,IM,IT,KZ,JE,LV,LI,LT,LU,MT,MD,MC,ME,NL,NO,PL,PT,RO,SM,RS,SK,SI,ES,SE,CH,UA,GB,AR,CO,CR,BR,MX,PE,BH,IL,JO,KW,PS,QA,SA,AE,CA,US,KR,VN,MA,ZA", currency = "AED,AUD,CAD,CHF,EUR,GBP,HKD,SGD,USD" }
+google_pay = { country = "AL,DZ,AS,AO,AG,AR,AU,AT,AZ,BH,BY,BE,BR,BG,CA,CL,CO,HR,CZ,DK,DO,EG,EE,FI,FR,DE,GR,HK,HU,IN,ID,IE,IL,IT,JP,JO,KZ,KE,KW,LV,LB,LT,LU,MY,MX,NL,NZ,NO,OM,PK,PA,PE,PH,PL,PT,QA,RO,SA,SG,SK,ZA,ES,LK,SE,CH,TW,TH,TR,UA,AE,GB,US,UY,VN" }
+samsung_pay = { country = "AU,BH,BR,CA,CN,DK,FI,FR,DE,HK,IN,IT,JP,KZ,KR,KW,MY,NZ,NO,OM,QA,SA,SG,ZA,ES,SE,CH,TW,AE,GB,US", currency = "AED,AUD,CAD,CHF,EUR,GBP,HKD,SGD,USD" }
[pm_filters.gigadat]
interac = { currency = "CAD"}
[pm_filters.loonio]
interac = { currency = "CAD"}
[pm_filters.coingate]
crypto_currency = { country = "AL, AD, AT, BE, BA, BG, HR, CZ, DK, EE, FI, FR, DE, GR, HU, IS, IE, IT, LV, LT, LU, MT, MD, NL, NO, PL, PT, RO, RS, SK, SI, ES, SE, CH, UA, GB, AR, BR, CL, CO, CR, DO, SV, GD, MX, PE, LC, AU, NZ, CY, HK, IN, IL, JP, KR, QA, SA, SG, EG", currency = "EUR, USD, GBP" }
@@ -922,21 +925,21 @@ redsys = { payment_method = "card" }
#tokenization configuration which describe token lifetime and payment method for specific connector
[tokenization]
braintree = { long_lived_token = false, payment_method = "card,wallet" }
checkout = { long_lived_token = false, payment_method = "wallet", apple_pay_pre_decrypt_flow = "network_tokenization", google_pay_pre_decrypt_flow = "network_tokenization" }
gocardless = { long_lived_token = true, payment_method = "bank_debit" }
hipay = { long_lived_token = false, payment_method = "card" }
mollie = { long_lived_token = false, payment_method = "card" }
payme = { long_lived_token = false, payment_method = "card" }
square = { long_lived_token = false, payment_method = "card" }
stax = { long_lived_token = true, payment_method = "card,bank_debit" }
-stripe = { long_lived_token = false, payment_method = "wallet", payment_method_type = { list = "google_pay", type = "disable_only" } }
+stripe = { long_lived_token = false, payment_method = "wallet", google_pay_pre_decrypt_flow = "connector_tokenization" ,payment_method_type = { list = "google_pay", type = "disable_only" }}
billwerk = {long_lived_token = false, payment_method = "card"}
globalpay = { long_lived_token = false, payment_method = "card", flow = "mandates" }
dwolla = { long_lived_token = true, payment_method = "bank_debit" }
finix= { long_lived_token = false, payment_method = "card,wallet" }
paysafe= { long_lived_token = false, payment_method = "card,wallet" ,payment_method_type = { type = "enable_only", list = "apple_pay,credit,debit"},allowed_card_authentication_type= "no_three_ds"}
[webhooks]
outgoing_enabled = true
redis_lock_expiry_seconds = 180
Full Changelog: v1.123.0...v1.123.1
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About HyperSwitch
Payment switch to make payments fast, reliable and affordable. Connect with multiple payment processors and route traffic effortlessly, all with a single API integration.
Related context
Beta — feedback welcome: [email protected]