jvmguser
jvmguser

Reputation: 11

Error when downloading Apple Pass in Chrome for iOS

Issue with downloading Apple Pass on an iPhone device using Chrome and Firefox. It works fine on Safari. On Chrome for iOS it says:

Sorry, your Pass cannot be installed to Passbook at this time.

For Firefox it says:

Failed to Add Pass An error occurred while adding the pass to Wallet. Please try again later.

I tried just downloading the Apple Pass from a desktop browser and it downloads and I can install it fine on an iPhone/simulator which I'm assuming is not a problem with the pass itself but maybe rather something I'm missing in the response.

Here is the code I'm using to return the Apple Pass.

private void ReturnResponse(byte[] applePass)
{
    Response.Clear();
    Response.AddHeader("content-disposition", string.Formate("attachment; filename={0}", "sample.pkpass"));
    Response.ContentType = "application/vnd.apple.pkpass"
    Response.BinaryWrite(applePass);
    Response.End();
}

Expected result:

Apple Pass opens and allows the user to add it to their Apple Wallet.

Upvotes: 1

Views: 4767

Answers (4)

Brian
Brian

Reputation: 1

I just bought 20 access passes from a website. The site had the option to "add to apple wallet". It worked fine for 19 of them and then on the very last one I got this same error.

I did not do anything different when trying to add the 20th one.

Wondering if there is a limitation with the number of passes you can add?... but why would it be limited to a random number like 19?

Upvotes: 0

Dana Henke
Dana Henke

Reputation: 11

Changing our request method from a POST to a GET when serving the pkpass made it possible to download the pass using Google Chrome for Mobile on an iOS device.

Upvotes: 1

boodle
boodle

Reputation: 516

I realise this is question is over a year and a half old, but this is still an issue as of March 2021. After a lot of trial and error we managed to get it working on Chrome & Firefox. Our specific issue was that the request has to be a GET, and we had a form before the Pass was downloaded that submitted as a POST. Once we change the form to submit a GET the issue was resolved.

We tried to keep the POST and return a 201, which feels correct, but the issue persisted.

Upvotes: 1

Tomas McGuinness
Tomas McGuinness

Reputation: 7689

This is untested, but I have found this link which I feel might be related:

https://github.com/eymengunay/php-passbook/issues/73

It says that the anchor you using to link to the pass should contain the this attribute:

target="_system"

I have not tested this resolution myself.

Upvotes: 0

Related Questions