Hi All,
I would like to know what kind of JWT I have to create.
This is the text from the Docs:
" get a JSON web token (JWT) from your payment service provider that includes the merchant’s unique identifier "
and
" Valid and signed token from a participating payment service provider. "
It's possible to have an example of JWT Token ? Because I tried some kind of JWT but I always got the same error:
" PaymentCardReaderError.invalidReaderToken(_:)
An error that indicates an invalid, non-empty reader token. "
https://developer.apple.com/documentation/proximityreader/adding-support-for-tap-to-pay-on-iphone-to-your-app
Thanks
Gianluca,
Tap to Pay on iPhone
RSS for tagAccept contactless payments right on iPhone in your payment apps without any extra terminals or hardware.
Posts under Tap to Pay on iPhone tag
32 Posts
Sort by:
Post
Replies
Boosts
Views
Activity
we want to get the last four digits of the real card number in apple Pay, and I found information about it in the document, link:
https://developer.apple.com/documentation/passkit_apple_pay_and_wallet/pksecureelementpass/3543366-primaryaccountnumbersuffix?language=objc
My question is how to use it,can you provide sample code? We are very anxious, thank you!
Hello,
I’m developing an app and want to explore the possibility of using an iPhone to emulate an NFC tag. Specifically, I’m interested in enabling one iPhone to act as an NFC tag that another iPhone can read, creating a tap-to-interact experience within my app. Is this functionality supported by current iOS APIs, or is it something that might be available in the next update for iOS 18.1 which is supposedly unlocking iPhone NFC chips? If not, are there any workarounds or third-party solutions that can achieve this such as bluetooth low energy (BLE) maybe?
Any insights or guidance on how to implement this feature would be greatly appreciated.
Thank you!
I would like to understand what solution there is for accepting ApplePay within Hotel Front-Desk check-ins, that would allow a Hotel to use the stored ApplePay token from the Apple Device, to hold on account for room breakages, in-room services, items added to room account etc. To then be able to use the Apple Token for processing unscheduled Merchant Initiated Transactions (MITs). Is this possible today in that environment, where the consumer wants to tap their phone to pay at the front desk and use that Apple Device Token against their room account as opposed to having to present a physical credit card? I know for Ecommerce there is the MPAN now for scheduled/unscheduled payments, but what about for when the consumer/customer checks in to the Hotel at the physical location and wishes to use ApplePay to tap on the card terminal/reader? Thanks, Steve
We are essentially implementing a membership card feature wherein the card details originates from a third-party provider and gets stored in the Apple Wallet. We are utilizing the Passkit Generator ( https://www.npmjs.com/package/passkit-generator ) for this purpose.
The challenge, or rather issue, is that when this card is saved to Apple Wallet and tapped on the NFC reader, it only shows "Invalid Card."
When we attempted to gather information from the third-party provider regarding this issue on both Android and iOS, they stated:
"For IOS we do not have any experience to share with, rather than the fact we have implemented the VAS protocol under an NDA signed with Apple.
Related to Passkit we do not have any experience with it."
We require your assistance to identify any potential issues.
Hi!
I am having a strange issue when I try to build my react native project in an eas managed workflow (including dependencies just in case).
The error I get is:
Provisioning profile "[profile]" doesn't include the com.apple.developer.proximity-reader.payment.acceptance entitlement. Profile qualification is using entitlement definitions that may be out of date. Connect to network to update. (in target '[project_name]' from project '[project]')
I find this weird because I have enabled the entitlement in my identifier and my provisioning profile reflects this fact. I have set up an entitlements file where I have set up the kv pair for the entitlement.
Any help would be much appreciated!
I have a merchantId which from Buckaroo.
it is return false when I call canMakePaymentsWithActiveCard
I also have an merchantId which from Apple directly.
it is return true on sandbox test account.
The merchantId from buckaroo return true. when we test it on Mobile with real account.
Hello forum,
Hope all is great!
I have a shortcut automation which uses the transaction trigger. Since updating to ios 18 the transaction trigger does not work anymore.
Whenever a transaction is done, the “Running your automation” notification does not show up and the automation does not work.
To share with you the steps I’ve done so far:
1.Remove the automation and do it again
2.Remove the card from apple pay
3. Delete and install again the shortcut app
4. Turned on and off the phone
I can confirm the automation works on my other iPhone with the latest version of IOS 17.
Would really appreciate if anyone has any insights about that, or if this happened to you as well.
Cheers!
Dorin
I am getting error while await applePayClient.PostAsJsonAsync(validationUrl, validationPayload)
I am testing it on local machine. Am I even can test this on local machine or not?
Error: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host..
validationUrl: https://apple-pay-gateway.apple.com/paymentservices/startSession
JS
C# code:
var applePayClientHandler = new HttpClientHandler
{
SslProtocols = System.Security.Authentication.SslProtocols.Tls12 | System.Security.Authentication.SslProtocols.Tls13
};
var applePayClient = new HttpClient(applePayClientHandler);
var merchantId = "merchant.com.xxxxxx.sandbox";
var _displayName = "Sandbox";
var domainName = "xxxxxx.co";
var validationUrl = request.ValidationURL;
var validationPayload = new
{
MerchantIdentifier = merchantId,
DisplayName = _displayName,
Initiative = "web",
InitiativeContext = domainName
};
try
{
var response = await applePayClient.PostAsJsonAsync(validationUrl, validationPayload);
var merchantSession = await response.Content.ReadAsStringAsync();
return merchantSession;
}
catch (HttpRequestException httpEx)
{
// Log detailed HTTP request/response information
Console.WriteLine($"HttpRequestException: {httpEx.Message}");
if (httpEx.InnerException != null)
{
Console.WriteLine($"InnerException: {httpEx.InnerException.Message}");
}
throw;
}
I'm trying to upload my app with Tap to Pay on iPhone functionality. However, I'm getting error message "Profile doesn't include com.apple.developer.proximity-reader.payment.acceptance entitlement." I've confirmed many times that I have the distribution profile with this capability. Any idea what might be the issue? The development environment works perfectly.
please check my post on apple forum.
https://forums.developer.apple.com/forums/thread/755736
Hi,
I am integrating the HCE-based API into our SDK.
Ideal flow
It is bit tricky to support card change (step 3 below) after field-detect/double click due to NFC action sheet. Ideally, the flow is:
User double-click.
App launch
"Hold near Reader" NFC instruction
(optional) User change card
User tap device to POS reader
payment succeed.
Approach A
If I follow the code snippet in CardSession, where it calls startEmulation after readerDetected, I could change card before that. However, the "Hold near Reader" NFC instruction is shown very late, during tap.
User double-click
App launch
(optional)User change card
User tap device to POS reader
"Hold near Reader" NFC instruction
payment succeed.
Approach B
If I call startEmulation after sessionStarted, I could show "Hold near Reader" NFC. However, I could not provide the optional capability to change card anymore.
User double-click
App launch
"Hold near Reader" NFC instruction
User tap device to POS reader
payment succeed.
Neither approach A or B provide optimal approach shown in Ideal flow.
Is this expected from CardSession that there is no option to startEmulation without the action sheet?
Is there a plan to improve startEmulation so that it could show "Hold near Reader" without the action sheet?
Thank you.
I'm trying to upload my app with Tap to Pay on iPhone functionality. However, I'm getting error message "Profile doesn't include com.apple.developer.proximity-reader.payment.acceptance entitlement." I've confirmed many times that I have the distribution profile with this capability. Any idea what might be the issue? The development environment works perfectly.
There is coming vawe of SoftPOS class app, turning iPhone into regular payment terminal. so far Apple picks country by country, where the service is available. As for today limited number of regions, where Tap on Mobile is possible to use at all.
Beeing preparing for that vawe we are considering possibly integration scenario and found the following obstacle:
Originally it was possible to integrate as app to app, means Tap on Mobile to other apps, where both apps are installed separately on iPhone. But now Apple does not allowe to make integration as app to app, but only integration is possible by embedded libraries (special libraries are embedded in master app, and on the iPhone there is only one app, which covers also Tap on Mobile features).
1/ Do you know, what is the reason for such restriction to have only embedded libraries method to integrate (although originally it was possible to integrate as app to app, means Tap on Mobile to other app)?
2/ Do you think, Apple release again first integration as app to app, as they allowed originally?
Is it possible to use the deep link for the payment? As if I want to pay. I just click on the payment button and it will kick me out from my existing app and run the payment solution app like Paytm, GPay, PhonePe, etc and the user will make the payment and redirect to their previous app and get the payment status
How to add Additional capabilities in Certificates, Identifiers & Profiles on app store account to Enable the Tap to Pay on iPhone capability.
We couldn't find a descriptive reply for the following and we wanted to get additional feedback.
We've received a notification about using ApplePayRecurringPaymentRequest in Apple Pay JavaScript for recurring, installment and unscheduled payments.
On the page (https://developer.apple.com/documentation/apple_pay_on_the_web/applepayrecurringpaymentrequest) we found a new object (see whole object below) and there are some questions about using and filling the parameters. I hope you will help us for making understanding.
The ApplePayRecurringPaymentRequest should be sent only in initial operation?
A phrase "required" is meant the parameter is mandatory?
Where can we take the lenth for each field?
Parameter regularBilling is applied for recurring, installment and unscheduled payments?
Parameter trialBilling is applied only for recurring payments?
If we sent the regularBilling or trialBilling Apple Pay will authorize a payment automatically without merchant's actions?
In which cases do we have to fill ApplePayLineItemType with value “pending”?
Parameter amount is whole sum of all payments or current only?
Parameter paymentTiming with value:
9.1 "immediate" - when does payment occur when the transaction is complete and sequent payments will occur only after merchant's actions?
9.2. "recurring" - what the different with "immediate"?
9.3. "deferred" - who and how will provide these payments in the future?
9.4. "automaticReload" - when should we use this value? (in description it's not clear)
If merchant can't provide recurringPaymentStartDate and recurringPaymentEndDate can we leave them blank or not send?
If merchant can't provide recurringPaymentIntervalCount can we leave them blank or not send?
Could you describe the usecase with using deferredPaymentDate?
Could you describe the usecase with using automaticReloadPaymentThresholdAmount?
Is billingAgreement mandatory parameter?
Can billingAgreement contain URL on agreement?
Is managementURL mandatory parameter?
What actions can user make on page via managementURL? And which cases are mandatory?
Is tokenNotificationURL mandatory parameter?
In which cases will we receive a request via tokenNotificationURL?
What kind of params specification should be in tokenNotificationURL (names, lenth, type, mandatory)?
dictionary ApplePayRecurringPaymentRequest
{required DOMString paymentDescription;
required ApplePayLineItem regularBilling;
dictionary ApplePayLineItem
Unknown macro: { ApplePayLineItemType type; DOMString label; DOMString amount; ApplePayPaymentTiming paymentTiming; Date recurringPaymentStartDate; ApplePayRecurringPaymentDateUnit recurringPaymentIntervalUnit; unsigned long recurringPaymentIntervalCount; Date recurringPaymentEndDate; Date deferredPaymentDate; DOMString automaticReloadPaymentThresholdAmount; };
ApplePayLineItem trialBilling;
dictionary ApplePayLineItem;
DOMString billingAgreement;
required DOMString managementURL;
DOMString tokenNotificationURL;};
Hello everyone,
I have a app for Driver to pay in-store (fuel, garage, etc.) and would like to build a feature that can activate Apple Pay from my app so that Driver can use it to pay with POS terminal instead of double click the Home button. Is it possible?
Received required entitlements from apple and as per the below link ios should allow us make third party app as default contactless app in EEA region.
But, Settings app only shows the toggle button to enable/disable Contactless capability. But, not an option to make an app as default contactless app.
com.apple.developer.nfc.hce.default-contactless-app | Apple Developer Documentation
Anyone has faced similar issue? Is above feature released or not, how can we confirm ?
Showing pre-authorization transaction as payment is confusing. It doesn't get removed even if we void the pre-authorization. Has anyone encountered this issue before, and if so, how did you resolve it?
Im encountering an issue with recurring payments using Apple Pay's tokenization system. The temporary token generated for a transaction isn't designed to be reused for recurring charges, which is causing problems for my merchant's monthly plan.
Anyone find a workaround for this? is there a way to disable this temp token for my customers to buy a plan?