Releases: Shopify/checkout-sheet-kit-swift
3.3.1
What's Changed
- Fix: Updates Sec-Purpose header to Shopify-Purpose header to prevent related issues in loading checkouts in iOS 26 WKWebViews. Related issue
Full Changelog: 3.3.0...3.3.1
3.4.0-rc.7
🪲 Bug Fixes
- Fixed an infinite loop when
shouldRecoverFromError
/onShouldRecoverFromError
modifier always returns true by @kieran-osgood-shopify in #405
🛠 Improvements
- [Test][CheckoutBridge]: Increase timeout on async assertion by @kieran-osgood-shopify in #404
- Chore: Remove changelog by @kieran-osgood-shopify in #407
Full Changelog: 3.4.0-rc.6...3.4.0-rc.7
3.4.0-rc.6
Tip
See the Getting Started and Apple Pay Certificates guides for instructions on integrating Accelerated Checkouts into your app.
What's Changed
- AC: Expose CheckoutIdentifier publicly, conform Wallet & RequiredContactFields enums to String to avoid RN mapping functions, include reason in RenderState.error by @kieran-osgood-shopify in #402
🛠 Improvements
- Fix: Move log inside of guard by @kieran-osgood-shopify in #399
- Move packages under up by @kiftio in #401
Full Changelog: 3.4.0-rc.4...3.4.0-rc.6
3.4.0-rc.5
Tip
See the Getting Started and Apple Pay Certificates guides for instructions on integrating Accelerated Checkouts into your app.
🚨 Breaking Changes
- Removed
PayWithApplePayButton
enum wrapper by @kieran-osgood-shopify in #390
Note
If you haven't implemented the .applePayLabel
modifier or you've implemented the label with a shorthand, like .applePayLabel(.pay)
, then you should not experience any breaking changes in your app. You will only experience compilation errors if you used the wrapper directly.
✨ New Features
OSLogger
support introduced for AcceleratedCheckouts by @kieran-osgood-shopify in #383
# `.error` by default. Use `.all` or `.debug` for debugging
+ ShopifyAcceleratedCheckouts.logLevel = .all
🛠 Improvements
- Enhanced customer data handling by @kieran-osgood-shopify in #385
- Customer object now attached to cart only when not requested in payment sheet
- Smarter conditional attachment logic based on contact field configuration
- Improved buyer identity management after personal data removal
📱 Sample App Changes
- Added email/phone collection toggles for testing different scenarios
- Runtime log level configuration
- Enhanced customer data flow testing capabilities
Full Changelog: 3.4.0-rc.4...3.4.0-rc.5
3.4.0-rc.4
Tip
See the Getting Started and Apple Pay Certificates guides for instructions on integrating Accelerated Checkouts into your app.
New Features
- Expanded iOS Support: Accelerated Checkouts now supports iOS 16.6 and later, widening compatibility for more merchants and their customers @kieran-osgood-shopify in #376
Improvements
- Updated Sample App: Enhanced MobileBuyIntegration sample app with new branding to better differentiate from other integration examples by @kieran-osgood-shopify in #381
- Refined Architecture: Streamlined scroll behavior implementation and improved observable property handling in Accelerated Checkouts
Full Changelog: 3.4.0-rc.3...3.4.0-rc.4
3.4.0-rc.3
Tip
See the Getting Started and Apple Pay Certificates guides for instructions on integrating Accelerated Checkouts into your app.
Bug Fixes
- Fixed cart address updates: Resolved an issue with cart address updates in the Apple Pay sheet of Accelerated Checkouts, ensuring shipping and billing addresses are properly synchronized during the checkout flow by @markmur in #372
New Features
- Apple Pay button customization: Added
.applePayLabel(label:)
modifier to customize Apple Pay button text with options including "Buy with Apple Pay", "Check out with Apple Pay", "Subscribe with Apple Pay", and "Continue with Apple Pay" by @kieran-osgood-shopify in #377
Refer to Apple Documentation for the full list of available button styles.
Improvements
- Enhanced SwiftUI integration: Added edgesIgnoringSafeArea(.all) to CheckoutSheet for better full-screen presentation in SwiftUI applications by @markmur in #375
- Dependency updates: Updated ruby/setup-ruby from 1.254.0 to 1.255.0 for improved CI pipeline stability by @dependabot[bot] in #380
Developer Experience
- Improved test coverage for cart address functionality
- Enhanced API design for Apple Pay button customization with cleaner internal architecture
- Better separation of rendering styles from public API
Full Changelog: 3.4.0-rc.2...3.4.0-rc.3
3.4.0-rc.2
Tip
See the Getting Started and Apple Pay Certificates guides for instructions on integrating Accelerated Checkouts into your app.
Package changes
- Fix misconfigured SHIPPING_LINE string in Storefront API by @markmur in #366
- Remove
Common
target + fix cocoapod spec file by @markmur in #373
Chores/Cleanup
- chore(deps): bump ruby/setup-ruby from 1.245.0 to 1.253.0 by @dependabot[bot] in #357
- Bump cocoapod version by @markmur in #364
Sample changes
-
Rename example xcconfig file to match setup instructions by @kieran-osgood-shopify in #356
-
Upgrade MobileBuyIntegration minimum deployment target to iOS 17.0 by @markmur in #363
-
Integrate Accelerated checkouts in MobileBuyIntegration Sample app by @markmur in #362
-
chore(deps): bump ruby/setup-ruby from 1.253.0 to 1.254.0 by @dependabot[bot] in #365
-
Read storefront merchant identifier from Storefront.xcconfig by @markmur in #371
New Contributors
Full Changelog: 3.4.0-rc.1...3.4.0-rc.2
3.4.0-rc.1
Tip
See the Getting Started and Apple Pay Certificates guides for instructions on integrating Accelerated Checkouts into your app.
🚀 ShopifyCheckoutSheetKit 3.4.0-rc.1 - Accelerated Checkouts
We're excited to announce the Release Candidate for ShopifyCheckoutSheetKit, introducing AcceleratedCheckouts
- a powerful new product that brings lightning-fast checkout experiences to iOS apps!
✨ What's New
AcceleratedCheckouts is now available as a standalone product export, featuring:
- 🍎 Apple Pay Integration - Seamless native payment experience
- 🛒 Shop Pay Button - Quick checkout with Shopify's payment solution
- 📱 Sample App - For a complete implementation reference see the sample app
🛠 Developer Experience
- Enhanced Sample App - Cart rendering in sheets with CheckoutSheet integration
- Improved Testing - File path filtering and streamlined CI/CD
- Code Quality - SwiftFormat rules and automated formatting
- Documentation - Cursor rules for better development experience
🎯 What's Next
We're looking forward to your feedback as we prepare for the stable release!
Ready to accelerate your checkout experience?
Check out the Accelerated Checkouts Guide or the sample app to get started.
Full Changelog: 3.3.0...3.4.0-rc.1
3.3.0
What's Changed
Chores/refactors
- chore: add lint script with fix and check actions by @kieran-osgood-shopify in #312
- Bump github.com/lukepistrol/swiftlintplugin from 0.52.4 to 0.59.1 by @dependabot in #317
- Refactor: Unify build & test scripts / workflows by @kieran-osgood-shopify in #311
Full Changelog: 3.2.0...3.3.0
3.2.0
What's Changed
- add isFirstOrder to pixel events order.customer by @kiftio in #295
- fix: add workaround to ensure delegate isn't deallocated when parent changes by @kieran-osgood-shopify in #296
New Contributors
- @anulind made their first contribution in #255
- @tiagocandido made their first contribution in #261
- @JesseNoseworthy made their first contribution in #266
- @kieran-osgood-shopify made their first contribution in #271
- @kristinhung made their first contribution in #283
Full Changelog: 3.1.2...3.2.0