Skip to main content

Widget V3 Changelog

v3.71.1
Bug fixes
Apple Pay: Double-clicking the Apple Pay button no longer kills the checkout — clicks are ignored while the payment sheet is open.
v3.71.0

Adds Adyen Bizum, Adyen Apple Pay, and Alma Carte Bancaire 10x. Apple Pay and PayPal initialization failures now surface instead of leaving a dead button.

New features
Adyen: Added Bizum.
Adyen: Added Apple Pay.
Alma: Added Carte Bancaire 10x installments.
Card form input survives a session refresh when the payment method configuration is unchanged.
Minor: Custom apiPaths passed to a bundle that enforces its own API URLs now log a console warning instead of being silently ignored.
Bug fixes
Apple Pay: Initialization failures surface a visible error instead of a non-responsive button, and the generic Ingenico method disables itself on unsupported clients.
PayPal: Initialization failures and other unrecoverable errors surface as lethal, so the pay button no longer stays active after a failed attempt.
Rapid amount adjustments no longer exhaust the session step budget through repeated /init calls.
v3.70.1
v3.70.0

Hosted form validation keys are renamed. Fixes to PayPal and Apple Pay initialization, accordion method switching, and cardholder name masking.

Breaking changes
Hosted form validation keys are renamed from *CannotBeEmptyError to *RequiredError.low impact
Migration guide

Only affects integrations that override validation messages. The old keys still resolve but will be removed in a future major.

// Before
const options = { hostedForm: { panCannotBeEmptyError: 'Card number is required.' } };

// After
const options = { hostedForm: { panRequiredError: 'Card number is required.' } };
Bug fixes
Apple Pay: Validation no longer sends a request to Adyen when the token is missing, which returned paymentMethod not provided.
Lyra: Payzen Google Pay, Apple Pay, and XPay initialize when plugin_result.logs is absent.
PayPal: Initialization failures for wallet and BNPL are classified and surfaced in the UI.
Switching payment methods in ACCORDION layout no longer raises TECHNICAL_ERROR from a reused pay-button element.
preValidate no longer fails on an unset partnerUI instance under Svelte 5 legacy mode.
Minor: holderName masking drops the last character, and formDataChanged is logged only once every field is valid; WIDGET_UI_METHOD_UNSELECTED is no longer emitted during an internal payment method suspension.
v3.69.1

The widget now offers Stripe Apple Pay as a new payment method. We've also addressed critical issues, ensuring Apple Pay and PayPal methods remain active after switching, preventing crashes for Ingenico Google Pay/Apple Pay, and improving Floa initialization.

New features
Stripe: Apple Pay is now available as a payment method, utilizing the Stripe Express Checkout Element.
Bug fixes
Floa: The payment method now correctly initializes when expanded in the widget.
Ingenico: Google Pay and Apple Pay no longer crash when Ingenico's API returns incomplete initialization data.
Apple Pay and PayPal methods are no longer wrongly disabled when switching between payment methods in the accordion layout.
Token labels for vaulted payment methods are now correctly sent during the validation process.
The widget now correctly prioritizes payment method plugins, ensuring that session templates are respected before partner-specific implementations.
v3.69.0

We've added support for Younited BNPL 2-3-4x installments, giving your buyers more flexible payment options at checkout.

New features
Younited: Buyers can now pay using Younited BNPL 2-3-4x installments.
v3.68.0
New features
Worldpay: Added direct credit card payment method.
Card form: Added hideHolderName option to hide the holder name field when it is not required. When the backend marks holder name as mandatory for a given payment method, the field is always shown regardless of this option.
Sandbox SDK bundles are now locked to sandbox URLs, preventing accidental use in production.
Bug fixes
Apple Pay / Google Pay: WIDGET_UI_METHOD_SELECTED and WIDGET_UI_METHOD_UNSELECTED events now fire correctly when the payment sheet opens and closes, fixing X-Pay gaps in analytics.
Google Pay: Fixed PayZen/Payline X-Pay payments being submitted when the payment sheet failed to open.
Ingenico: IDEAL payments now send browser data, resolving BAD_REQUEST errors during initialization.
Oney: External 3DS authentication now correctly handles PIN code verification for tokenized Oney cards.
PayPal: Fixed UI options not applying correctly in BNPL and wallet modes.
Analytics events now include more complete data, closing observability gaps in widget event reporting.
The card form now rejects expiry dates with four-digit years.
The vault no longer sends malformed expiry dates during validation.
Co-branded card forms now display only the matched card brands, removing irrelevant brand logos.
Rapid re-initialization no longer leaves orphaned iframes when boot is aborted mid-flight.
Fixed CustomElementRegistry errors that prevented widget initialization in some environments.
The widget now loads correctly on iOS 15, resolving a SyntaxError that caused crashes.
SMART_RETRY API status no longer triggers a JSON parsing error in the widget.
Payment methods are no longer filtered by maximum amount — only minimum amount applies, making more methods available for higher-value orders.
v3.67.1

This release resolves a critical issue affecting Google Pay integrations with Ingenico/Worldline. Transactions now proceed reliably by correctly handling default gateway and network information, preventing silent tokenization failures.

Bug fixes
Google Pay: Correct default Ingenico/Worldline gateway and networks when specific payment data is unavailable.

Google Pay payments processed via Ingenico/Worldline now correctly use the worldlineingenicoogone gateway and appropriate network types (Mastercard/Visa) as fallback when specific payment product data is unavailable, ensuring successful tokenization.

v3.67.0

This release introduces new customization options for PayPal buttons, allowing integrators more control over their appearance. We've also addressed several issues across various payment methods, improving currency display for secondary tokens and enhancing the overall stability of the payment flow.

New features
PayPal: Developers can now disable the maximum width constraint on the PayPal button.
The SDK's internal UI library has been updated and rebranded.

This release updates the underlying UI component library, reflecting the latest brand guidelines and improving visual consistency across the payment experience.

Bug fixes
Apple Pay: Cancelling an Apple Pay session no longer causes an error.
PayPal: The PayPal icon is no longer incorrectly displayed on the 'Pay' button when multiple payment methods are selected.
Sogecommerce: The hosted payment page now correctly enforces its Content Security Policy.
Secondary payment methods now correctly display currency and map data fields.

The SDK now reads currency for gift cards, vouchers, and ANCV tokens directly from the payment session, resolving display inconsistencies. Data mapping for illicado, easy2play giftcard, mybeezbox, and ogloba has been improved for accuracy.

Submitting a payment session multiple times no longer causes an error.
Calls to setPaymentSession no longer lead to uncaught errors.
Buyer cardholder names can no longer contain semicolons.
Xpay payment count computation is now correct.
The checkout process no longer generates uncaught errors during promise resolution.
v3.66.0

This release significantly expands payment options by introducing Sogecommerce Apple Pay and Google Pay, along with new Buy Now, Pay Later (BNPL) methods including PayPal BNPL and Younited Installments. We've also enhanced existing payment methods like Alma with improved validation and Oney with better handling for private cards. Various stability and UI fixes ensure a smoother, more reliable payment experience for your buyers.

New features
Alma: Validation now occurs before the Alma payment popup is displayed, preventing ghost sessions.
Oney: The card form now correctly identifies Oney private cards and adapts the CVV field to collect birthdate information.
PayPal: Buyers can now choose PayPal Buy Now, Pay Later (BNPL) as a payment option.
Sogecommerce: Buyers can now pay with Apple Pay and Google Pay on Sogecommerce-powered pages.
Younited: Buyers can now pay with Younited Installments.
Buyers can now choose Buy Now, Pay Later (BNPL) payment options within the widget.
Bug fixes
Adyen: The payment manager now correctly handles 3DS redirections for Adyen payments.
ANCV: The SDK now correctly handles 'Other Transaction Pending' scenarios during payment processing.
Lyra: Improved payment flow handling and stability.
  • Payment methods are now gracefully disabled when the amount is zero, preventing crashes.
  • The SDK now correctly handles 725 errors when the payment button is not clicked.
  • 3DS authentication is now skipped when no authentication URL is returned, ensuring a smoother buyer experience.
Oney: The card form now correctly manages the 'touched' state for the birthdate field, preventing premature validation errors.
The payment button no longer displays an icon when multiple payment service providers are used in a split payment scenario.
Eligibility checks for payment methods now use the correct API endpoint.
Clicks on accordion items are now debounced to prevent iframe errors.
Improved handling of payment redirections.
  • The SDK now prevents double redirection calls during the payment process.
  • The payment manager consistently handles final payment redirections.
Hosted fields now correctly differentiate CVV inputs between token forms and new card forms.
The payment UI now renders correctly, resolving issues with reactive variables in merged UIs.
Minor: Oney: Updates birthdate field label and CVV alignment on the credit card form; The redirection message now displays partner names more clearly; The CVV field now uses the correct translation key; A visual divider is now correctly displayed where expected; Card schemes in the vault now display their friendly names (e.g., 'Cartes Bancaires') instead of internal codes.