#afenster
1 messages · Page 1 of 1 (latest)
Can you share the payment intent id?
Just a moment, I'll get one.
Thanks
pi_3MCqZIBFErDTamq21gyY0h2L
While I'm thinking about it: that PI is only a few minutes old, but it shows as Dec 8, 8:19 PM. That's more than 7 hours in the future. Is that a setting?
It's utc time
But when you create a payment intent, you need to pass card_present as an option in payment_method_types as is done here: https://stripe.com/docs/terminal/quickstart
That calls it out
card_present is only one type. What would I do for Apple Pay or other payment types? Doesn't the Terminal accept those?
Not really sure how Apple Pay works right now. I've got an Android phone. 🙂
Gotcha
You can pass multiple options to payment_method_types. It's an array
But apple pay is just bundled under the card type in the same way google pay is
You mean card_present type allows cards and Apple Pay and Google Pay?
You also need to possibly pay online too right? So in that case I think you should just be able to pass:
"card_present",
"card"
],```
OK, I can do that. And that will take care of cards and Apple and Google? I don't need to add any other payment methods to the array?
If all you want to be able to accept is card, cards present (terminal), and both apple and google pay, then above is all you need
But you need to follow this guide to use apple pay in person: https://stripe.com/docs/terminal/payments/setup-reader/tap-to-pay-on-iphone
Passing card works for online payments
OK good. That leads to a follow up then:
I'm calling (in .Net)
var options = new ReaderProcessPaymentIntentOptions
{
PaymentIntent = paymentIntent.Id
};
var reader = service.ProcessPaymentIntent(terminalReaderID, options);
For all those payment types, will it respond immediately, or do I need a webhook?
I assume that needs a webhook, but I thought I'd ask since making a webhook looks complicated.
Depends on your goal ultimately
Webhooks are generally recommended so that your application definitely hears back on the payment intent status
But the answer here depends on what you do on a successful payment (what the customers are buying, do you need to provision access, etc)
Well, we need that. Need to tell the person whether their payment was successful. Also I need to know whether to book their reservation. So I guess it's webhooks.
Yeah webhooks would be the most robust way to handle that for sure. I know they look intimidating, but we have a few guides I'll link as well as example code for an integration to make setting them up (ideally) a breeze:
https://stripe.com/docs/webhooks/quickstart?lang=dotnet
Above is the integration builder that helps you build a sample integration
Recommend reading this too though: https://stripe.com/docs/webhooks
I'll take a look. We use Azure Functions. It's easy enough to make one. I will need to figure out how to update our application (React in a browser) to show success. Maybe SignalR? And also clear the terminal.
OK, I'll do some research. I appreciate your help.