Hi, thanks for visiting!

My name's Sam Kelleher, and I am a Senior Full-Stack Web Developer / Software Architect based in London. This website mostly contains a sample of work from my portfolio, tips, and best practices for building web applications.

Dynamic iOS Passbook with notifications

Dynamic iOS Passbook with notifications

In aid of Apple's WWDC 2014 in San Francisco, it made perfect sense to socialise the with the hundreds of other attendees by using the Passbook feature on iOS as a business card to stay in touch.

Using an iPhone, any other iPhone user can use the Passbook app to scan the code presented within my own Passbook (see screenshot above). This then automatically downloads a copy of the pass containing my business card information. The system is tracking where the user scanned the code (i.e. so the system knows if they have scanned directly from me) and can then adjust the content of the pass itself. For example, a passbook I display publicly doesn't contain any sensitive information like my personal phone number or location, while if I have given out my passbook personally - then I'll assume I want them to have this information and it is included in the passbook automatically.

When a persons scans my pass, their device creates a subscription to it using the Apple Push Notification Service, this subscription is unique to each pass and device. Thus I am able to identify (anonymously) each pass subscription, and also identify when those individuals have passed on the pass to others (using the inbuilt sharing functionality inside Passbook, or letting another user scan the pass again). Then once the conference is done and finished, I am able to send specific and customised push update messages to each subscriber.


Update April 2016

Since I've moved this website to a Node based React website (from C# .NET); I haven't replaced the passbook system I had built. So the demo pass I've created no longer works until I re-add the system in Node (will make an interesting write up).


Update October 2024

Rereading this back years later, the Apple Developer API for Apple Wallet Passes has not changed once, some extensions were added, but the schema has never been modified since launch. Which would be difficult for them to do now it has slow yet widespread adoption worldwide by airlines and travel services.  That said the service is ripe for innovation, as the passes contain plain text personal information which is easily readable.

In Category Experiments/Tags   C#MobileiOS