Apple Pay & Google Pay: added allowedCardTypes, letting you restrict which card types are offered
✨ Improvements
Improved TypeScript type definitions
The allowedCardNetworks option has been removed from Google Pay. Configure supported card networks with orderedAllowedCardNetworks in your client session.
iOSiOS SDK updated to v2.51.1🔧 Fixes
Fixed co-badged card validation in Headless integrations
AndroidAndroid SDK updated to v2.51.0✨ Improvements
General fixes and improvements
Primer SDK now depends on io.primer:klarna-android:1.3.0
If you are using the Klarna dependency in your code, you are encouraged to update it and align with the supported version.Klarna SDK was updated from v2.7.1 to v2.11.3. Please refer to the official Klarna CHANGELOG
for more information.
Note: From this version onward, Primer3DS requires a minimum version of 2.7.0.
✨ Improvements
Show processing screen prior to presenting 3DS challenge.
AndroidAndroid SDK updated to v2.47.0✨ Improvements
Primer SDK now depends on io.primer:3ds-android:1.8.0
If you are using the 3DS dependency in your code, you are required to update it and align with the supported version. Otherwise, 3DS will result in failure.Changelog:
New LOA Reference Number
Updated Device Information Data Version to EMVCo 3DS SDK Device Information 1.7
Bouncy Castle (artefact: org.bouncycastle:bcprov-jdk15to18) has been removed as a dependency. The 3DS SDK defaults to the default OS Security Provider in case Bouncy Castle is not found.
EFTPOS co-badged cards selection is now automatic based on merchant’s network preference
Improved deeplink handling
Klarna UI fixes (Continue button, back button)
🔧 Fixes
Fixed an issue with surcharge amount validation
Fixed card network state not properly cleared when card number field emptied
Fixed card validation issues that could cause network picker display problems
AndroidAndroid SDK updated to v2.46.0
Primer SDK now depends on io.primer:3ds-android:1.7.0If you are using the 3DS dependency in your code, you are required to update it and align with the supported version. Otherwise, 3DS will result in failure.Changelog:
The 3DS SDK now follows the EU Directive 2019/882.
✨ Improvements
EFTPOS co-badged cards selection is now automatic based on merchant’s network preference
🔧 Fixes
Fixed a corner case when switching between different co-badged cards
Fixed navigation bar blur when edge-to-edge enabled
Breaking Change: This version removes support for legacy API versions. The SDK now requires API version 2.4 or later.The PrimerApiVersion.V2_3 option for settings.apiVersion has been removed. The SDK now exclusively uses API version 2.4.If you were using the PrimerApiVersion.V2_3 setting:
Ensure your backend integration supports API version 2.4
Review the Migration Guide for detailed upgrade instructions
Improved internal analytics event processing to consolidate redundant events and enhance payload data with richer contextual metadata.
This internal improvement reduces network overhead while providing better system insights.
Improvements to Klarna theme selection.
Primer SDK now depends on io.primer:klarna-android:1.2.0
If you are using the Klarna dependency in your code, you are encouraged to update it and align with the supported version.Klarna SDK was updated from v2.6.27 to v2.7.1. Please refer to the official Klarna CHANGELOG
for more information.
🔧 Fixes
Fixed crash that occurred when switching payment methods after the PrimerSessionIntent parameter was changed
Fixed crash that could occur when calling cleanup() if the Drop-in dismissal event was not properly handled internally
Continuing 3DS flow sometimes failed silently, resulting in failed-to-resume or payment-failed errors.
We have fixed that and improved our logging in this specific use case.
Add appearance mode override to respect app-level theme settings.
✨ Improvements
Improvements to Klarna vaulting flow.
If you are using the Klarna dependency in your code, you are encouraged to update PrimerKlarnaSDK to 1.2.0.
Please note that this version contains critical fixes for the new Liquid Glass UI when built with Xcode 26/iOS 26.Klarna SDK was updated from v2.6.14 to v2.7.2. Please refer to the official Klarna CHANGELOG
for more information.
🔧 Fixes
Improved payment tokenization and cancellation flow.
iOS🚀 New featuresThis release introduces Apple Pay merchant tokens, a powerful new feature that enables merchants
to process recurring payments, subscriptions, and automatic reloads without being tied to specific customer devices.Ready to get started? Follow our implementation guides
to request merchant tokens (MPANs) and integrate this feature into your payment flow.✨ Improvements
Added support for MM/YY expiry date format
Enhanced Apple Pay error handling with new specific error IDs:
apple-pay-no-cards-in-wallet: Detects when no payment cards are configured in Apple Wallet
apple-pay-device-not-supported: Identifies devices that don’t support Apple Pay
apple-pay-presentation-failed: Captures general presentation failures
🔧 Fixes
Reduce console noise for nil remoteUrl in ImageManager
Reduce excessive validation logging
🛠️ Refactor
Introduce default values for PrimerError
Migrated many classes and files to async await
Clean up UI event posting
Android✨ Improvements
Primer SDK now depends on Kotlin 2.0.21
Primer SDK now depends on io.primer:3ds-android:1.6.2
If you are using the 3DS dependency in your code, you are required to update it and align with the supported version. Otherwise, 3DS will result in failure.Changelog:
Due to several security vulnerabilities, Bouncy Castle (artefact : org.bouncycastle:bcprov-jdk15to18) was updated to version 1.79
This update improves performance on devices with larger memory capacities by fulfilling Google’s requirement for 16 KB memory page sizes, ensuring full compatibility with future Play Store regulations.
PayPal: Improved support for picture-in-picture mode. Fixed an issue where some successful authentication flows were incorrectly marked as errors by the SDK.
3DS: Enhanced locale normalization. Resolved an issue where certain locales were being rejected by the 3DS SDK, causing the flow to fail.
Klarna: Updated Klarna SDK to 1.1.0
⚠️ Primer SDK now supports BOM (Bill of Materials) via io.primer:bomIf you’re using Klarna in your own code, you can switch to the BOM to automatically stay aligned with the supported version:implementation(platform("io.primer:bom:<version>")) implementation("io.primer:klarna-android")This removes the need to manage Klarna versions manually.If you choose not to use the BOM, make sure you manually update to io.primer:klarna-android:1.1.0
The SDK will now default to using API version 2.4 when initialised. It is possible to use API version 2.3 via PrimerSettings.apiVersion. For more information see our SDK reference, Api Reference and Migration Guides.
3DS Locale Propagation: Resolved an issue where the 3DS SDK occasionally rejected propagated locale settings.
iDEAL via Adyen: iDEAL is now fully supported as a redirect-based payment method.
🔧 Fixes
We have fixed a bug in the Drop-In Checkout which resulted in “Additional fees may apply” text being shown for the Card payment method, when no surcharge was present.
3DS Flow Stability: Fixed crashes that occurred when the 3DS flow failed while the app was running in the background.
iOS✨ Improvements
Improved error handling when server returns 202 response code
We have fixed a bug in the Drop-In Checkout which resulted in “Additional fees may apply” text being shown for the Card payment method, when no surcharge was present.
✨ Improvements
We have made changes to our internal Analytics logging system which will result in fewer unnecessary logs being sent.
With this version it is possible to opt-in to use API v2.4. For more information see our SDK reference, API Reference and Migration Guides. By default, SDK will remain backward compatible and use API v2.3.
✨ Improvements
Expanded Language Support: The React Native SDK now supports additional languages in drop-in, including:
Arabic
Bulgarian
Czech
Spanish (Argentina & Mexico)
Estonian
Croatian
Hungarian
Japanese
Latvian
Portuguese (Brazil)
Romanian
Vietnamese
3DS Sandbox Testing: Enhanced support for testing 3D Secure (3DS) flows in the sandbox environment.
Android
Improved Analytics & Reporting: Enhanced tracking and insights for better performance monitoring.
🔧 FixesAndroid
Drop-in: fixed an issue causing crashes when calling Primer.dismiss() after the checkout sheet is already dismissed.
API Timeout values have been updated to improve behaviour in the loading phases of the checkout.
Android
Enhanced Card Expiry Date Validation: We’ve improved the accuracy of expiry date validation for both headless and drop-in integrations.
Improved Stability: Resolved crashes caused by ConcurrentModificationException during SDK initialization.
🚀 New feature
We have added additional dismissal controls to IPrimerUIOptions. It is now possible to dismiss the Primer UI via gestures, an explicit close button, or both.
Android
Co-badged cards in Drop-in: Primer SDK will automatically detect co-badged cards in the Drop-In integration. This release also brings improvements to card network detection in general. Visit our documentation about co-badged cards in order to learn more.
🔧 FixesAndroid
Analytics: fixed serialization and deserialization of analytics events.
Native Payment Method Button Support: Some payment methods require and offer their native views. To support this, we’ve updated our Asset Manager and introduced the getPaymentMethodResource method to access these native resources seamlessly. If you are using Headless integration, make sure to check our updated documentation about rendering of payment method buttons.
ℹ️Usage of Native Payment Method Button is a requirement for all new Android Google Pay API integrations that use a Google Pay payment button.
ACH Vaulting via Stripe: The ACH payment method through Stripe now supports a vaulting flow, enabling you to save customer details on agreement for future transactions.
Google Pay Enhancements: You can now collect additional user data through Google Pay, including the user’s email and shipping address. Check out our guide for details on enabling this feature.
Apple Pay Enhancements: You can now collect additional user data through Apple Pay, including the user’s email and shipping address. Check out our docs for details on enabling this feature.
🔧 FixesAndroid
3DS Locale Handling: We’ve fixed an issue where locale extensions were stripped, causing failed 3DS transactions. This update ensures compliance with 3DS guidelines and smoother transaction processing.
Deprecations
In order to support Native Payment Method Button requirements, we have deprecated following methods:
Prevent dismissal of Drop-in card form while a payment is active.
Vipps via Adyen will now fall back to the Web flow in the event that the Vipps mobile app was not installed.
We’ve fixed the crashes that occurred when using Blik through Adyen’s Drop-In in standalone mode.
We’ve resolved occasional crashes related to the “fragment not attached” issue in Drop-In.
We’ve resolved the issue causing crashes when users were deeplinked multiple times from PayPal.
We’ve fixed the issue that caused crashes when retrying a 3DS challenge while another challenge was still in progress.
⚠️ Primer SDK now depends on io.primer:3ds-android:1.5.0
If you are using the 3DS dependency in your code, you are required to update it and align with the supported version. Otherwise, 3DS will result in failure.
iOS
Fixes for range or index out of bounds crash in the Card Form UI.
Fixes for a crash in InternalCardComponentsManager.
ℹ️ New 3DS SDK version is available
If you are using the 3DS dependency in your code, we suggest updating to version 2.4.1.
It is now possible to cache the ClientSession configuration client-side, which can speed up certain flows in the SDK.
This can be enabled via the clientSessionCachingEnabled flag. Before enabling the flag to true it’s recommended to reach out to Primer support for additional verification since there are edge cases where it is not advised.
We have aligned the card expiry date validation logic between the Drop-In and Headless integrations, which were previously different. Additionally, we fixed a bug that caused the current month and year to be considered invalid expiry dates.
We have aligned error handling across mobile platforms and enhanced our analytics capabilities. Additionally, we have thoroughly documented all errors. For more details, please refer to the official documentation for Android and iOS.
iOS
We have fixed an issue where primerWillCreatePaymentWithData would be triggered twice when using the Klarna payment method.
🔧 FixesAndroid
We have resolved the issue with the 3DS service initialization that was incorrectly triggering errors during the initialization process.
Please note, that with this update, compatibility requires the use of the 1.4.3 version of the 3DS SDK (io.primer:3ds-android:1.4.3).
iOS
We have improved validation of the custom URL scheme setting used for payment methods with native UI.
Fixed a bug in the Klarna Headless implementation where the correct events were not fired during a manual payment flow.
Klarna Cocoapods dependency build issue is now fixed. If PrimerKlarnaSDK was not present in the Pods, the compiler was reporting an error even if you do not have Klarna set up in your Primer dashboard.
Both platforms:
PayPal: We have improved the PayPal payment method token by providing additional data, including the payer’s first name, last name, and external payer ID. For more information, see our docs (Android, iOS).
✨ Improvements
We started the implementation of the comprehensive testing strategy for the ReactNative SDK. We have added a bunch of Unit tests to our project with the purpose of increasing confidence in our codebase. Much more tests are coming.
NOTE: This does not require any change on the merchant side.
💳 APMs supportiDEAL via AdyenAdds the ComponentWithRedirectManager that provides access to BanksComponent. Using the BanksComponent you can easily:
load list of all supported banks
submit user’s selection
For more information, see our payment method guide for iDEAL via Adyen, and sdk reference docs for ComponentWithRedirectManager.Klarna is now available on HeadlessUniversalCheckoutWe have extended our support for Klarna to React Native HeadlessUniversalCheckout.Klarna payment categories have been expanded to allow support for all the available categories, including:
Pay now
Pay later: Pay in 30 days
Pay over time: Pay in 3-4 instalments. First payment right away, then the rest in instalments (no interest)
Fair financing: Instalment plans of 6, 12, 24, and 36 months with flexible payments (with interest)
For more information, see our payment method guide for Klarna headless, and sdk reference docs for KlarnaHeadlessManager.🚀 New FeatureSupport for Klarna EMDKlarna may request extra merchant data (EMD) based on the merchant segment or consumer services. This additional information helps Klarna enhance risk assessment and improve conversion rates.You can now dynamically pass any relevant EMD package via the Client Session as described here. Available schemas are documented here.
** 🔧 Fixes**iOS:Previously on iOS, the SDK was sending an unexpected type for the paymentMethodType in the IPrimerCheckoutPaymentMethodData interface. To rectify this, we have added a new paymentMethod field of type String which should be used going forward. The paymentMethodType field has been deprecated.Android:The paymentMethodType field of the IPrimerCheckoutPaymentMethodData interface has been deprecated in favour of paymentMethod.
Recapture the CVV of Saved Cards: In compliance with PCI standards, we’ve introduced a feature to recapture the CVV for saved cards to potentially increase the success rate of card-on-file transactions. This feature is particularly beneficial as some processors or issuers may have lower authorization rates for transactions without a CVV.
Android - Google Pay: By default, Google Pay is presented to the user regardless of whether they have a supported card in their wallet. You can now automatically hide Google Pay if the user’s wallet does not contain a supported card by setting existingPaymentMethodRequired to true. Check our guide on how to enable this feature.
Android - PayPal: We have improved the PayPal payment method token by providing additional data, including the payer’s first name, last name, and external payer ID.
✨ Improvements
Checkout Experience Enhancements:
Enhanced immediacy of the loading spinner in the drop-in checkout process for a smoother user experience.
Local card network identification has been made faster and more efficient.
Client Session API: The orderedAllowedCardNetworks option has been introduced, allowing for the specification of supported card networks. This feature enhances network detection and validation for card payments and Apple Pay.
iOS - 3DS SDK Upgrade: Compatibility has been extended to version 2.3.0 or higher of the Primer 3DS SDK.
iOS - Version Requirement: The minimum supported iOS version has been raised to 13.0, ensuring our SDK aligns with the latest iOS standards for improved app performance.
iOS - Validation Error Handling: For card payments, the SDK now intelligently handles validation errors by only sending events when there’s a change in a field’s validation state. This optimization is specifically for card payments via headless checkout.
iOS - Primer3DS SDK Version 2.2.0: The SDK has been upgraded to the latest version, ensuring access to state-of-the-art security features and an enhanced user experience.
Android - Please note, that with this update, compatibility requires the use of the 1.4.2 version of the 3DS SDK (io.primer:3ds-android:1.4.2).
Currency Handling: A new JSON data format for currencies has been introduced, centralizing currency information on our server to improve accuracy and efficiency.
🔧 Fixes
Analytics Service Improvements: Significant enhancements have been made to our analytics service, improving its performance and resolving a memory leak issue that could lead to crashes in older SDK versions.
UI Corrections: In the drop-in checkout, the card icon now accurately updates in response to changes in the entered card number.
Android -Previously, when the app utilizing our SDK was built in release mode with minification applied, initialization of the SDK would fail. We’ve since addressed this issue by updating our consumer-rules.pro files. You should not manually include any Proguard rules, as consumer-rules.pro are seamlessly integrated with your existing Proguard rules.
In this latest release, our 3DS support has undergone some slight enhancements. Please note, with this update, compatibility requires the use of the 1.4.0 version of the Android 3DS SDK (io.primer:3ds-android:1.4.0) and pod 'Primer3DS', '2.2.0' for iOS. We recommend upgrading to this version as it brings new LOA Reference Number for all protocol versions.
Internally, between the different platforms, we have aligned how the currencies are formatted. Currency metadata is now being served from our server, allowing us to adapt to potential changes without the SDK update being needed.
** 🔧 Fixes**Android:
Previously, Google Pay was hidden in case the amount was set to 0. From now on, Google Pay will be always shown in case it was enabled in Primer Dashboard and the device supports payments with Google Pay.
✨ ImprovementsIn this release, substantial enhancements have been made to our 3DS support, introducing a variety of improvements aimed at boosting the conversion rate of 3DS challenges. Please note, with this update, compatibility requires the use of io.primer:3ds-android:1.3.0 for Android and pod 'Primer3DS', '2.1.0' for iOS.FeaturesHeadless Vault ManagerIn this release, we have added VaultManager.configure() which configures an instance of VaultManager, which can then be used to:
Fetch a list of vaulted payment methods
Delete a vaulted payment method
Perform a payment using a vaulted payment method and additional data (e.g. CVV)
Fix the ApplePay bug where the flow was not shown if there were no cards added in the Wallet app.
Added 2 flags:
showApplePayForUnsupportedDevice: Bool
If in some cases you don’t want to present the ApplePay option if the device is not supporting it set this to false. The default value is true.
checkProvidedNetworks: Bool
Flag introduced to enable the initiation of the ApplePay flow even when no cards are present in the Wallet. To enable ApplePay Add Card Flow, set this flag to false This flag is set to true by default due to enable backward compatibility with older versions.
🍎 Upgraded Primer iOS SDK to 2.18.0 (Git | Changelog)
Android
🤖 Upgraded Primer Android SDK to 2.18.0 (Git | Changelog)
✨ ImprovementsAndroid:In this version of the SDK we have introduced a new version of 3DS library. Primer SDK will depend on io.primer:3ds-android:1.2.0 from now on.
⚠️ If you are using 3DS dependency in your code, you are required to update it in order to align with the supported version. Otherwise, 3DS will result in failure.
⚠️ This version introduces breaking changes for Headless Checkout
✨ ImprovementsIt’s been more than 6 months that Headless Checkout has been released in Beta!We gathered insightful feedback that pushed us to work on critical improvements to the developer experience of Headless Checkout.This release candidate introduces a more robust, scalable, and stable flow for integrating Headless Checkout to implement a fully custom interface for your checkout.Our documentation has been updated to reflect these changes. You can also find a Migration Guide detailing the changes.3DS ServiceOur 3DS service has been completely revamped. Primer SDK now supports 3DS protocol version 2.2.0
⚠️ This version introduces breaking changes for Headless Checkout
✨ Improvements💳 APMs supportCards via iPay88In this version of the SDK we added the support for Cards via iPay88.Cards via iPay88 Payment Method now is fully supported via Headless Universal Checkout and Drop-In.You can now make one-off payments or vault a card with iPay88 in order to make recurring payments.✨ ImprovementsAndroid:
It is now possible to capture billing address using Google Pay by specifying googlePayOptions.isBillingAddressCaptureEnabled = true.
Please check official docs for more details.
Contains the features and improvements of 2.16.5
iOS:
Contains the features and improvements of 2.16.5
Observability improvements
Improves cancellation happening from 3rd party payment apps through deep links
Fix Atome cancellation from within the webview
Fix UI unresponsiveness happening on iOS 16.0.x on certain cases
⚠️ This version introduces breaking changes for Headless Checkout
✨ ImprovementsIt’s been more than 6 months that Headless Checkout has been released in Beta!We gathered insightful feedback that pushed us to work on critical improvements to the developer experience of Headless Checkout.This release candidate introduces a more robust, scalable, and stable flow for integrating Headless Checkout to implement a fully custom interface for your checkout.Our documentation has been updated to reflect these changes. You can also find a Migration Guide detailing the changes.This release candidate will soon be merged into the main releases.In addition to RC1 release, we have improved couple of things based on your feedback:
Fixed issue when calling AssetsManager’s getPaymentMethodAsset on Android that caused the result to be a string instead of an object
Fixed an issue causing applePay.isBillingAddressCaptureEnabled to be ignored
Reverted back old way of setting Drop-In callbacks: 2.17.0 does not introduce any breaking change for the drop-in checkout
Fixed an issue that caused Google Pay to be proposed on iOS
⚠️ This version introduces breaking changes for Headless Checkout
✨ ImprovementsIt’s been more than 6 months that Headless Checkout has been released in Beta!We gathered insightful feedback that pushed us to work on critical improvements to the developer experience of Headless Checkout.This release candidate introduces a more robust, scalable, and stable flow for integrating Headless Checkout to implement a fully custom interface for your checkout.Our documentation has been updated to reflect these changes. You can also find a Migration Guide detailing the changes.This release candidate will soon be merged into the main releases.
✨ ImprovementsIn this version we are adding support for iPay88 card payments.We have also added events to monitor the Headless flow.Android
In this version of the SDK we have introduced a new version of 3DS library. Primer SDK will depend on io.primer:3ds-android:1.1.2 from now on.
⚠️ If you are using 3DS dependency in your code, you are required to update it in order to align with the supported version. Otherwise, 3DS will result in failure.
We have added a way to capture billing address using Google Pay. You will need to pass captureBillingAddress = true to PrimerGooglePayOptions
🔧 Fixes
[iOS] Remove Xcode configuration flags from podspec.
[iOS] Apple Pay will return an error on simulator.
Removed the GENERATE_INFOPLIST_FILE as part of the xcconfig of the PrimerSDK podspec dependency, as it was causing an issue upon archiving the hosting apps.
Added CODE_SIGNING_ALLOWED => NO to xcconfig in PrimerSDKpodspec dependency to remove the Signing requirement introduced in Xcode 14+
Fixed an issue on Android when a developer wanted to disable the showing of some screens. Previously that was broken due to Android OS automatically showing the bottom sheet dialog when we get back on the main screen, even if we hide it before.
👌 Alongside the listed features below, we have performed improvements to our codebase.
In this version of the SDK we have introduced a new version of 3DS library for Android. Primer Android SDK will depend on io.primer:3ds-android:1.1.1 from now on.
⚠️ If you are using 3DS dependency in your code, you are required to update it in order to align with the supported version. Otherwise, 3DS will result in failure.
🔧 Fixes
We have fixed certain redirection issues for payment methods using Buckaroo as PSP on Android
👌 Alongside the listed features below, we have performed improvements to our codebase.
In this version of the SDK we have removed options to pass 3DS vaulting flag is3DSOnVaultingEnabledAbove flow is now obsoleted and 3DS will always follow workflows.🔧 Fixes
We have fixed wrong cardholder name checkout modules evaluations which resulted in not requesting cardholder name on headless
We have fixed raw data validation callbacks not being fired on headless
We have also fixed retrieval of card network assets
👌 Alongside the listed features below, we have performed improvements to our codebase.
💳 APMs supportRetail Outlets via XenditIn this version of the SDK we added the support for Retail Outlets via Xendit.Retail Outlets via Xendit Payment Method now is fully supported via Headless Universal Checkout (Beta) via the Raw Data Manager.Check this out in our documentation 🙌
👌 Alongside the listed features below, we have performed improvements to our codebase.
💳 APMs supportBancontact via AdyenIn this version of the SDK we added the support for Bancontact Debit via Adyen for.Bancontact Debit via Adyen Payment Method now is fully supported via Headless Universal Checkout (Beta) and the standard SDK implementation.In this release, developers have the ability of initializing the raw data for a Bancontact Card 💳 and perform the Tokenization flow via their own fully customized UI yet utilizing all of the features that make Primer great.Apple Pay billing address on iOSLast but not least, we are now capturing the billing address out of an Apple Pay payment.To enable this feature, when configuring the Checkout with the PrimerSettings , developers can setup PrimerApplePayOptions with another parameter: isCaptureBillingAddressEnabled . The SDK will take care of showing the option of adding the billing address and capture it.
👌 Alongside the listed features below, we have performed improvements to our codebase.
In this version of the SDK we added the support for Multibanco via Universal Checkout for iOS too 🙌.Multibanco Payment Method now is fully supported on both platforms via Headless Universal Checkout (Beta) and the standard SDK implementation.PromptPay is also now supported via Omise too 🙌.In Headless Universal Checkout (Beta), developers will have access to a new event which will provide an object PrimerCheckoutQRCodeInfo containing the data needed to build their awesome UI / UX.For PromptPay specifically, the object will be PromptPayCheckoutAdditionalInfoonCheckoutReceivedAdditionalInfo(additionalInfo: PrimerCheckoutAdditionalInfo?)
👌 Alongside the listed features below, we have performed improvements to our codebase.
iOSApplied a fix on the infinite loading with Xendit payment methods.AndroidApplied a fix on the infinite loading with Xendit payment methods.We have removed some transitive dependencies from our code. This will result in smaller size of you application when Primer SDK is imported.Try it out and let us know what do you think 🙌!
👌 Alongside the listed features below, we have performed improvements to our codebase.
Last release was all about bringing the possibility to Headless Checkout of utilizing the raw data a card 💳 contains so that developers could utilize their own fully customized UI and still use all of the features that make Primer great.We kept expanding the Headless Checkout feature, now providing to our developers the raw phone number data they can utilize to create payments.The payment method supporting that is only OVO via Xendit for now.Try it out and let us know what do you think 🙌!We didn’t stop here though, alongside the phone number capture, we have enriched our suite of available payment methods adding MB Way, working with Portuguese phone numbers 🇵🇹 and needing the MB Way App to complete the payment.Here is a preview for iOS and Android 👇
👌 Alongside the listed features below, we have performed improvements to our codebase.
This release enhance the capabilities of our SDK in its Headless Checkout feature, bringing the possibility of utilizing your fully customized UI and still use all of the features that make Primer great. We now give to our developers all the raw data a card contains.Try it out and let us know what do you think 🙌!
👌 Alongside the listed features below, we have performed improvements to our codebase.
This release brings a totally new way of retrieving the APMs.We have now the possibility of providing some APMs without even push a new release 🙌.That’s a huge milestone for us and the developments of our product.
✨ ImprovementsThe version 2 of the Headless Universal Checkout is out!✨ Payments created automaticallyPrimer Headless Universal Checkout | SDKStarting from this version, automatic payment creation is included in the Headless Universal Checkout. You should now only care about creating best possible and seamless experience for your users, we will take care of the rest. Please take a look at our simple explanation about the changes we made.
✨ ImprovementsThe version 2 of the SDK is out!This includes a simplified way to integrate Primer
📚 Take a look at the migration guide for updating your integration to version 2.
✨ Payments created automaticallyUniversal Checkout | SDKCreating payments with Universal Checkout is now seamless. There’s no more need for callbacks, API calls and headaches to create a payment. It’s all done under the hood 🧙In the past, creating payments involved manual payment handling:
On the client side, you would have had to implement the dreaded clientTokenCallback, onTokenizeSuccess and onResumeSuccess delegate functions.On the server side, you had to manually call our Payments API in order to create a payment 🤷Rejoice! As from version 2.0.0 no manual payment handling is required! Payment creation is now, as mentioned above, :chef-kiss: - seamless.Feel free to rip out the above mentioned callbacks when migrating to version 2.0.0 and enjoy the feeling of utter relaxation as all your payment handling is now done by Universal Checkout 💆