005 - Apple Wallet Passes End-to-End Implementation - Swift IOS & NodeJS

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 ก.ย. 2024

ความคิดเห็น • 113

  • @AlexanderCerutti
    @AlexanderCerutti ปีที่แล้ว +33

    That's really awesome to see passkit-generator being used in a video tutorial. Right now I feel really satisfied of what I started 4 years ago and I'd like to thank you for using it!
    Just a couple of things: first of all, Apple says that it is not required to save the pkpass file to a cloud storage or save it at all, because it is just a data representation. So, it could be just served as-is. But, I mean, everyone if free to do as it wishes :D
    Second thing, authenticationToken is used when webServiceUrl is provided. Apple Wallet will ping your webServiceUrl, at some known endpoints, with the authenticationToken to setup the notification system / invalidation / whatever. So, in the scope of your video, they are not needed at all, because your cloud function doesn't provide support for these endpoints.
    For the rest, great video! I'm open to any feedback and things to get improved on the library.
    Have a great day, dude!

    • @scriptpapi
      @scriptpapi  ปีที่แล้ว +1

      Thank you sir for this awesome library 🙏without it I would have no idea how to generate a Wallet pass or spend months figuring it out.
      You're right about the cloud storage piece. I did it that way because for me it is easier than returning the pass data in the API response. Just another i am yet to learn how to do.
      and thank you also for the clarification on the authenticationToken and webServiceUrl! that makes a lot of sense.

    • @AlexanderCerutti
      @AlexanderCerutti ปีที่แล้ว

      @@scriptpapi You are welcome! Great job, keep up! 💪

    • @nimrsawafta1682
      @nimrsawafta1682 ปีที่แล้ว +2

      Bro you are saved me a lot of work, you are amazing

    • @RamArya-uh3oi
      @RamArya-uh3oi ปีที่แล้ว

      Lovelyl. like
      Ooi
      K

    • @RamArya-uh3oi
      @RamArya-uh3oi ปีที่แล้ว

      Lovelyl. like
      Ooi
      K on

  • @setorblagogee6481
    @setorblagogee6481 3 หลายเดือนก่อน +2

    This video was GOLD! Cut down the time I would have needed for this task by a lot.

  • @FaysalBDev
    @FaysalBDev ปีที่แล้ว +7

    it was a nice tutorial, up until you skipped the backend programming phase...

  • @RandomHero64209
    @RandomHero64209 ปีที่แล้ว +4

    This is a great resource but it’s totally possible to avoid writing Swift and to use a fullstack framework. I was tasked with Apple Wallet ID/Business Cards as a POC - I’m using Nextjs, TypeScript, Node, and AzureAD for enterprise org only auth. The pkpass itself, while it does have a unique mime type, is just a zip file containing a manifest json file and other assets. I initially used Sanity as a headless CMS for pass storage and allowed users to click “download my pass” but have since switched to Prisma and Postgres. Anyway, if on an iPhone, downloading the pkpass would open it as expected. On my Dell laptop for however, I have to use pkpass viewer software through the windows store to pull it up. Either way, there are a lot of ways to slice n dice pkpass generation/handling. Great video though

  • @hairyharry3228
    @hairyharry3228 ปีที่แล้ว +2

    Most detailed video of Apple Wallet Pass implementation.

  • @nimrsawafta1682
    @nimrsawafta1682 ปีที่แล้ว

    I love how you jumbed from light mode to dark mode in your room

  • @VictorRodriguezvmrmedia
    @VictorRodriguezvmrmedia ปีที่แล้ว +2

    FANTASTIC work man! How would I update an existing pass with new information and not have to redownload? In my use case, I would need to update an existing pass, rather than generating a new one and having to downloaded again.
    Keep this coming. Great stuff! THANK YOU!

    • @AlexanderCerutti
      @AlexanderCerutti 9 หลายเดือนก่อน

      I know I'm a bit late since you asked this question, and you probably already figured it out by your own, but a new generation of a pass is needed for passes to be updated. Zips are requested by Apple Wallet to your server when webServerUrl and authenticationToken are specified and you have a webserver that is compliant with Apple Wallet services, especially for what concerns the update endpoint.

  • @cesarparisot4488
    @cesarparisot4488 ปีที่แล้ว

    Great job !! Sure it could be an app on the App Store, that gives me design ideas already 😂

  • @pandiyanmadhan5724
    @pandiyanmadhan5724 2 หลายเดือนก่อน

    new.pkpass file craeted successfully, but if i am dragging to to iPhone nothing will happen, any one please help me

  • @pandiyanmadhan5724
    @pandiyanmadhan5724 2 หลายเดือนก่อน

    And i want to know where i need to get the authenticationToken

  • @atlxzsx
    @atlxzsx ปีที่แล้ว

    is it absolutely possible for you to make a tutorial on how to implement a "Add To Wallet" for debit/credit cards?

  • @nicoschuck7
    @nicoschuck7 ปีที่แล้ว +1

    When I double click on the certificate, it is added to "all objects" of my keychain. How did you add this to "my certificates"? Because you can choose .p12 export only on "my certificates".

  • @rachitsherawat
    @rachitsherawat ปีที่แล้ว +1

    great video !
    can we develop pkpass for other companies as project using our own developer account ?

  • @TobiasHerden
    @TobiasHerden 8 หลายเดือนก่อน

    Great tutorial... thank you

  • @peteralderson532
    @peteralderson532 ปีที่แล้ว

    Really nice, but Apple seem to have removed the pass Sample Models - can you suggest anywhere else to find them ?

  • @RifleyPL
    @RifleyPL 17 วันที่ผ่านมา

    If someone is struggling with openSSL certs, (Global default library context, Algorithm (RC2-40-CBC : 0), Properties ()) give -legacy flag

  • @Luca-w7n
    @Luca-w7n 4 วันที่ผ่านมา

    Is it possible to automatically generate a pass when a customer registers a product on a website with specific information? Then, a pass for Apple Wallet should be automatically generated with the specific information which can then be added to the wallet by the customer.

    • @scriptpapi
      @scriptpapi  4 วันที่ผ่านมา

      @@Luca-w7n yeah just call the generate pass endpoint when the product is registered (as opposed to when the user clicks on “add to wallet”), and then store the pass in your database. Then when the user clicks on “add to wallet”, you will just trigger a download of the already generated pass.
      I do this in one of my apps, it helps reduce the loading time for when the user clicks on the “add to wallet” button.

    • @Luca-w7n
      @Luca-w7n 4 วันที่ผ่านมา

      @@scriptpapi Thank you very much :) do you have a video online regarding this topic?

  • @luquipe4938
    @luquipe4938 6 หลายเดือนก่อน

    you saved my life! thanks. I'm implementing it on react js. I haven't ended yet, is there any way to avoid the google cloud part?

    • @scriptpapi
      @scriptpapi  6 หลายเดือนก่อน

      You can have the API respond directly with the pass data to the client instead. Like a download link.

  • @vimalkumar-rider
    @vimalkumar-rider 7 หลายเดือนก่อน

    I tried with all steps, but it is not working, please help me.
    😭😭😭😭😭😭😭😭😭😭😭😭😭😭😭😭😭😭😭😭😭😭😭😭

  • @hazemturki
    @hazemturki ปีที่แล้ว

    Amazing video

  • @esneydersaavedra2923
    @esneydersaavedra2923 9 หลายเดือนก่อน

    Alguien tiene el codigo completo del index es que hay partes del codigo que el no muestra y me genera error el codigo ..Gracias @guiónpapi

  • @Morbe17
    @Morbe17 3 หลายเดือนก่อน

    Common Name for the CSR (Certificate Signing Request) MUST be either blank OR the passTypeIdentifier. Don't just put something random.
    Other wise; your pass wont be downloadable in Safari browsers.

    • @AlexanderCerutti
      @AlexanderCerutti 2 หลายเดือนก่อน

      That's new to me... and I created passkit-generator. Would you like to contribute by opening an issue to Github, in order to keeping track of this?

    • @AlexanderCerutti
      @AlexanderCerutti 2 หลายเดือนก่อน

      In the wiki guide, I let people put a semi-custom thing, which is actually based on the CSR generate by KeychainAccess and it always worked. So I'm actually wondering if you are right of it there's something else that didn't let you open your pass...

  • @JoaquinLeon-g4n
    @JoaquinLeon-g4n 11 หลายเดือนก่อน

    how long does the certificate lasts? like how long does the pass will last?

    • @JoaquinLeon-g4n
      @JoaquinLeon-g4n 11 หลายเดือนก่อน

      if i want to create a storecard, but i dont have an apple developer membership, if i take the membership just to get the certificate and i dont pay it after the first year will the pass be accessible still?

  • @SquareTrack
    @SquareTrack ปีที่แล้ว

    كيف ممكن نتواصل معاك أخ نواف؟ اذا كنت ممكن تعملنا ربط بمقابل

  • @DhanushantBishnoiDSB
    @DhanushantBishnoiDSB 11 หลายเดือนก่อน

    Hello ​ @scriptpapi
    If someone dont have mac and he uses someone else system to generate Certificate will it work properly?

    • @AlexanderCerutti
      @AlexanderCerutti 10 หลายเดือนก่อน

      In Generating Certificates page, there's an alternative section for generating them through terminal and entirely via OpenSSL!

  • @mo9a7i
    @mo9a7i ปีที่แล้ว

    نايس، دود

  • @mileslow4908
    @mileslow4908 11 หลายเดือนก่อน +1

    This man is jesus

  • @jhonprieto7486
    @jhonprieto7486 ปีที่แล้ว +6

    Is a good video. Maybe do you know how can i create wallet pass and use the NFC functions? For example bus pass ore train pass. Great content, you should continue with more videos! Cheers

    • @scriptpapi
      @scriptpapi  ปีที่แล้ว +5

      Thanks Jhon. The NFC bit is a great idea for a video, I will definitely create a video about it someday.

    • @saim-khan
      @saim-khan ปีที่แล้ว +3

      @@scriptpapi Absolutely! This video was great, everything was so well explained. As Jhon said, a video on NFC, maybe how to assign NFC values to passes in a similar way would be amazing :)

    • @Noname-wu8cc
      @Noname-wu8cc ปีที่แล้ว +1

      @@scriptpapi great! Can’t wait for nfc passes tutorial!

    • @AlexanderCerutti
      @AlexanderCerutti ปีที่แล้ว +2

      Generating an NFC pass is quite tough because it requires a validation step from Apple itself, which requires you to be a company and requires you to provide a a list of NFC terminals that your pass will support. Then it will emit an encryption key to be set in your pass. Then Apple will provide, I guess, some sort of documentation for the NDA-protected VAS Protocol (Value Added Services).

    • @harihararoopan3831
      @harihararoopan3831 ปีที่แล้ว

      @@AlexanderCerutti Can you please share any detailed documentations ??

  • @thisischidonet
    @thisischidonet ปีที่แล้ว +2

    Bro is Ryan from The office

  • @immuo
    @immuo ปีที่แล้ว +2

    I was desperate because I searched everything about pass but couldn't find a detailed implementation method, but now I found the answer here. thank you so much!!

  • @aj-ve3pw
    @aj-ve3pw 11 หลายเดือนก่อน +2

    god bless you I could never have done this without this tutorial!!!

  • @harihararoopan3831
    @harihararoopan3831 ปีที่แล้ว +2

    Bro it will be great if u share us how to create a NFC pass and their validation part ...

    • @josephgrn2818
      @josephgrn2818 11 หลายเดือนก่อน

      Is that supported? If that’s Host Card Emulation, I couldn’t find any documentation or support for iOS yet…

  • @YoungSith
    @YoungSith ปีที่แล้ว +1

    Man, great video, I succesfully managed to implement Passes in my React Native app. I was wondering, if you could make a video on how to update passes, for example for points rewards or update the QR when it expired. Thanks so much for your help!

    • @scriptpapi
      @scriptpapi  ปีที่แล้ว +1

      Glad to hear this man. And yeah I been getting a lot of requests to make a video about pass updates, so il make that a priority 👍

  • @devinleamy3950
    @devinleamy3950 5 วันที่ผ่านมา

    Very helpful. Thank you

  • @albertlaguador
    @albertlaguador 2 วันที่ผ่านมา

    Bless you brother🎉🎉🎉

  • @andrews13
    @andrews13 6 หลายเดือนก่อน +1

    This channel is criminally underrated!

  • @jeannaef1859
    @jeannaef1859 ปีที่แล้ว +1

    thanks, really helpful

  • @DhanushantBishnoiDSB
    @DhanushantBishnoiDSB 11 หลายเดือนก่อน

    i have two questions
    1. can we develop this for an android app having a button to store file on Apple wallet. May be calling an API directly from the button
    2. id we dont have apple id and apple macbook can we still develop this?

  • @simply6162
    @simply6162 ปีที่แล้ว

    where' can i buy the terminal that reads the pass and send data to database ????

  • @vii.hunnid
    @vii.hunnid 8 หลายเดือนก่อน

    This is beautiful man, thanks for the tutorial, but I have one question though...
    Is it possible to make it work on a web page instead of a mobile app?

  • @DhanushantBishnoiDSB
    @DhanushantBishnoiDSB 11 หลายเดือนก่อน

    One doubt, if an apple user uses application how it will pick his id and store the pass in their respective apple wallet. As currently i think it will store it in my (Developers) account only

  • @junelljacinto2309
    @junelljacinto2309 7 หลายเดือนก่อน

    very helpful man! so happy i discovered your channel.
    also, do you happen to know how to update it once its already added to wallet?
    thanks

  • @idressCode
    @idressCode 2 หลายเดือนก่อน

    Thank you my friend, it really helped me!

  • @migueloneill3663
    @migueloneill3663 8 หลายเดือนก่อน

    Hello is it possible to create a card with a personalized background image ? thank you

  • @maxxrojas
    @maxxrojas ปีที่แล้ว

    To make a simple pass for a rewards membership and to add it from web, do I need to be member of the Apple Devloper Program?

  • @marcuswestbrooks5768
    @marcuswestbrooks5768 ปีที่แล้ว

    I'm getting image data back from postman but if i download the pass nothing opens?

  • @PrashikMoon
    @PrashikMoon 5 หลายเดือนก่อน

    I am getting error bucket name not specified or invalid how can i solve it ?

  • @SebastianPresnoAlvarado
    @SebastianPresnoAlvarado หลายเดือนก่อน

    Hi! When running the commands in 17:29 it get the following error and don't really know what I'm doing wrong :( Can anyone help me? I followed this tutorial step by step
    openssl pkcs12 -in passmaker.p12 -clcerts -nokeys -out signerCert.pem -passin pass:test
    Error outputting keys and certificates
    00CC58FB01000000:error:0308010C:digital envelope routines:inner_evp_generic_fetch:unsupported:crypto/evp/evp_fetch.c:373:Global default library context, Algorithm (RC2-40-CBC : 0), Properties ()

  • @miteshdobareeya4634
    @miteshdobareeya4634 ปีที่แล้ว

    Is it possible to create a pass and add it to the wallet without interaction with the backend service?

  • @bestofnba5121
    @bestofnba5121 6 หลายเดือนก่อน

    Could you please create an app like this for me, how much would it cost?

  • @percy.jacobs
    @percy.jacobs 7 หลายเดือนก่อน

    Has someone been able to test a pass implementation with xctest in firebase test lab?

  • @bitcoinbrisbane
    @bitcoinbrisbane หลายเดือนก่อน

    So better than on Ruby. I could never get c# to work.

  • @ice6785
    @ice6785 11 หลายเดือนก่อน

    Thank you for the tutorial very helpful, especially when you meeting with this functionality first time :)

  • @afraz3882
    @afraz3882 5 หลายเดือนก่อน

    v cool videoo!!can u do onefor google wallet passes?

  • @sendilnp2978
    @sendilnp2978 ปีที่แล้ว

    Hi Nawaf,
    This tutorial is really useful..
    Could you please help me how to integrate passkit-generator, generate and distribute passes in OutSystems(low code platform)?
    Thanks in advance
    Senthil N P

  • @a-will
    @a-will 9 หลายเดือนก่อน

    This was really cool to watch! I'm not a developer but studying to be a UI designer. Its really interesting to backend of products.

  • @nickthanmas5203
    @nickthanmas5203 11 หลายเดือนก่อน

    Can you do a tutorial on apple wallet order tracking ?

  • @pngi
    @pngi 3 หลายเดือนก่อน

    Hi.
    Can you create a video about updating passes?
    I am developing a digital loyalty card, the only feature I couldn't create is to send updates to already existing passes using APNs, I tried certificate based and also token based authentication, but for some reason neither of them works.
    The apple documentation is ambiguous about what certificate should I use to update passes and in which way.
    Thank you!

    • @anitasharmaist
      @anitasharmaist 10 วันที่ผ่านมา

      Hey are you able to update the pass? It is becoming really difficult for me as very less docs and articles are available. Can you share your knowledge or some articles that might help. Thanks

  • @sachinmishrahp3055
    @sachinmishrahp3055 9 หลายเดือนก่อน

    how to get index.js?

  • @mileslow4908
    @mileslow4908 11 หลายเดือนก่อน

    thank god

  • @slimbron9489
    @slimbron9489 ปีที่แล้ว

    Great content, thank you it was very useful! 👍🏼

  • @emrebayrak2321
    @emrebayrak2321 7 หลายเดือนก่อน

    great video

  • @simply6162
    @simply6162 ปีที่แล้ว

    backend was impossible for me to understand since i only know ios development

    • @scriptpapi
      @scriptpapi  ปีที่แล้ว +1

      If you know Swift IOS development learning NodeJs for backend development will be super easy. You can learn it in a day I bet.

    • @simply6162
      @simply6162 ปีที่แล้ว

      @@scriptpapi nah man pls provide us solution without nodejs I beg you on legs. We need to create a apple wallet pass that gets read by nfc reader…which then send info to server

  • @MrNavedsk
    @MrNavedsk 6 หลายเดือนก่อน

    how do i create this without a cloud storage. man im so lost.
    -

    • @AlexanderCerutti
      @AlexanderCerutti 5 หลายเดือนก่อน

      Give an look at the examples in the repo. I do not use any cloud storage to serve passes

  • @JH4eva
    @JH4eva ปีที่แล้ว

    Is it possible to do in React Native using Expo? Also I'm using Windows. Not sure if it can be done on Windows as well

    • @scriptpapi
      @scriptpapi  ปีที่แล้ว +1

      It is definitely possible on React-Native, and I should probably make a video on that since I love RN. check out this library: www.npmjs.com/package/react-native-passkit-wallet

    • @scriptpapi
      @scriptpapi  ปีที่แล้ว +1

      But am not sure about Expo on windows. I tried making IOS apps using expo on Windows but suffered greatly and ended up saving up and buying my first Mac-mini. However, check out this thread I found on reddit, it might help:
      www.reddit.com/r/reactnative/comments/uuih36/expo_adding_apple_passes_to_wallet/

    • @JH4eva
      @JH4eva ปีที่แล้ว

      Thanks mate! I will go through this. Yea Im struggling cos of Expo environment. But by watching your video it looks that its not 100% necessary to do in the app any work on the wallet passes. It looks that all the creation of the pass is been made in the backend. You just send the request to the api and download the pass it looks like. Sorry my ignorance if I said something wrong, Im just starting with this feature

    • @scriptpapi
      @scriptpapi  ปีที่แล้ว +1

      @@JH4eva Nah you're right. The pass is generated completely in the backend. You then send the PKPasss file to the front-end for display and that's it!

  • @pedrogiroldo5251
    @pedrogiroldo5251 7 หลายเดือนก่อน

    can I do that without paying apple??