Skip to main content

Widget V3 Changelog

v3.74.0

This release introduces new payment methods, including HiPay Bancomat Pay and Lyra Creditcard white label. We've also enhanced the reliability of Apple Pay availability detection, resolved a race condition for ACI payments, and improved the security of merchant-supplied texts in hosted forms.

New features
HiPay: Bancomat Pay is now available as a new redirection payment method for Italian buyers.
Lyra: White-label credit card payments are now supported, offering more branding flexibility.
SeQura: This payment method is now fully integrated into partner-ui, providing a more consistent and reliable buyer experience.
Bug fixes
ACI: A race condition that could cause payment failures for ACI credit card payments has been resolved.
Apple Pay: The availability detection for Apple Pay is now more accurate for both Adyen and Stripe, ensuring the button only appears when the payment method is truly usable.
HiPay: The CVV field for credit card payments is now always managed by the SDK, enhancing security and preventing unmanaged CVV exposure.
The card form now handles layout and responsiveness more robustly, preventing overflow for token CVV fields, ensuring expiration fields take full width when no CVV is active, and stacking fields into a single column on small containers.
Merchant-supplied texts in hosted forms are now properly sanitised, preventing potential security vulnerabilities from injected HTML.
Minor: Adyen: The holder name input field now displays with correct padding, ensuring consistent styling; Amex: The card form now displays correct labels and placeholders for American Express cards.
v3.73.0

This release brings significant improvements to error visibility, ensuring integrators receive comprehensive reports for uncaught issues. Buyers will benefit from enhanced payment experience with Google Pay and Apple Pay, alongside a more stable UI for payment methods during session refreshes. We've also boosted security by preventing sensitive payment data from appearing in the DOM and refined the card form experience on mobile devices.

New features
The Purse card vault now skips unnecessary /init calls, reducing network traffic and improving performance.
Card forms now dynamically adjust CVV input display based on the presence of network tokens in the session data.
Bug fixes
Adyen: Updated the underlying Adyen SDK to version 6.41.0, ensuring continued compatibility and stability.
Apple Pay: Buyers on older Apple devices can now successfully complete payments, as the SDK negotiates the highest supported Apple Pay JS version.
Google Pay: Payments now succeed where they previously failed due to invalid country codes, and payment sheet failures are properly reported instead of being swallowed.
PayPal: The payment button is now dimmed until the PayPal session is fully ready, preventing clicks that have no effect.
Uncaught SDK errors are now properly reported to your console and monitoring tools.
Session data, method tokens, and environment details are no longer exposed as attributes in the DOM, enhancing security and privacy.
Payment elements now remain stable and visible after a session refresh, preventing them from disappearing.
Recoverable errors (e.g., closing a PayPal pop-up) no longer permanently disable payment methods, allowing buyers to retry payment.
Minor: Card expiration input fields now default to a numeric keyboard on mobile devices, and holder name fields disable autocorrection.
v3.72.1

A fix improves PayPal payment flow reliability in certain webview environments.

Bug fixes
PayPal: Payments initiated in webview environments now correctly handle popup-based payment flows.
v3.72.0

We're excited to announce the availability of Stripe Google Pay, offering your buyers another convenient payment option. This release also includes an upgrade to PayPal SDK v6, bringing enhanced reliability and consistent button styling. Additionally, the widget now offers improved stability during payment initialization failures and new configuration options for tokenized payments.

New features
PayPal: The PayPal SDK has been upgraded to v6, improving reliability and restoring button styling options.
Stripe Google Pay: Buyers can now pay using Google Pay via Stripe.
Merchants can now configure whether to collect CVV for token payments via merchant_specifics.pay_token_no_cvv.
Bug fixes
Adyen Apple Pay: The payment method now correctly detects client compatibility, preventing the widget from failing on unsupported browsers.
Apple Pay: Double-clicking the Apple Pay button no longer causes the widget to crash.
Maxxing: A customer with no loyalty account now receives a specific NO_LOYALTY_ACCOUNT status during initialization.
The widget now applies a backoff and retry limit for init failures, preventing excessive network calls and improving stability.
Minor: Alma: The in-page calendar is now only displayed for payment plans up to 4 instalments; XPay: Button labels now correctly apply locale overrides for improved translation.
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.