Offer rewards cards boarding passes tickets gift cards and more using Wallet.

Wallet Documentation

Posts under Wallet tag

106 Posts
Sort by:
Post not yet marked as solved
1 Replies
212 Views
Can a merchant decide if SCA (EMV 3D Secure) should be applied or not for an Apple Pay transaction? How can the merchant flag this option in the transaction request? Can Apple Pay transactions be executed without SCA? How can we read Apple Pay transaction response in order to understand if SCA was applied and what was the SCA result? Where can a merchant find more details about how to configure Apple Pay SCA transactions on his side? Thanks
Posted Last updated
.
Post not yet marked as solved
0 Replies
210 Views
I am trying to use apple wallet to be detected by a RFID reader, specially a PN5180 with Arduino, running ISO15693 protocol. Is there a way to have this work? I also know that this reader can run the Felica protocol and I think this is the protocol I would have to use, but want make sure that ISO15693 will not work.
Posted Last updated
.
Post not yet marked as solved
0 Replies
164 Views
When a customer takes an action in my app (e.g. taps a button to say that they are about to make a purchase), all I want to do is open the Wallet app for them. I don't need to add anything to it, or show any specific pass. The reason we want to do this is just so we have a timestamp of when they said they were going to make a purchase so that we can reconcile that in their accounting software later.
Posted
by rionline.
Last updated
.
Post not yet marked as solved
0 Replies
223 Views
Hi We have a webshop selling digital giftcars (Google, Netflix, PlayStation, Spotify, IKEA, Zalando and many more). We plan to make an App. But there is the Point 3.1.1. in the App Store Guidelines: Digital gift cards, certificates, vouchers, and coupons which can be redeemed for digital goods or services can only be sold in your app using in-app purchase. Physical gift cards that are sold within an app and then mailed to customers may use payment methods other than in-app purchase. So, why are there outside multiple Apps just selling digital Giftcards (with CreditCard Payment, Paypal..) and no one with an In-App-Purchase? Did Apple not notice this? Or is ist a special Agreement? I mean, if we develop an App and it would be reject - how is that fair? I can list up many Apps; Guthaben.de prezzee startselect eGifter G2A MMOGA Cdkeys instant gaming Is the differnce basing on, if the Merchant has an own webshop also? All these Companies above has it. Any one an answer?
Posted
by aang96.
Last updated
.
Post not yet marked as solved
8 Replies
5.6k Views
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.
Posted
by Henry_33.
Last updated
.
Post not yet marked as solved
0 Replies
216 Views
I have Been Experiencing Issues with my app, i have activated the apple pay suppression entitlement (i have done the process to enable the pass for my app) and it was working for a while, yet recently, the apple pay pop up is displayed when my app is launched, simply the wallet app is automatically launched whilst my app is in the foreground, this issue was first seen with iOS 14. Is there a documentation regarding what was changed on the API ? Thanks in advance. i have been using this code to handle the suppression : `@objc public class ApplePaySupressionHelper: NSObject { private static var tokenPKSuppresion:PKSuppressionRequestToken!; public static func suppress() { if #available(iOS 9, *) { if( PKPassLibrary.isPassLibraryAvailable() && !PKPassLibrary.isSuppressingAutomaticPassPresentation()) { tokenPKSuppresion = PKPassLibrary.requestAutomaticPassPresentationSuppression(responseHandler: { (result) in if result == PKAutomaticPassPresentationSuppressionResult.success { log.debug("Automatic Pass Presentation suppressed") } else { log.debug("Could not suppress Automatic Pass Presentation") } }) } } } public static func enable() { if #available(iOS 9, *) { if( PKPassLibrary.isPassLibraryAvailable() && PKPassLibrary.isSuppressingAutomaticPassPresentation()) { PKPassLibrary.endAutomaticPassPresentationSuppression(withRequestToken: tokenPKSuppresion) print("Automatic Pass Presentation enabled") } } } }`
Posted Last updated
.
Post not yet marked as solved
0 Replies
190 Views
Hi i wonder if this is a known issue in the latest iOS 15.4 betas. In one beta (4 versions ago) it worked to open wallet with quickly double pressing the power button. Since now three versions (currently 15.4 (19E241)) this does no longer work on my iPhone 13 pro, even through wallet is configured to do that in SETTINGS. Any ideas to reactivate this?
Posted
by Birdie1.
Last updated
.
Post not yet marked as solved
1 Replies
1.4k Views
Hello, In wwdc 2021 keynote 7th june video on Youtube (https://www.youtube.com/watch?v=0TD96VTf0Xs) there was a mention of unlocking doors via apple wallet. For home, it uses home keys which is part of the homekit framework. This is simple to understand since there is enough documentation on adding support to our hardware. For office though we can't find any documentation. What are the requirements on the hardware/firmware side? I'm assuming we can't use homekit for offices since each organisation will have a few admins but 100+ employees. Admin cannot be bothered with adding so many appleids one by one as given in homekit tutorial. We are a smart access control company that manufacturers bluetooth and nfc based hardware for unlocking doors. These doors can be unlocked with iphone through our app over ble as of now. We would like to add functionality to simply tap the phone/watch to our hardware to unlock the door. As mentioned in the wwdc21, other brands like proxy, hid and salto seems to have already partnered up with apple and we would like to join that list
Posted Last updated
.
Post not yet marked as solved
6 Replies
6.2k Views
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!
Posted
by killdurst.
Last updated
.
Post not yet marked as solved
2 Replies
446 Views
Hi, With the recent iOS beta release there is an announcement that tap to pay will be introduced with limited partners and then rolled out later this year. What are the criteria to participate in this program in the early stage since our current product relay on mobile based ticketing where we want to allow our customers to make fastest possible payment using iOS devices and vendors to accept the payment easiest possible way.
Posted Last updated
.
Post not yet marked as solved
1 Replies
463 Views
I'm trying to build my first Apple Wallet Pass and I've been following the tutorial here: https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/PassKit_PG/YourFirst.html I get to this point but it fails: To sign and compress the pass, use the signpass tool to sign the pass package. In Terminal, run the following commands: cd ~/Documents ./signpass -p Lollipop.pass These commands create a signed and compressed pass named Lollipop.pkpass in the Documents folder. If the signpass command fails, make sure you are using your correct pass type identifier and check that the pass.json file contains valid JSON. Here is the error I get from Terminal: 2021-10-21 10:44:11.678 signpass[1461:45126] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'data parameter is nil' *** First throw call stack: ( 0   CoreFoundation                      0x000000019194f838 __exceptionPreprocess + 240 1   libobjc.A.dylib                     0x00000001916790a8 objc_exception_throw + 60 2   Foundation                          0x00000001926962ec -[_NSJSONReader init] + 0 3   signpass                            0x00000001000fe044 +[PassSigner passTypeIdentifierForPassAtURL:] + 124 4   signpass                            0x00000001000fe4d8 +[PassSigner signPassWithURL:certSuffix:outputURL:zip:] + 1124 5   signpass                            0x00000001000fdc9c main + 864 6   libdyld.dylib                       0x00000001917f1430 start + 4 ) libc++abi: terminating with uncaught exception of type NSException zsh: abort      ./signpass -p Lollipop.pass Any help would be appreciate as I would love to create a Wallet Pass for my customers, but can't seem to get past this error. Thank you, Darren
Posted
by dgreensp.
Last updated
.
Post not yet marked as solved
0 Replies
169 Views
While Implementing ApplePay, I noticed that each of the pre-defined PKPaymentNetwork (.visa, .amex, etc) are static let properties defined within a struct. In my opinion, this might cause misunderstanding, since we can initialize properties differently than Apple defines, for instance: PKPaymentNetwork(rawValue: "amex") will successfully create an "amex" property. The thing here is that even though we successfully created it, it will be different than the defined .amex (If we execute PKPaymentNetwork(rawValue: "amex") == PKPaymentNetwor.amex will be FALSE, since PKPaymentNetwork(rawValue: "AmEx") == PKPaymentNetwor.amex is TRUE). In other words: By using a struct, we can create instances of PKPaymentNetwork that will be unusable. My suggestion is to replace this struct with a enum, something like: enum PKPaymentNetwork: String, etc { case amex = "AmEx" } In this case, if a developer wants to instantiate a PKPaymentNetwork(rawValue: "amex" | "Amex" | "AMEX" ) will get NIL instead of an instance.
Posted
by Mauroat22.
Last updated
.
Post not yet marked as solved
0 Replies
297 Views
After replacing the iphone with a new one (and restoring from the old one), the loyalty cards stopped updating themselves. This means that notifications about changes on the cards stopped coming as well. After investigating, we found out that it's an unchanged DeviceID on the card issuer's side (and PushID). If I turn the automatic card updates off and on again in my wallet, my new DeviceID registers and notifications start working again (with new PushID). Question - is there any way for the pass issuer side to automatically detect that the pass holder has changed devices (has a new DeviceID or how to receive new PushID)?
Posted
by mhostak.
Last updated
.
Post not yet marked as solved
0 Replies
172 Views
There is a mobile application, when you click on the button, it adds to the discount card. The same card can be added an unlimited number of times. How to make it so that the apple wallet gives information to the mobile application that it has a card?
Posted
by Wrask.
Last updated
.
Post not yet marked as solved
1 Replies
390 Views
Hello, Currently I use typical ID cards to unlock doors in my institution using NFC. I am trying to manipulate the Pass.json file to allow for NFC Door Unlocking. Here is what I think I will be using: {"nfc":{"message":"EXAMPLE","encryptionPublicKey":"EXAMPLE"}} What I am trying to do is extract the NFC data from my ID card and use it for the NFC message in my Pass.json. If there is any help on how to extract this it would be greatly appreciated. Thanks
Posted Last updated
.
Post not yet marked as solved
1 Replies
648 Views
Recently I noticed that the links of the back of wallet passes, that companies has put on their passes - so as to direct to core information - were no longer active, ie: not blue and underlined, and don't automaticlly direct to the URL address
Posted Last updated
.
Post not yet marked as solved
0 Replies
179 Views
I'm planning to create an integrated app that enable to show your transit fees and stations which you get on/off at. I could scratched out parts of my app that analyze and parse values that NFC bundled transit card stored. However I could not find out the way how to use some data stored in transit card of iOS Wallet app. I can see transit information in the Wallet app which I want to use, also there are some document which might shows possibility I could handle these data, https://developer.apple.com/documentation/passkit/pkstoredvaluepassproperties . I'm not really sure it is possible to use(read) these data in my iOS app via using PassKit. If you find some apps which using kind of data, could you please share me some existing app link, or tell me guides or documents which shows roughly how to use PassKit classes / methods.
Posted Last updated
.
Post not yet marked as solved
0 Replies
238 Views
May I know what type of situation we get this following error in production environment when we test proper PAN/card ? func addPaymentPassViewController(_ controller: PKAddPaymentPassViewController, didFinishAdding pass: PKPaymentPass?, error: Error?) { // Error is PKAddPaymentPassError.systemCancelled }
Posted
by NickMa.
Last updated
.
Post not yet marked as solved
1 Replies
2.2k Views
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 &#9;&#9;&#9;&#9;$apnsServer = 'tcp://api.push.apple.com:443/3/device/'; &#9;&#9; &#9;&#9;&#9;&#9;$privateKeyPassword = '<password>'; &#9;&#9;&#9;&#9;$message = 'test'; &#9;&#9;&#9;&#9;$deviceToken = &#9;&#9;&#9;&#9;'<token>'; &#9;&#9;&#9; &#9;&#9;&#9;&#9;$pushCertAndKeyPemFile = 'my.pem'; &#9;&#9;&#9;&#9;$stream = stream_context_create(); &#9;&#9;&#9;&#9;stream_context_set_option($stream, &#9;&#9;&#9;&#9;'ssl', &#9;&#9;&#9;&#9;'passphrase', &#9;&#9;&#9;&#9;$privateKeyPassword); &#9;&#9;&#9;&#9;stream_context_set_option($stream, &#9;&#9;&#9;&#9;'ssl', &#9;&#9;&#9;&#9;'local_cert', &#9;&#9;&#9;&#9;$pushCertAndKeyPemFile); &#9;&#9;&#9;&#9;$connectionTimeout = 20; &#9;&#9;&#9;&#9;$connectionType = STREAM_CLIENT_CONNECT | STREAM_CLIENT_PERSISTENT; &#9;&#9;&#9;&#9;$connection = stream_socket_client($apnsServer, &#9;&#9;&#9;&#9;$errorNumber, &#9;&#9;&#9;&#9;$errorString, &#9;&#9;&#9;&#9;$connectionTimeout, &#9;&#9;&#9;&#9;$connectionType, &#9;&#9;&#9;&#9;$stream); &#9;&#9;&#9;&#9;if (!$connection){ &#9;&#9;&#9;&#9;echo "Failed to connect to the APNS server. Error no = $errorNumber<br/>"; &#9;&#9;&#9;&#9;exit; &#9;&#9;&#9;&#9;} else { &#9;&#9;&#9;&#9;echo "Successfully connected to the APNS. Processing...</br>"; &#9;&#9;&#9;&#9;} &#9;&#9;&#9;&#9;$messageBody['aps'] = array('alert' => $message, &#9;&#9;&#9;&#9;'sound' => 'default', &#9;&#9;&#9;&#9;'badge' => 2, &#9;&#9;&#9;&#9;); &#9;&#9;&#9;&#9;$payload = json_encode($messageBody); &#9;&#9;&#9;&#9;$notification = chr(0) . &#9;&#9;&#9;&#9;pack('n', 32) . &#9;&#9;&#9;&#9;pack('H*', $deviceToken) . &#9;&#9;&#9;&#9;pack('n', strlen($payload)) . &#9;&#9;&#9;&#9;$payload; &#9;&#9;&#9;&#9;$wroteSuccessfully = fwrite($connection, $notification, strlen($notification)); &#9;&#9;&#9;&#9;$apple_error_response = fread($connection, 6); &#9;&#9;&#9;&#9;if (!$wroteSuccessfully){ &#9;&#9;&#9;&#9;echo "Could not send the message<br/>"; &#9;&#9;&#9;&#9;} &#9;&#9;&#9;&#9;else { &#9;&#9;&#9;&#9;echo "Successfully sent the message<br/>"; &#9;&#9;&#9;&#9;} &#9;&#9;&#9;&#9;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)) { &#9;&#9;echo "ok"; } else { &#9;&#9;echo "not ok ".error_reporting(E_ALL); } socket_close($apns); fclose($apns);
Posted
by juljul.
Last updated
.
Post marked as solved
1 Replies
458 Views
Dear Colleagues. Could you please tell me if it is possible to implement dynamic qr code in apple wallet? If it is possible to do this, then could not provide the documentation. If possible, could you tell me how.
Posted
by Wrask.
Last updated
.