You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We recently implemented the Tap-to-pay functionality on our app and have received reports from some clients that they cannot connect to the tap-to-pay reader.
Code to reproduce
Check if tap-to-pay is supported before attempting to discover a tap-to-pay reader (This returns true on the devices experiencing this issue).
Terminal.getInstance().discoverReaders(
config = config, // Config for the kind of reader we're trying to discover. Bluetooth, internet and tap-to-pay readers config.
callback = callback, // Discovery callback.
discoveryListener =object:DiscoveryListener {
overridefunonUpdateDiscoveredReaders(readers:List<StripeReader>) {
// We use the results here to show the list of readers on UI.
}
}
)
com.stripe.stripeterminal.external.models.TerminalException: Failed to generate key pair.
at com.stripe.stripeterminal.internal.common.adapter.CotsAdapter.checkAndThrowCotsError(SourceFile:657)
at com.stripe.stripeterminal.internal.common.adapter.CotsAdapter.onReaderActivated(SourceFile:487)
at com.stripe.stripeterminal.internal.common.adapter.ProxyAdapter.onReaderActivated(SourceFile:54)
at com.stripe.stripeterminal.internal.common.terminalsession.TerminalSession.activateReader$terminalsession_release(SourceFile:612)
at com.stripe.stripeterminal.internal.common.terminalsession.TerminalSession$ConnectReaderOperation.execute(SourceFile:2162)
at com.stripe.stripeterminal.internal.common.terminalsession.TerminalSession$ExternalOperation.run$terminalsession_release(SourceFile:1245)
at com.stripe.stripeterminal.internal.common.terminalsession.TerminalSession.enqueueOperation$lambda$6(SourceFile:1052)
at com.stripe.stripeterminal.internal.common.terminalsession.TerminalSession.$r8$lambda$9_FdDGpM1BaifeFRjKBBfCCLP6o(SourceFile:0)
at com.stripe.stripeterminal.internal.common.terminalsession.TerminalSession$$ExternalSyntheticLambda0.run(SourceFile:0)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:487)
at java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
at java.lang.Thread.run(Thread.java:1012)
Not all devices are impacted (i.e. the implementation works fine on some PA768 devices).
The check for tap-to-pay support with the help of the terminal SDK returns true.
I have confirmed the device supports RSA key algorithm.
Sometimes manufacturers will ship different versions of the same model number with and without GMS support (ex. the Sunmi v2s). Can you confirm that GMS and Google Play Services are enabled on the affected devices?
Sometimes manufacturers will ship different versions of the same model number with and without GMS support (ex. the Sunmi v2s). Can you confirm that GMS and Google Play Services are enabled on the affected devices?
Summary
Hello,
We recently implemented the Tap-to-pay functionality on our app and have received reports from some clients that they cannot connect to the tap-to-pay reader.
Code to reproduce
Check if tap-to-pay is supported before attempting to discover a tap-to-pay reader (This returns true on the devices experiencing this issue).
Discover readers.
Connect to a reader.
Error
Android version
12, 14
Impacted devices (Android devices or readers)
Impacted Reader: Tap-to-pay (On-device)
Impacted Device: Unitech PA768
SDK version
4.0.0, 4.1.0
Other information
Not all devices are impacted (i.e. the implementation works fine on some PA768 devices).
The check for tap-to-pay support with the help of the terminal SDK returns true.
I have confirmed the device supports RSA key algorithm.
Sample video of how we have implemented discovering and connecting to readers.
https://github.com/user-attachments/assets/11ad5d4a-76ee-4cc1-bd5e-540552d1442f
The text was updated successfully, but these errors were encountered: