I am facing a problem of payment using credit card.
I tried several banks and cards without any result.
I also used one of the card I have successfully paid another account.
Heeeeelp
Apple Pay
RSS for tagProvide a fast, easy, and secure way for users to buy goods and services in your app or on your website using Apple Pay.
Posts under Apple Pay tag
120 Posts
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
When I use my iPhone to scan the apple pay QR code in chrome, the url is https://applepaydemo.apple.com/apple-pay-js-api, I keep geting the "Service Unavailable" error.
Wonder know if you guys meet this error as well? Btw, the QR code feature needs IOS 18.
I developed a web app using .net c#. The app runs a workflow which included Apple payment. App can work on any browser of any device (even non-IOS).
When the app is browsed using PC windows Chrome browser, the payment sheet will show with QR code to scan using iPhone. If I cancelled the pop-up by clicking on X without scanning the code, and then returned to idle screen and performed another payment, I will reach paymentRequest.Show() but nothing will show and no errors are logged in console.
Note that:
I use Payment Request API
The issue appear on the second payment.
The issue will be solved once I refresh the page.
My app supports both single and separate pages mode and issue appear on both.
I used to see an error "Uncaught NotSupportedError: Failed to execute 'define' on 'CustomElementRegistry': the name apple spinner has already been used with this registry. So I thought the issue might be in loading the apple SDK script multiple times, and solved the issue to be loaded only once. The error disappeared but the issue persist without errors.
PLATFORM AND VERSION
iOS
Development environment: Xcode Version 16.2 (16C5032a), macOS 14.6.1
Run-time configuration: iOS 26
DESCRIPTION OF PROBLEM
We would like to seek clarification on how to determine whether a card used via Apple Pay is a credit or debit card before sending the transaction request.
Currently, we can retrieve the card type information (credit/debit) from the Apple Pay response payload, but this is only available after the payment has been processed.
However, we need to determine the card type in advance, as our system calculates and applies transaction fees based on the card type, which should be added to the total transaction amount before submission.
Could you please advise if there is any parameter, API field, or pre-authorization mechanism available to identify the card type prior to initiating the transaction request?
We would appreciate your guidance or any related documentation for implementing this.
STEPS TO REPRODUCE
Initiate Apple pay
Payment from Apple pay
Getting payload
we can retrieve the card type information (credit/debit) from the Apple Pay response payload, but this is only available after the payment has been processed.
We need to identify if there's any way to know the card user selected(whether it is credit/debit) before processing the payment.
Hi everyone,
I’m encountering a strange issue with Apple Pay in our React Native iOS app using the Stripe React Native SDK.
Summary of the Problem:
• Apple Pay shows up as an available payment method inside the Stripe Payment Sheet.
• When I tap Apple Pay, the Apple Pay sheet opens normally.
• After confirming payment, the Apple Pay sheet immediately closes, and nothing happens.
• No payment is created and no request reaches Stripe’s servers.
On Stripe Dashboard the PaymentIntent remains incomplete, with no errors, which means the failure happens before Stripe receives anything.
Environment
• React Native with @stripe/stripe-react-native
• StripeProvider configured with:
<StripeProvider
publishableKey={...}
merchantIdentifier="merchant.com.app.venga"
stripeAccountId={...}
urlScheme="venga"
>
Apple Pay works on our web checkout with the same merchant identifier.
We have verified all of the required Apple Pay setup:
• Merchant ID exists, active, and matches exactly.
• Merchant ID added to the iOS app target in Xcode → Signing & Capabilities.
• Apple Pay capability enabled.
• Merchant domain is verified (web checkout works).
• Apple Pay certificate and merchant certificate are valid.
• Stripe publishable key and merchantIdentifier are correct.
• Stripe SDK correctly initialized.
• Device region supports Apple Pay.
Extra Observations:
• The PaymentIntent’s allowed_payment_methods includes "card" and Apple Pay does appear in the payment sheet.
• But after tapping Pay → the Apple Pay sheet closes instantly.
• There is no callback with an error, and nothing appears in Stripe logs.
• We are testing in Sweden. As far as I know Apple Pay should work fine here.
Questions:
What could cause the Apple Pay sheet to dismiss instantly after attempting a payment?
Could this be caused by a merchant ID mismatch—even if Apple Pay appears in the sheet?
Is there any Apple-device-level requirement (region, wallet config, card type) that could cause this silent failure?
Is there a way to get more detailed logs when Apple Pay closes before Stripe receives anything?
Any help or suggestions would be greatly appreciated. Thanks!
Hello Apple Team,
I’ve encountered a regression in iOS 26.1 when building my app with Xcode 26 (iOS 26 SDK).
The issue affects PKPaymentButtonType.plain, which now renders as fully invisible and produces transparent snapshots, even though the same code worked correctly in previous Xcode/iOS versions.
This has a real-world impact because many apps generate static images from PKPaymentButton for payment selection UIs using UIGraphicsImageRenderer, layer.render(in:), or custom snapshot utilities.
When using
PKPaymentButton(paymentButtonType: .plain, paymentButtonStyle: .black)
on iOS 26.1, when built with Xcode 26, the button:
Appears blank / invisible
Cannot be snapshotted
Produces a fully transparent UIImage, even though the CGImage object exists
Behaves differently than older SDKs (Xcode 16.x / iOS < 26.1
This regression only appears when compiling with the new SDK.
Other button types work fine.
Expected Behavior
.plain button should render glyphs as documented
snapshot generated via UIGraphicsImageRenderer or drawHierarchy(in:) should produce a visible image
Behavior should be consistent with older SDKs unless explicitly deprecated in release notes
Expected Behavior
.plain button should render glyphs as documented
Snapshot generated via UIGraphicsImageRenderer or drawHierarchy(in:) should produce a visible image
Behavior should be consistent with older SDKs unless explicitly deprecated in release notes
Actual Behavior
.plain button renders no glyph at all
Snapshot image is fully transparent (alpha = 0), even though size and CGImage metadata are correct
Only happens when built with Xcode 26 SDK
Same build from Xcode 16.x does not reproduce the issue
Steps to Reproduce
Create a minimal sample project in Xcode 26
Add the following code:
let button = PKPaymentButton(paymentButtonType: .plain, paymentButtonStyle: .black)
button.frame = CGRect(x: 0, y: 0, width: 180, height: 48)
let renderer = UIGraphicsImageRenderer(size: button.bounds.size)
let image = renderer.image { _ in
button.drawHierarchy(in: button.bounds, afterScreenUpdates: true)
}
print(image)
Run on iOS 26.1 device or simulator
Observe that:
The button appears visually empty
The generated image is fully transparent
Environment
Xcode: 26.x (iOS 26 SDK)
iOS: 26.1 (iPhone 15 Pro tested)
Device: Real device
Framework: UIKit + PassKit
Button type: .plain ONLY
Other types: .pay/.buy/.checkout = OK
We are working with two types of wallet passes. Provisioning works successfully for one pass type via wallet extensions, but the same process is not functioning for the other. For the second pass type, we are able to generate the required data for pull provisioning and send it to Apple. Additionally, in-app push provisioning for this pass type completes without issue. We would appreciate guidance on how to further debug and resolve this provisioning problem.
I’m restructuring my business and want to remove Apple Pay. I use Woocommerce Square for payments. Do I do it in the Square dashboard or here? I honestly can’t remember how I set it up. I’m not a developer. I’m a farmer and work on my own website. Thanks!
I am adding In-App provisioning to my app. I am able to access the Apple Pay Sandbox and I have successfully tested adding a secure element/payment pass to Apple Wallet. However, once the pass has been added to the wallet, I can not access or retrieve the pass from my app. I have confirmed with the PNO that the PNO Pass Metadata Configuration in the testing environment include the correct metadata for "associatedApplicationIdentifiers" and "associatedStoreIdentifiers".
Does anyone know why I am having this issue and how I can resolve it?
Steps used to access pass in Apple Wallet
I am unable to view the pass when I attempt to access it using the PKPassLibrary function as follows:
let library = PKPassLibrary()
if #available(iOS 13.4, *) {
// This returns an empty array
library.passes(of: .secureElement)
} else {
// This also returns an empty array
library.passes(of: .payment)
}
// This returns an empty array too
library.passes()
Steps used to add pass to Apple Wallet
These are the steps I follow to add the card:
I create a PKAddPaymentPassRequestConfiguration
I use this config to instantiate a PKAddPaymentPassViewController.
I provide the nonce, nonceSignature, and certificates to my PNO along with the card data.
I receive the activationData, encryptedPassData, and ephemeralPublicKey from my PNO and create a PKAddPaymentPassRequest using this data.
I add the pass to Apple Wallet.
In the addPaymentPassViewController callback, I am able to view the pass data from the .didFinishAdding pass: PKPaymentPass? variable. I am also able to see that the pass has been added from Apple Wallet app. I am not able to access the pass using PKPassLibrary().passes() at this point. I am not able to access the pass at any point after adding it either.
When integrating the Wallet Extension, after clicking my app icon from the "From Apps on Your iPhone" list, I encountered the message: "Cannot Add Card. 'XXX' is not responding. Wait a few minutes and try again. If the problem continues, contact the card issuer's customer service" instead of the configured login page appearing as expected.
What could be causing this issue, and how should I resolve it?
This error occurs in Apple Pay Wallet In-App Provisioning Flow for Credit / Debit Cards
When the data received from the PNO (Visa) is passed to PKAddPaymentPassRequest this error is seen in addPaymentPassViewController, in the finalize stage.
Docs provide no clue as to what could be wrong.
iOS 18.2.1
XCode 15.2
Error description mentions "unsupportedVersionError"
Is the pass version not supported?
Is the wallet version not supported?
Is it an app implementation error or error in the data received from the PNO?
We have implemented In-App Provisioning, but when I start the tokenization process, I receive an error before the terms and conditions.
We are testing with a version of the app on TestFlight.
The error message is: Could not add card. Try again later or contact your card issuer for more information.
Could you please help me?
I'm facing problem with in-app-provisioning in production application. When we try to tokenize (before T&C step) we are getting error from topic.
I've also posted this in Feedback Assistant: FB18403577.
I'll be very happy if someone could help me to get what is wrong with data or configuration of application.
Hello,
I am developing an Apple Pay and In-App Provisioning integration for the bank where I work. All entitlements are properly configured, and we are integrated correctly with our Payment Network Operator (PNO).
We are using PKAddPaymentPassViewControllerDelegate to handle the provisioning process. The flow progresses as expected up to the Terms and Conditions screen. However, after accepting the terms, the process fails with the message:
"Could not add card."
Upon checking the device logs using the Wallet profile configuration, I observed the following response from Apple's backend:
Response:
https://nc-pod10-smp-device.apple.com:443/broker/v4/devices/041315032816900221610987313158566F368A9CEBA1291E/cards/745f792b9d0644e5a6e713d54f505296/enable 500 Time profile: 1.80458 seconds
{
x-conversation-id = "6ec59a63424f4035915e32f22ea645e4"
Vary = "accept-language"
Content-Type = "application/json"
x-pod = "nc-pod10"
x-keystone-correlationid = "E3DD5A5A-FD18-4500-8570-2BD1334E281C"
Date = "Thu, 17 Apr 2025 07:05:03 GMT"
x-apay-service-response-details = "via_upstream"
Content-Length = "49"
x-envoy-upstream-service-time = "964"
x-pod-region = "paymentpass.com.apple"
}
{
errorCode = 40456;
statusCode = 500;
}
This seems to indicate that the card enablement step is failing on the server side. Our internal systems have not logged any request failure from Apple at this step, which makes it difficult to pinpoint whether the issue is in the PNO integration, entitlement configuration, or something else.
We are currently testing in a production environment on a physical device (not using sandbox), and provisioning flows are initiated through our iOS app using PKAddPaymentPassRequest.
Could you please help us interpret error code 40456 and identify what steps we should take to resolve this issue? If needed, we can also provide the full device log and additional details.
Thank you in advance for your support.
Best regards,
Mansur Bagwan
I am encountering an issue with the in-app provisioning flow using PKAddPaymentPassViewController. Specifically, when presenting the controller to allow users to add a pass to Apple Wallet, the device selection screen is showing all the devices, even after setting the primaryAccountIdentifier on the PKAddPaymentPassRequestConfiguration.
Here's the context:
I'm using PKAddPaymentPassViewController for in-app provisioning.
I provide a valid primaryAccountIdentifier in the configuration. But after adding the pass, if i print back the primaryAccountIdentifier it displays some other value different than the identifier i had set(Example masked identifier: FAPLMC1GB000000066aa4xxxxxxxxxxxa744f16axxxxxxxx).
The provisioning flow works, but the device list shown to the user includes all the devices (e.g., Apple Watches and iPhone even though it is already added to Apple Watch or iPhone).
We have developed Apple Wallet Extension for our App. The in-app provisioning for the card is working. However when we try to add the card from Wallet extension it gives error saying "Your issuer does not yet offer support for this card".
From the apple documentation we can see the issues is same as mentioned in Scenario 2 at following link https://applepaydemo.apple.com/in-app-provisioning#8.4
We are getting eligibilityStatus as 0
Below is the response from Wallet captured using SysDiagnosis
https://crt-pod1-smp-device.apple.com:443/broker/v4/devices/0434320BCB1A90022306073796318273728D0A367FA927F4/cards 200 Time profile: 1.77856 seconds
{
x-conversation-id = ......
Content-Type = "application/json"
x-pod = "crt-pod1"
x-xss-protection = "1; mode=block"
Server = "Apple"
x-pod-region = "paymentpass.com.apple"
regionbrokerurl = "https://crt-pod1-smp-device.apple.com:443/broker"
Date = "Wed, 06 Aug 2025 11:39:30 GMT"
Content-Length = "488"
x-envoy-upstream-service-time = "1400"
Strict-Transport-Security = "max-age=31536000; includeSubdomains"
cross-origin-opener-policy = "same-origin"
x-keystone-correlationid = ......
x-content-type-options = "nosniff"
Vary = "accept-language"
x-frame-options = "SAMEORIGIN"
}
{
applicationIdentifier = ......;
auxiliaryCapabilities = {
};
cardType = 4;
deviceProvisioningDataExpected = 1;
eligibilityStatus = 0;
identifier = ......;
learnMoreURL = "https://www.apple.com/ae/apple-pay/banks/ae/en-ae.html";
nonce = ......;
paymentApplications = (
{
appletTypeIdentifier = Argon;
paymentType = Credit;
}
);
region = "paymentpass.com.apple";
sanitizedPrimaryAccountNumber = 7008;
sanitizedPrimaryAccountPrefix = "";
}
Hello,
I am following up on my previous feedback (Feedback ID: FB17175593) regarding the in-app provisioning failure for Apple Pay. In that report, I detailed errors encountered during the card addition process (notably issues related to a missing teamID and cryptographic material errors). Could you please provide an update on the investigation progress? I appreciate your assistance and look forward to your response.
Hi!
I am working on automating the Apple Pay integration process in our CI/CD pipeline and would like to confirm whether a fully automated setup is currently possible for our preproduction environment.
Right now, our process is as follows:
A certificate is generated for the root domain and for each individual merchant subdomain.
Both certificates are manually uploaded to our preproduction servers to test and verified via HTTP.
We’d like to automate this flow in GitLab CI, mainly the generation of the necessary certificates programmatically or via API. However, from my research, it seems that Apple does not currently provide an API or any support to automate this task, but I’d like to confirm this directly with you.
Is there any official support or workaround for this kind of automation?
If not, do you have any plans to provide it in the future?
Thanks in advance for your help.
Hi,
We’re a franchise business with over 100 franchisees, and each franchisee has their own unique Merchant ID. We're building a single app that allows customers to place orders, and based on the selected franchisee, the payment needs to be processed through that specific franchisee’s merchant account.
However, when we integrate Apple Pay and publish the app, it asks us to provide a payment gateways' Merchant ID, but we don’t use just one – we have many.
How can we handle this situation? Is there a way to dynamically use multiple Merchant IDs in one app, depending on which franchisee the customer is ordering from?
We have an Apple Pay account and have successfully created and verified the payment processing certificate in our Apple Developer account.
When initiating an Apple Pay payment, the Apple session is created successfully with the correct data return from api , but it is not accepted with the error: “Payment not completed.”
The issue occurs even though the merchant validation step works without errors.
Our websites where this is happening are:
https://magicdeliver.com/
https://www.pulsarmodular.com/
Could you please help us identify the cause of the issue and guide us on resolving it?