#reikoBooop
1 messages · Page 1 of 1 (latest)
hi there! domain is consumer.dev.booop.it
we only registered domain of dev environment for now
I couldn't find req_7bpE7HhdKUuWdN in our system. Could you share the Payment Intent ID (pi_xxx) that you tried to make payment with Apple Pay?
pi_3N0Dbf2HlOgf9IiK0U708A2u_secret_NzbSwPbYF5kH9OW3wS4p1nFeb
Oh sorry the error and payment intent id is not correlated
Hi @frozen oracle I'm taking over
Is there a webpage that I can visit and reproduce the problem?
its under development and unfortunately cant give much info... Let me try and get you pi Id and new req id from error message
OK. You should also open the Safari console and see if there are any warning/errors related to Apple Pay
payment intent ID "pi_3N0GmXFvggaxfzrX01MzaIm3_secret_wYn5p2Bx054ppjJzUcE5Jbffu"
error message:
{
"error": {
"message": "Could not create Apple Pay session. Please make sure you have registered this Stripe account. For more information, see https://stripe.com/docs/apple-pay#web.",
"request_log_url": "https://dashboard.stripe.com/acct_1Lr9llFvggaxfzrX/test/logs/req_SRvqgANREiwfY0?t=1682309649",
"type": "invalid_request_error"
}
}
besides the error message i get the warning of:
Could not create Apple Pay session. Please make sure you have registered this Stripe account. For more information, see https://stripe.com/docs/apple-pay#web.
https://stripe.com/docs/stripe-js/elements/payment-request-button Can you open this page in Safari and tell me if you see Apple Pay button?
Yes I can
OK. So you can see Apple Pay button in the request button page, but you don't see it in your website. Is your page served through HTTPS?
I can see the apple pay button on my iPhone but 2 of my colleagues cannot see it. And yes it is through HTTPS
Have they added active card to their Apple Pay ?
Yes they have, they can see the apple pay button on different platforms
I meant different websites
It's difficult to troubleshoot an Apple Pay problem without having access to the website.
Can I suggest you to come back again when your staging website is up?
Okay so URL to the dev environment is:
https://consumer.dev.booop.it/
Also you need to scan the QR code to add product to cart
The New Way to Shop and Checkout
Shall I expect to see the Apple Pay button on https://consumer.dev.booop.it/order/checkout ?
The New Way to Shop and Checkout
Yes should be
But as I mentioned earlier, some of iPhone does not show Apple pay button though
I noticed that you are creating a Direct Charge on an Express account. This is not recommended. For instance, Express account have limited access to Dashboard and they can't handle disputes. I'd suggest you to use Destination Charge instead https://stripe.com/docs/connect/destination-charges
I think with destination charge each connected account cannot make their own discount code?
you mean coupon?
yes coupon!
I think you can still create coupon on express account by specifying a stripeAccount header
okay, I will let my team know to do some more investigation
but with Direct Charge, we still can use apple pay right?
Yes. I just found the root cause of the issue
The domain needs to be registered with Live mode key, not test mode key
but we are not pushing to product yet, are you saying that even for testing environment we need to use live mode key?
Yes you are right
You must use your platform’s live secret key to register the domains – don’t add domains in test mode.
okay, thats fine. we added domains in Stripe dashboard rather than from backend, do we need to re-register the domain and apple-developer-merchantid-domain-association file too or just change the key to live mode key?
Also changing the key to live mode key doesn't cause the website to charge the user right?
You can use the same apple-developer-merchantid-domain-association file, just delete the domain from Dashboard and add the same back.
As long as the PaymentIntent is created with test mode API key, It won't charge your customer.
Sorry its still does not make sense to me, as we only register domain with Stripe dashboard within the dashboard it does not ask for key, how do we make sure that we are using live mode key there?
Are you saying that I need to use the live mode key to loadStripe function?
Did you register the apple pay domain through the Express Dashboard?
yes only through Express Dashboard
OK. I'd suggest you to remove it and register it again through API with your platform's live mode key.
So register the domain with our backend rather than register with dashboard?
Yes you are right
Thank you Jack will try that !
btw, can you tell me how you managed to add in the Apple Pay domain through Express Dashboard? I just logged into a test Express account and I don't see an option to configure Apple Pay domains
through this link, it takes you to go to configure the apple pay domains
https://dashboard.stripe.com/settings/payments/apple_pay
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
sorry another question, in frontend do i need this ?
const stripe = Stripe('pk_test_51KxKn7COApIvyfoa4Ldv9la6nIrWLyVGDp6MVt0k9QIabcOSO489ioLD1jPcfw9TNrDKhQPEdPd9jTBzvLI6hmOY00FoVtPCRr', {
apiVersion: "2022-11-15",
stripeAccount: 'CONNECTED_STRIPE_ACCOUNT_ID',
});
Or did you use the View Dashboard As link to log into Connected account Dashbaord?
Yes, the code looks good to me/
btw, you should never expose your secret key here, even it's a test mode key
I'd suggest you to roll the key asap https://stripe.com/docs/keys#rolling-keys
OK
Good question, not quite sure how I get to the point I just follow the Stripe documentation for payment request button on step 2 of Verify your domain with Apple Pay
https://stripe.com/docs/stripe-js/elements/payment-request-button?client=react#verifying-your-domain-with-apple-pay
Hey Jack, we tried to register the domain from backend and use the live key but still shows same result
Was the registration successful? Because from my end I see this domain was still registered with a test mode key
we removed domain from dashboard to test it and wasnt changing anything so we put it back again