stripe-terminal-android icon indicating copy to clipboard operation
stripe-terminal-android copied to clipboard

TerminalException: Transaction timed out. the USB connected card reader

Open KoRyou opened this issue 1 year ago • 7 comments

Summary

As shown in the log, after setting up the payment intent, a “TerminalException: Transaction timed out.” was returned. The network is normal and the card reader did not receive a disconnection callback.This card reader has this problem several times a day. I also received a callback of Transaction timed out. in another way: unplugging the USB connected card reader before calling collectPaymentMethod(). Please tell me what went wrong and how to avoid this situation.

Code to reproduce

Log [2023-11-17 16:27:58.301][ INFO ]BBPos device, device response:paymentIntent() to set payment intent - pi_3ODZa2HnmbEF7f1O02pp6LTe_secret_g6GUdTWLoFwADcP2ulaHlk8kG [2023-11-17 16:27:58.542][ INFO ]BBPos device, device response:payment intent ID successful - pi_3ODZa2HnmbEF7f1O02pp6LTe [2023-11-17 16:27:58.554][ INFO ]BBPos device, device response:payment status changed - WAITING_FOR_INPUT [2023-11-17 16:27:58.582][ INFO ]BBPos device, (onRequestReaderInput) device response: waiting for card swipe or insertion [2023-11-17 16:27:58.595][ INFO ]bbPosSwipeCard - Swipe / Insert / Tap [2023-11-17 16:28:58.614][ INFO ] User clicked cancel or timed out and cancelled the order [2023-11-17 16:28:58.628][ INFO ]BBPos device, device response:payment status changed - READY [2023-11-17 16:28:58.643][ INFO ]BBPos device, device response:payment cancellation successful [2023-11-17 16:29:28.697][ WARN ]BBPos device, device response:payment collection failed - com.stripe.stripeterminal.external.models.TerminalException: Transaction timed out. [2023-11-17 16:29:28.715][ ERROR ]bbPosPayFail-Payment failure:USER_ERROR.CARD_READ_TIMED_OUT

Android version

android 7.1.2

Impacted devices (Android devices or readers)

Connection method : USB STRM26229002959

SDK version

com.stripe:stripeterminal:2.21.1

Other information

KoRyou avatar Nov 20 '23 08:11 KoRyou

Hi @KoRyou, can you see if you can still reproduce this with the version 3.2.1 that we released today? I believe we may have addressed this issue in that version.

chr-stripe avatar Dec 19 '23 06:12 chr-stripe

🙏Thank you for your answer @chr-stripe , Our device is running on Android 7.1 system, but the strip3.2.1 version requires Android 8 or above. Can it be fixed on the 2.x.x version? Is there any other solution?

KoRyou avatar Jan 08 '24 08:01 KoRyou

Hi @KoRyou, currently we are actively maintaining the latest 3.X SDK versions and only providing support for critical fixes and security updates in the latest 2.X versions. We will investigate adding the fix for this in the next 2.X maintenance release but we don’t have a concrete timeframe on when this would be available.

Are you looking into dropping support for Android 7.0 and 7.1 devices soon? Please refer to our SUPPORT.md documentation for the latest information on 2.X support timelines.

chr-stripe avatar Jan 18 '24 00:01 chr-stripe

Thank you @chr-stripe , All of our customized devices are still running on the Android 7.1 system, and we cannot give up support at present. We look forward to Strip's 2.x version.

KoRyou avatar Jan 18 '24 01:01 KoRyou

Hi, any update ?

Oshariser avatar Feb 08 '24 10:02 Oshariser

Hi @Oshariser -- we do not have any update on 2.X maintenance release scheduling nor if we'll include this issue in the next 2.X maintenance release.

billfinn-stripe avatar Apr 10 '24 00:04 billfinn-stripe

Hello, when this exception occurs, the SDK will use ReaderReconnectionListener to reconnect, but sometimes it will not be connected directly. After disconnectReader, it will not work again through the POS connection process. It can only be done by powering off and restarting. In version 2.x , is there any solution that can connect without power interruption?

whyteH avatar May 14 '24 01:05 whyteH