Skip to main content
On this page

The documentation examples currently pin https://cdn.deuna.io/web-sdk/v1.7/index.js. Pin a release in production, validate it in sandbox, and deploy the URL change through your normal release process.

Upgrade flow#

01 · inventory
Record current behavior
Capture SDK URL, enabled experiences, callbacks, CSP, and browser matrix.
02 · sandbox
Change the pinned version
Upgrade one controlled environment and clear application caches.
03 · verify
Run the payment matrix
Exercise cards, wallets, APMs, 3DS, close, errors, mobile widths, and accessibility.
04 · release
Monitor production
Watch client errors and backend payment outcomes together.

Notable releases#

v1.7.0 · September 9, 2026Current documented line

Changed

  • Migrated the internal widget framework.
  • Updated package-manager and build tooling used to publish the browser bundle.

Verify when upgrading

  • Modal creation, embedded target rendering, onResize, preloading, and closing.
  • All enabled widget types: Payment, Elements, Voucher, and Next Action.
  • CSP and application caching against the new pinned bundle.
v1.6.1 · September 2, 2026Popup and idempotency hardening

Added and secured

  • Improved parent-page popup redirect handling and external-popup lifecycle events.
  • Added errorApmMissingReference error support.
  • Added idempotency support for duplicate authorization protection in supported flows.
  • Hardened popup management and cross-origin behavior.

Verify when upgrading

  • 3DS and every configured APM redirect in real browser popup conditions.
  • Customer closure, popup closure, timeout, and return-to-checkout behavior.
  • Your code does not depend on reading a cross-origin popup.
v1.6.0 · June 10, 2026Saved-card visibility behavior
  • Added a supported behavior option for hiding customer cards in applicable experiences.
  • Re-test authenticated and guest identity flows whenever changing saved-card visibility.
Earlier public lineCore Web SDK experiences

The earlier public line established Payment Widget, Elements and card vault, device-data generation, Apple Pay, Google Pay, and the SDK widget framework. Upgrade through sandbox rather than assuming current callback and popup behavior on an older bundle.

Compatibility contract#

SurfaceUpgrade expectation
Pinned CDN major/minor pathChanges only when the merchant updates the script URL.
Dedicated callbacksPreferred stable integration surface; compile or exercise every handler after upgrade.
Raw event payloadsExperience-specific and more likely to gain fields. Avoid strict whole-object equality.
Event namesMay expand. Keep an unknown-event fallback.
Hosted UICan evolve within the supported theme contract. Test screenshots as signals, not exact DOM contracts.
Private DOM, iframe, and shadow-root structureNot an integration API. Do not query or mutate it.

Regression checklist#

  • Load success and failure under the production-equivalent CSP.
  • initialize once, multiple routes, and isolated newInstance() use if applicable.
  • Payment Widget and Elements in modal and embedded target modes.
  • Preloaded and on-demand opening.
  • Controlled isValid() and submit() flow.
  • BIN, installment, processing, success, error, close, resize, and event callbacks.
  • Apple Pay and Google Pay availability plus customer-gesture launch.
  • 3DS and APM external popup lifecycle.
  • Voucher display or download and asynchronous order confirmation.
  • 320 px mobile width, keyboard-only use, screen reader, and reduced motion.