Pro trial warnings, coupon search and pagination and newsletter domain status
Pro trial expiration warnings
This feature alerts store owners before their Pro trial ends, helping them avoid unexpected service interruptions. It ensures that merchants have ample time to decide whether to continue with the Pro plan or make necessary adjustments.
Search and pagination for coupons
Store owners can now easily find specific coupons with the new search and pagination options in the admin dashboard. This feature simplifies coupon management, saving time when applying discounts.
Newsletter sending-domain status visibility
This addition allows merchants to see the status of their sending domains directly on the newsletters page. It helps ensure that email campaigns are properly configured and can improve deliverability.
Also shipped
- Badge shopper-account linkage on the customer sidebar
- Add a merchant toggle for contact-form notifications
- Wire the enable/disable/reset bulk buttons on the templates table
- Add the buyer email to the attendee rollup and CSV export
- Add a per-store opt-out from the cross-store portal
- Explain cross-store linking with a static portal note
- Prefill the identity login email via login_hint
- Show a one-time claim notice after cross-store linking
- Clarify analytics and AI budget
- Offer yearly billing on the subscribe card
Fixes
- [admin]Redirect signed-in root to stores
- [admin]Summarize client input in the store-resolution failure log
- [admin]Use the target date's UTC offset in datetime scheduling inputs
- [builder]Resume the deploy progress bar at the session's real age
- [builder]Seed the share popover from the thread's real share token
- [carts]Count each active cart once regardless of line items
- [coupons]Match codes case-insensitively at lookup
- [cron]Fail closed when CRON_SECRET is unset
- [db]Add the missing cascade FK on pickups.storeId
- [ai]Keep the floating window closed while /design owns the chat
- [ai]Reseed the singleton store on client-side store switch
- [emails]Gate Reply-To on domain verification like the From address
- [frame]Ack permanently undeliverable webhook events instead of 400
- [furgonetka]Reject webhook deliveries when the store has no token
- [omnibus]Prune after inserts and answer with counts, not store rows
- [restock]Stop enrolling back-in-stock watchers as newsletter subscribers
- [shipping]Stop a "0" free-shipping threshold from making every order free
- [store-chat]Bound concurrent shopper turns to one worst-case overshoot
- [store-chat]Rank in-flight turns so a burst admits what the budget covers