· v1.324

Merchant identity branding, OTP delivery tracking and campaign formatting

Merchant branding for identity login

This feature allows store owners to customize the identity login page with their branding, creating a cohesive brand experience for customers. This personalization can enhance trust and recognition during the login process.

Real OTP delivery tracking

Store owners can monitor the delivery of one-time passwords (OTPs) through Resend webhook tags. This feature provides better insights into customer authentication and helps identify any delivery issues.

Campaign editor formatting controls

The new formatting controls in the campaign editor enable store owners to customize the appearance of their newsletters more effectively. Improved formatting can lead to better engagement with subscribers.

Also shipped

  • Add identity login consent
  • Add internal shopper-session mint endpoint
  • Mint a fresh storefront session in the shopper identity handoff
  • Refine shopper identity login
  • Add shopper handoff session-mint columns

Fixes

  • [auth]Add the accounts.issuer column better-auth 1.7 requires
  • [auth]Reject expired shopper flows in SQL, not by string comparison
  • [build]Restore directives displaced during i18n translation
  • [checkout]Keep inline OTP under unified shopper accounts
  • [checkout]Stop blur auto-send when a usable OTP is already out
  • [checkout]Stop the flow-cookie delete from wiping the minted session cookies
  • [i18n]Drop "successfully" from the email and addon copy
  • [i18n]Ship the namespaces four routes were missing
  • [i18n]Translate addresses page, checkout error and coming-soon page
  • [i18n]Translate builder block labels and shared input controls
  • [i18n]Translate cart modal quantity controls and the PKD price gate
  • [i18n]Translate cart summary, subscription portal sections and the storefront error boundary
  • [i18n]Translate checkout delivery, loyalty and menu quick-add
  • [i18n]Translate footer, country picker and checkout trust badges
  • [i18n]Translate inline JSX across 43 single-namespace admin files
  • [i18n]Translate inline JSX in the setup flow, landing sections and AI assistant chat
  • [i18n]Translate inline JSX text in builder settings and promotion forms
  • [i18n]Translate media, hub, sets and subscription list screens
  • [i18n]Translate product grid, reviews and restock panel
  • [i18n]Translate storefront nav, banner, account nav and values block
  • [i18n]Translate strings that start with two capitals
  • [i18n]Translate the 404 heading, AI assistant composer and shared inputs
  • [i18n]Translate the accept-invitation route and 25 admin leaf screens
  • [i18n]Translate the account wishlist, subscriptions and order success pages
  • [i18n]Translate the add-on setup and connection copy
  • [i18n]Translate the addons, menus, events and AppSumo pages
  • [i18n]Translate the admin explanatory copy
  • [i18n]Translate the auth recovery pages and debug panel
  • [i18n]Translate the block picker preview copy
  • [i18n]Translate the builder block settings forms
  • [i18n]Translate the builder block settings sections
  • [i18n]Translate the builder block Suspense fallbacks
  • [i18n]Translate the CSV import and newsletter summary emails
  • [i18n]Translate the customer subscription detail page
  • [i18n]Translate the AI assistant product landing page
  • [i18n]Translate the AI assistant store-ready and changes-applied emails
  • [i18n]Translate the AI assistant v2 landing and shared conversation view
  • [i18n]Translate the Furgonetka, GetResponse, Shippo, Allegro and InPost panels
  • [i18n]Translate the identity login, feeds docs and transfer email
  • [i18n]Translate the integration and reservation-expiry emails
  • [i18n]Translate the loyalty pages
  • [i18n]Translate the loyalty, orders and checkout copy
  • [i18n]Translate the menu editor and link selector
  • [i18n]Translate the newsletter email shell
  • [i18n]Translate the NIP validation messages
  • [i18n]Translate the NoviCloud add-on description
  • [i18n]Translate the order and subscriber detail sidebars
  • [i18n]Translate the points-expiry, contact-form and low-stock emails
  • [i18n]Translate the predefined HTML email templates
  • [i18n]Translate the remaining addon panels
  • [i18n]Translate the remaining builder block configs
  • [i18n]Translate the remaining toast messages
  • [i18n]Translate the set and bundle builders
  • [i18n]Translate the shared shadcn primitive labels
  • [i18n]Translate the shopper identity login and delete prompts
  • [i18n]Translate the sidebar and chat primitive labels
  • [i18n]Translate the storefront 404, maintenance and account screens
  • [i18n]Translate the subscription portal actions
  • [i18n]Translate the support case emails
  • [i18n]Translate the team invitation emails
  • [i18n]Translate the unsubscribe page and subscription products list
  • [i18n]Translate the upload inputs and clone popover
  • [publish]Surface publish failures that outlive the tab