Forum Academy Marketplace Showcase Pricing Features

Does anyone use Stripe Terminal?

I will be part of a small Q&A group meeting directly with the Stripe Terminal team to discuss a bunch of things about the newish Stripe Terminal API (specifically the server-driven side which makes it super easy to use Stripe Terminal with Bubble and other NoCode solutions). If anyone has any questions/concerns or have hit a block while trying to use this API, let me know and I’ll try and insert it into the conversation.

I had a specific use-case regarding being able to take physical card payments (using Terminal), but have those payments utilize Connect with Direct Charge to send payments to the appropriate Connect account. This is for a salon or barbershop-like use case where the professionals being paid are their own entity, but all share one reception desk. In the current iteration of the API, this is not possible without using “destination charges” which muddies the waters in some jurisdictions (i.e. might require employee classification).

I am. Please tell me more about this Q&A group.

Hey Phil! This happened awhile back now and it was an internal Stripe affair so I don’t think the VOD is available anywhere. If you had any questions about Stripe Terminal though, I’d be happy to try and answer them as I do still use it in a couple of my apps.


Thanks for getting back.

I have two issues:

- 1 -
I want to create a Stripe subscription that the customer pays via the Terminal using server side integration.

So I use this: Save directly without charging | Stripe Documentation

When processing an SI in the webhook I get an PM ID that is not the correct one collected and stored on Stripe. To circumvent this I retrieve the last PM added and then create the subscription using that PM.

Would there be a way to get the correct PM or better way to go about this?

- 2 -
When the customers bank requires 3DS the customer does not get a message in their phone, effectively making it impossible for us to complete the transaction.

Would you know why this is or how to get around it?

Best, Peter

  1. You should definitely not be getting the wrong PaymentMethod Id from the SetupIntent object that gets sent to you in the webhook. I would double check your payload to make sure you’re pulling the right ID. If it really is the wrong ID, then I’d contact Stripe support because that’s a huge bug. Polling the last PM created has issues in higher volume environments as well.

If the webhook is really not working for you, an alternative is to pull the SI id from the response of handing off the SetupIntent to the reader and use that to poll for a status success and get your PM from that.

  1. Sorry but I don’t have an answer for this one. I was under the impression that 3DS was only for online payments and I’ve never experienced 3DS for in-person payments on either the merchant side or consumer side. This is in the US though and I see you’re in Sweden.
  1. I look at the payment_method param in the payload. The scary thing is I get an PM ID, but it’s not valid.

I will try getting the SI and from that the PM instead of getting the latest PM from the customer, thanks.

  1. I was a little surprised as well. This might be the case since the solutions is in BETA outside the US.

Thanks again for sharing on a not so well known topic.


Pulled the SI from Stripe using the SI ID from the payload. Got the same incorrect PM back.

Is there a mis-match in the API key being used between calls? That is just so strange. Does the incorrect PM apply to any actual PM?

Same API key – sktest_

The actual PM stored on Stripe (as seen on the Stripe Dashboard) is correct and valid.