#monove0770_error

1 messages ยท Page 1 of 1 (latest)

elder karmaBOT
#

๐Ÿ‘‹ 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/1339994183498207335

๐Ÿ“ 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.

west warren
#

Hi, I'm getting help from a teammate who has more expertise with Terminal.

vocal widget
#

Hey @left iron can you share code snippets showing the confirm calls and any example specific requests/errors (the complete error) around the missing API key?

left iron
#

sure 1 min

vocal widget
#

Also can you share context around why you end up calling that again?

left iron
#

2 separate transactions (ie paymentIntents) without disconnecting from reader in between

#

do we need to?

#

02-13 15:15:40.437 7348 7746 I StripeTerminal: class=RestClient message="url=https://api.stripe.com/v1/payment_intents/pi_3Qs8oQFSXzhi0D8j1CMREfVu/confirm status=UNAUTHORIZED headers={access-control-allow-credentials=true, access-control-allow-methods=GET, HEAD, PUT, PATCH, POST, DELETE, access-control-allow-origin=*, access-control-expose-headers=Request-Id, Stripe-Manage-Version, Stripe-Should-Retry, X-Stripe-External-Auth-Required, X-Stripe-Privileged-Session-Required, access-control-max-age=300, cache-control=no-cache, no-store, content-length=342, content-security-policy=base-uri 'none'; default-src 'none'; form-action 'none'; frame-ancestors 'none'; img-src 'self'; script-src 'self' 'report-sample'; style-src 'self'; worker-src 'none'; upgrade-insecure-requests; report-uri https://q.stripe.com/csp-violation?q=VdFlapr6_YSi0MCQumfvq2zVOizgcEy2ZmNyten4I3Vo_krYJVwkF66lBtEyrwKsNU-WWE5Ln62tN4AT, content-type=application/json, date=Thu, 13 Feb 2025 20:15:38 GMT, server=nginx, strict-transport-security=max-age=63072000; includeSubDomains; preload, vary=Origin, www-authenticate=Basic realm="Stripe", x-wc=AB} response={"error":{"message":"You did not provide an API key. You need to provide your API key in the Authorization header, using Bearer auth (e.g. 'Authorization: Bearer YOUR_SECRET_KEY'). See https://stripe.com/docs/api#authentication for details, or we can help at https://support.stripe.com/.","type":"invalid_request_error"}}"
02-13 15:15:40.469 7348 7746 E StripeTerminal: class=TerminalSession
02-13 15:15:40.469 7348 7746 E StripeTerminal: com.stripe.stripeterminal.external.models.TerminalException: You did not provide an API key. You need to provide your API key in the Authorization header, using Bearer auth (e.g. 'Authorization: Bearer YOUR_SECRET_KEY'). See https://stripe.com/docs/api#authentication for details, or we can help at https://support.stripe.com/.

elder karmaBOT
vocal widget
#

I think the requests end up without a request-id because they get rejected early in our system for having no API key (and we can tie them to your account etc).

left iron
#

whats the correct flow

vocal widget
#

I'm trying to figure out if there's any reason this is expected to fail

#

In your experience, does this ever work, or does it always fail?

#

ie first payment is always fine, second payment attempt always blocked?

#

or is this an intermittent issue?

left iron
#

ive tried 3 times and gotten the same result every time i do the second new paymentIntent

#

are we supposed to disconnect from the reader between paymentIntent's?

#

do you know what this meant in the log: "Collectible payment is null in confirmPaymentIntent!"?

#

i think i found my mistake. i'm calling Terminal.getInstance().clearCachedCredentials();

#

is there any way of changing values of on an existing TapToPayConnectionProvider once Terminal.isInitialized() is true

vocal widget
left iron
#

the reason i was clearing was because i was trying to change the values of TapToPayConnectionProvider

#

do you have an example somewhere of how i can do that

vocal widget
#

What are you trying to change?

left iron
#

or do i need to start from scratch, ie disconnect etc

vocal widget
#

I think thats part of the conenction flow, so you'd need a new connection token + reconnect to change that i think?

#

i was trying to change the values of TapToPayConnectionProvider
What are you trying to change here?

#

I'd suggest trying with that cache clear to see if that resolves the auth issue

#

then if there's a neep to change something about the connection/config for tap, we'll need to dig into whether what you want is possible

left iron
#

ok thanks

left iron
vocal widget
#

I'll have our bot send you a DM with a support case link you can use to write in if you need further help with this based on what happens

#

I don't, but i suspect its either out-of-order with the new PI collection, or related to the credential wipe