#ash_code
1 messages Β· Page 1 of 1 (latest)
π Welcome to your new thread!
β²οΈ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.
β±οΈ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.
π This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1351575090927763516
π Have more to share? Add more details, code, screenshots, videos, etc. below.
Below are links to other discussions we've had with you in the past week in case you want to review that information. If your question is related to one of these previous discussions, please provide a comprehensive summary of the current state and what you need help with now. We help many users simultaneously, so a summary allows us to resolve your issue as soon as possible.
- ash_code, 9 minutes ago, 5 messages
Hello, back to where we were can you send the code that is getting called when that error gets thrown?
And ah here is a doc where we show implementing handoff mode with our first party library
https://docs.stripe.com/terminal/features/apps-on-devices/build#discover-and-connect-a-reader
And I assume you are using a standard Stripe test card for this?
Like one of our physical terminal test cards?
Yes
I did use both of the cards - the standard ones and the terminal ones
I discovered the device, I connect to the device also
Im having issues with the payment flow only
I dont have any other issues
everything else works for me
class=HandoffReaderController message="startPaymentCollection - handleResponseContent" intentId=pi_3R3jdjGazeq8JM7H1KEsSp93 updatePaymentIntent=false offlineDetails=null offlineBehavior=PREFER_ONLINE result="QueryPaymentMethodResponse{payment_method=PaymentMethod{card_payment=CardPaymentMethod{masked_pan=ββ, expiration_date=ββ, card_brand=INVALID_CREDIT_CARD_BRAND, card_entry_method=CONTACTLESS}}, num_of_canceled_payments=0}"
this is the error i get in my console logs
will u be able to start with this?
Yep, looking now. And this is with the default reader app? Or are you writing your own Apps on Devices app?
what do u mean by that?
not my own
the default stripe app
thank you
pls lmk if u find anything
Are you able to complete non-handoff mode payments with the same Terminal?
Hi hi! Iβm going to be taking over for my colleague here, but I'll likely have to pull another colleague in to help. Let me just read this all first.
Ahh shoot sorry. Lots going on.
okay
Hello π
I'm stepping to see if I can offer some support. GIve me a minute to catch up
Okay so you are using an App on Device, with the default Stripe App?
yes
handoff mode
S700 device
class=HandoffReaderController message="startPaymentCollection - handleResponseContent" intentId=pi_3R3jdjGazeq8JM7H1KEsSp93 updatePaymentIntent=false offlineDetails=null offlineBehavior=PREFER_ONLINE result="QueryPaymentMethodResponse{payment_method=PaymentMethod{card_payment=CardPaymentMethod{masked_pan=ββ, expiration_date=ββ, card_brand=INVALID_CREDIT_CARD_BRAND, card_entry_method=CONTACTLESS}}, num_of_canceled_payments=0}"
this is the error code i get
What line of code is throwing that error?
it doesnt stop at the debug points
it just prints the above error in the terminal
console
im trying to call the collectPaymentMethod
When this error is thrown, there should be part of the stack trace that points to the file and line number
What code is running on that file at that line number?
thats the issue.. it deosnt show that
I am trying to do the payment on handoff mode on S700 Devkit device. When it goes to the payment flow, it just keeps on processing but doesnt approve the payment, and after sometime, it fails and asks to try again.
payment is working partially
And you are just running the code we document here? Calling the collectPaymentInfo function?
yes
Hmmm... and I don't see any attempts to confirm the payment intent. Because, of course, you don't get that far. Just thinking out loud about the steps going on here.
if i go to my stripe dashboard, the transaction shows unfinished
that its incomplete
Yees, that is what I meant
That is the part I'm confused by too.
this it only shows for handoff mode
not other modes
can u pls verify with ur team
if im missing something?
I'm checking on that
E/StripeTerminal( 3616): java.io.IOException: Empty request body
E/StripeTerminal( 3616): at com.stripe.stripeterminal.handoffclient.HandoffRpcCallbackListener.onUpdate(HandoffRpcCallbackListener.kt:45)
it prints this also
i think this might help you @twin moss
I cant access that file
class=HandoffRpcCallbackListener message="encountered unknown card status" cardStatus=null onReaderUpdate="OnReaderUpdate{offline_status_details_changed=OnOfflineStatusDetailsChanged{offline_stats=OfflineStats{payments_count=0, setup_intents_count=0}, network_status=UNKNOWN}}"
I have reached out to an internal team member for more guidance about this
okay thank you
will wait for ur response here
PaymentIntent is getting created
should i send u the payment intent?
I already have it. The ID is in the error message
ok thankss
I think this is going to take longer than we can assist with here on Discord. I will send you a link to create a case with us that will get it routed directly to our engineers. That way we can keep digging and follow up with you once we know something.
Hello @fast beacon, we have sent you a direct message, please check it at https://discord.com/channels/@me/1351622527948034171
- πThe message has instructions on how to open a direct support case with our Developer Support team, in order to help you more effectively.
Okay
I created a support case
but is it a bigger problem that expected ?
can u also update me here if u know something? @twin moss
We will close this thread after a period of inactivity so it is unlikely I will be able to update here
I didnt get any case number
or support number?
it just says we created a support case for u
I see your case
how do i track it?
We will respond when we have more information
Yup, we will get back to you once we have more details.
ok thanks
also i had one more question
if i can ask here
only after i discover registered readers, i get what kind of device it is
taken from this enum:
deviceType =DeviceType (DeviceType.stripeS700Devkit)
is there a way to get the device even before discovering the device, from the sdk initialisation step itself?
based on the confuguration sent only we get the devices
but based on the configuration i have to show diff ux elements
how can i achieve it beforehand?
Hello
Not it's not possible. Discovery is required in order to retrieve type of the reader. The other option would be to let customer operating the reader choose the type of the reader through your own UI surface
oh thanks for the reply.
Can u explain a little more about the second thing?
Yes we are doing that currently
if i click on Handoff button, I send handoff configuration and discover the readers based on that.
My ask is, if im on a S700 device, is there a way for me to know i installed the app on S700 device?
so that if im on S700, i show one UI element, if im on mobile phone, i show different UI elements
What I mean is have a screen in your app that let's the reader operator choose what type of reader they're working with
Yes we are doing that currently
if i click on Handoff button, I send handoff configuration and discover the readers based on that.
My ask is, if im on a S700 device, is there a way for me to know i installed the app on S700 device?
so that if im on S700, i show one UI element, if im on mobile phone, i show different UI elements
have you tried using android specific methods like android.os.Build.MODEL ?
no i havent
but i not only work with android
we work with iphones also
android.os.Build.MODEL wil this discover S700 also?
It should? I'd recommend giving it a try.
Are you using React Native SDK?
No Flutter
but we wrote plugin on top of the android code
which calls android methods
internally from flutter code
it worked all the time for us for other payment modes except for Handoff
Unfortunately I know nothing about flutter given we don't have a first party SDK for it.
iOS must have similar method for getting device info.
I'd recommend checking flutter specific docs around how you can get device info
we can get device info for ios and android
but it only discovers phones like samsung or iphone 13 pro
Just wanted to know if i there is anything from stripe that sends us information about the device type
or a flag to tell us that app is installed on S700
I mean there's nothing in the Stripe SDK that you can use for this but I'm sure using Android native functions would do the trick
okay thanks for ur inputs. Will check it out. Will u also be able to help with my initial query for S700 please.?
We've reached out to our Apps on Devices team for the earlier query.
You'd receive a response on the support ticket once they've had a look
NP! π Happy to help