Creating digital passes for Rotary Germany
I volunteered to design and implement the whole digital infrastructure needed for digital membership passes.
My App was featured on Rotarys blog and a magazine.
How it started
When my father complained, about the many plastic cards in his physical wallet, i wanted to code a solution. The solution should be digital and as he is an iPhone user it should be in the Apple Wallet App. One of his plastic cards was his Rotary membership card. And because Rotary is pretty big and has some impact in the world, i thought making the digital pass for Rotary would be the biggest challenge. I was definitely right on that ;)
What did i create
The best way to make this accessible to many with a good UX, is an App. This is because adding a pass to things like Apple Wallet is most intuitive on a native iOS App. So i started with a tech stack of Swift, SwiftUI, Node.js and Express.js to deliver an experience where the user would just have to enter his Rotary member information like first name, last name, member id, ... and then he could create the pass and add it to Apple Wallet. I published the App (RO.Pass)↗ on the App Store and many members are already using it. Currently i am also actively working on an Android version. Through its high demand the App was featured by the official Rotary Blog↗ and in a monthly Rotary magazine.
The challenges
Creating something for Rotary is very challenging. For once because of legal rights. I had to make sure i comply with all their guidelines with logo usage to be able to publish to the App Store. And second i had to code everything from scratch and could not use some database for user information because Rotary values their members privacy. And by far the biggest challenge was the creation of dynamic Apple Wallet Passes, or more technically speaking a .pkpass file. It is far more complex than one could imagine. The pass has to be certified and signed a server but ultimately has to be added on the device locally. The device locally then has to connect to my web-service so the pass can receive push notifications. This meant a technical challenge that i (to be honest) didn't expect. It also shows that Apple values Privacy. Those steps with signing and certifying the Pass is required so no maleware is installed on an Apple device.
But after one or two days heads down, i finally figured it out. To help others with this i created an article: Creating a web-service for Apple-Wallet passes with Node.js↗ on how to solve the problem, so they wouldn't encounter this frustration 😆. One last small challenge was, that at the time i was 15 which meant i had to upload the App via my parents account. So thats it. If you are interested, contact me and check out RO.Pass↗.