Post not yet marked as solved
Can a developer write an app that has access to Apple Pay transaction history? This would be good for a budgetary app to track certain purchase types
Post not yet marked as solved
Apr 13 13:57:33 --- last message repeated 1 time --- Apr 13 13:57:33 Droid-M Passbook[3013]: Failed to add pass: 'file:///Users/walmart/Downloads/pass-new.pkpass' Error Domain=PKPassKitErrorDomain Code=1 "The pass cannot be read because it isn’t valid." UserInfo={NSUnderlyingError=0x7967c5e0 {Error Domain=PKPassKitErrorDomain Code=1 "Manifest signature did not verify successfully" UserInfo={NSLocalizedDescription=Manifest signature did not verify successfully}}, NSLocalizedDescription=The pass cannot be read because it isn’t valid.}.
Post not yet marked as solved
I am developing an iOS app where I have to generate QR code, share it with users through a web link.When the user clicks on the web link two options needs to given1. Download as pdf2. Add to Apple WalletI need help to develop the above piece of code specifically generating a QR code which is downloadable through a web link and adding to Apple Wallet.
Post not yet marked as solved
As I'm new to Apple, I wanted to integrat passKit API to my site but unfortunitely not able to access iOS provisioning portal to create passbookCertId and there are lot more things I have to do with PassKit.Please help me to figure out of this situation.Thanks
I am looking for the documentation regarding how "personalized pass" looks like.I would like to know what keys are supported in pass.json for a personalized pass ?
Post not yet marked as solved
I'm using the php code below to serve the pkpass file to the users...<?php
$pkpass_file = 'passwebservice/output/abc123.pkpass';
header("Pragma: no-cache");
header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/vnd.apple.pkpass");
header('Content-Disposition: attachment; filename="abc123.pkpass"');
clearstatcache();
$filesize = filesize($pkpass_file);
if($filesize)
header("Content-Length: ". $filesize);
header('Content-Transfer-Encoding: binary');
if (filemtime($pkpass_file)) {
date_default_timezone_set("UTC");
header('Last-Modified: ' . date("D, d M Y H:i:s", filemtime($pkpass_file)) . ' GMT');
}
flush();
readfile($pkpass_file);
?>On Safari in iOS, the pkpass can be downloaded and added to Wallet successfully.But on Chrome in iOS, it says "Sorry, your Pass cannot be installed to Passbook at this time."A similar issue was reported at Google at https://productforums.google.com/forum/#!topic/chrome/mzoEVvqi6rsMay I know if Passes can be downloaded from Chrome in iOS and added to Apple Wallet?Is there an official reason if it can't be done? Thanks!
Post not yet marked as solved
I'm having a hard time finding in the Wallet documentation what the net effect would be when the production signing certificate for a Pass Type ID w/ NFC expires out. I'm pretty sure any attempts to install a pkpass signed by an expired certificate will fail, but what I'm a bit unclear about is whether & how users who have already installed the pkpass previously while the signing certificate was valid would be affected. Will this already installed NFC pkpass signed with the expired certificate no longer be able to provide its function & so push notifications should be sent to attempt to update the pkpass with a new one that is signed with a currently valid certificate? Does the pass get removed automatically from Wallet or is the user notified in some way that the pkpass is expired due to the signing certificate?If anyone can point me at the documentation that covers this, I'd appreciate it.
Post not yet marked as solved
Hi!I am working for a Financial Institution. We would like to give our customers the ability to add one of our credit or debit to their iOS device wallet, but only if the card has not been added to the device yet.We have obtained the necessary entitlement fromApple, and I have reviewed the documentation that describes how to provision a credit or debit card for Apple Pay.To start, we actually just want to add the "Add To Wallet" button next to our cards inside the mobile app. For that we, of course, want to check if the card was already added. The intention is to launch the Wallet via PKPassLibrary.OpenPaymentSetup() after that - no automatic adding of cards for now.From the documentation provided to us by Apple, it seems obvious that I can invoke the following API call:-[PKPassLibrary canAddPaymentPassWithPrimaryAccountIdentifier:]Question 1: Can this be tested with one of Apple's sandbox card (provided here: https://developer.apple.com/apple-pay/sandbox-testing/) What I am essentially asking: can I add a sandbox card to the wallet for ApplePay and then get a "false" from the canAddPaymentPassWithPrimaryAccountIdentifier call for that sandbox card (since it was already added)?Question 2: Is there a simple way to retrieve all current PKPaymentPasses for the device, or do I need to implement the entire process that generates the payload to instantiate a PKPaymentPass as in what I would need for the PKAddPaymentPassRequest call? I assume there is no shortcut to query the API for an already added card by PAN?Question 3: Reading more about this topic, I found that I could potentially also use PKPassLibrary.containsPass(pass: PKPass). Again, I would have to pass an instance of PKPass. I assume that I can only do that with the fully generated payload as outlined in the documentation for the PKAddPaymentPassRequest call - is that correct?I appreciate any help anybody can provide on this subject.
Post not yet marked as solved
Does anyone have expereince for applying NFC enabled pass? What's the process looks like? I have send couple requests through http://developer.apple.com/contact/passkit. but get no reply. Same thing happen to our NFC reader vendor. Is there any other channel to get NFC enabled certificate other than this request form web page.
Post not yet marked as solved
I need someone who used Apple Wallet PassKit before. I keep getting an error from the signpass process which tells me that "Couldn't find an identity for ***.com.xxxx.xxxx" (my pass type id), however i checked that there is nothing wrong with the json files and I've already added the certification to my keychain. Urgent Help plz!!! I really appreciate it.
Post not yet marked as solved
Hi,From my understanding of the Apple developer agreement any business that uses the Apple Wallet service needs to set up their own Pass Type ID. Is this still true?Pass Type ID Usage and RestrictionsYou may use the Pass Type ID only for purposes of digitally signing Your Pass for use with Wallet and/or for purposes of using the APN service with Your Pass. You may distribute Your Pass Type ID as incorporated into Your Pass in accordance with Section 2 below only so long as such distribution is under Your own trademark or brand. To the extent that You reference a third party’s trademark or brand within Your Pass (e.g., a store coupon for a particular good), You represent and warrant that You have any necessary rights. You agree not to share, provide or transfer Your Pass Type ID to any third party (except for a Service Provider and only to the limited extent permitted herein), nor use Your Pass Type ID to sign a third party's pass.There is an online SAAS company that seems to be using a shared certificate for all of their clients and this is causing problems with some of my clients thinking I have mislead them into opening an Apple developer account to create their own Pass Type ID's.Can somone shed some light on this please?
Post not yet marked as solved
I'm in the process of exploring using Passkit to host and distribute our University Digital ID card. I understand that Apple has worked with a few Universities in this Vertical and that there is a means to apply for this program. The only issue is that we don't have a one card solution, and our cards aren't distributed through Blackboard. We would like to handle this ourselves though with NFC readers deployed at strategic locations throughout campus (i.e. the Library, shared printers (Where students are required to swipe their ID's to release print jobs) as well as Dining locations, where they use their ID cards for a declining balance.Is there a way to work with Apple to get an NFC certificate for this using the system I described (barring having to work with Blackboard)?
Post not yet marked as solved
This documentation mentions a One-Line button: https://developer.apple.com/wallet/Add-to-Apple-Wallet-Guidelines.pdfWhen I download the Badges and Guidlines from here: https://developer.apple.com/wallet/there is only a Two-line button. Where is the One-line button?Is it deprecated?
Post not yet marked as solved
I already have a QR code (saved as an image) that I want to use for an apple wallet pass. I don't want there to be any other barcodes on the pass, is this possible through passkit web service?
Post not yet marked as solved
Hey, we are trying to implement In-App provisioning of our bank card. We have registered with Apple ApplePay and we have: Added the entitlement to our development provisioning profile
Updated project entitlements to include the apple pay provisioning key with value "com.apple.developer.payment-pass-provisioning " = true
Added Apple Wallet capabilities to the target (not sure if this is needed?)
Created a PKAddPaymentPassRequestConfiguration with some dummy data.
Passed the above configuration to the init for PKAddPaymentPassViewController
But all we get is a failing init and a nil value for the controller. No console message, no errors, no calls back to the associated delegate.
How to debug what is going wrong? Am I missing something???
Post not yet marked as solved
I am working for the Company which produces smart lock devices. We want our lock device to support Apple VAS protocol inside. Then our customers just be able to use their smartphones with "Apple Wallet" and our digital key as Wallet Pass to unlock our devices. The problem here is that official spec. on Apple VAS protocol is confidential. I find out that some Companies like ELATEC or IDTech which produces RFID and NFC readers implements Apple VAS in their devices and have so called "Apple’s Value-Added Services (VAS) Certification". But what is an official way to do that? How to get specification of Apple VAS protocol?
Post not yet marked as solved
Hello there,
Am a developer with Apple,my request is about using Apple Pay wallet as one of my favorite wallet for payments in my account.
Please advice me,
thanks in advance.
Post not yet marked as solved
Hi, everyone!
I'm trying to do push notification for apple wallet pass via PHP. My code (in 2 variants) is below. According to guidelines - https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/PassKit_PG/Updating.html I should get the response in json format, but i don't. Anyway in the server logs I see the response 200. Any notification doesn't appear on the device.
I also tried to push notification via command line tools, but also faced problems - the guideline - https://developer.apple.com/documentation/usernotifications/sending_push_notifications_using_command-line_tools give info only about push notification for your own app, not for the Wallet.
I will be very grateful for any responses.
№1
				$apnsServer = 'tcp://api.push.apple.com:443/3/device/';
		
				$privateKeyPassword = '<password>';
				$message = 'test';
				$deviceToken =
				'<token>';
			
				$pushCertAndKeyPemFile = 'my.pem';
				$stream = stream_context_create();
				stream_context_set_option($stream,
				'ssl',
				'passphrase',
				$privateKeyPassword);
				stream_context_set_option($stream,
				'ssl',
				'local_cert',
				$pushCertAndKeyPemFile);
				$connectionTimeout = 20;
				$connectionType = STREAM_CLIENT_CONNECT | STREAM_CLIENT_PERSISTENT;
				$connection = stream_socket_client($apnsServer,
				$errorNumber,
				$errorString,
				$connectionTimeout,
				$connectionType,
				$stream);
				if (!$connection){
				echo "Failed to connect to the APNS server. Error no = $errorNumber<br/>";
				exit;
				} else {
				echo "Successfully connected to the APNS. Processing...</br>";
				}
				$messageBody['aps'] = array('alert' => $message,
				'sound' => 'default',
				'badge' => 2,
				);
				$payload = json_encode($messageBody);
				$notification = chr(0) .
				pack('n', 32) .
				pack('H*', $deviceToken) .
				pack('n', strlen($payload)) .
				$payload;
				$wroteSuccessfully = fwrite($connection, $notification, strlen($notification));
				$apple_error_response = fread($connection, 6);
				if (!$wroteSuccessfully){
				echo "Could not send the message<br/>";
				}
				else {
				echo "Successfully sent the message<br/>";
				}
				fclose($connection);
?>
№2
$apnsCert = 'my.pem';
$push_token = '<token>';
$passIdentify = '<pass identify>';
$payload['aps'] = array('alert' => 'Oh hai!', 'badge' => 1, 'sound' => 'default');
$output = json_encode($payload);
$msg = chr(0) . pack('n', 32) . pack('H*', $push_token) . pack('n', strlen($output)) . $output . pack('n', strlen($passIdentify)) . $passIdentify;
$streamContext = stream_context_create();
stream_context_set_option($streamContext, 'ssl', 'local_cert', $apnsCert);
$apns = stream_socket_client("api.push.apple.com:443/3/device/", $error, $errorString, 2, STREAM_CLIENT_CONNECT, $streamContext);
if (!$apns)
exit ("APNS Connection Failed: $error $errorString" . PHP_EOL);
var_dump($apns);
if(fwrite($apns, $msg)) {
		echo "ok";
} else {
		echo "not ok ".error_reporting(E_ALL);
}
socket_close($apns);
fclose($apns);
Post not yet marked as solved
G'day.
At my office the doors are locked with an NFC reader. We carry around a little NFC tag on our key chains which will read out a number and this then will open the door if the number matches a number in the database.
I am tired of carrying around the tag, people keep loosing it, forgetting it and it would be nice to open the door using a Phone - which we tend to always have on us.
So I used a credit card which is NFC enabled to readout the NFC information, added this number to the database and can now open doors using my credit card. This is pretty cool. If I forget my keys (most likely they will be on the desk but silly me left the desk without them), I may have my wallet with me.
Then I tried Wallet.app on my iPhone and select the same credit card. However the door doesn't open. When looking in the door software I noticed that the tags will always transmit the same number. So does my credit card. However Wallet.app will read out 4 readings (or maybe just one very long one) and they are always different. So I can not make them match with the door database.
Any ideas how to make this work? Can I give somehow wallet.app an NFC number which I can then add to my door database? Or how come the credit card and the very same one in wallet.app don't match?
Thanks for your help! Would be neat if I could make this work out. This will make a lot of people happy at my office!
Cheers!
Post not yet marked as solved
We just updated our certificate and since then it seem that our .pkpass cannot be open
Is there any tool to validate what wrong with a given pkpass? Or can I send it / attach it to this post to let you check if you see anything wrong
I think it the certificate (since it was working before), but at the same time, im not sure since it's not the first time we do that but it's the first time this problem happen
The .pkpass cannot be add to the wallet, when you download it on safari you get the error "Safari cannot download this type of file"
I could send you one of the pkpass but I haven't see a way to attach it with this question