Search code examples
iospayment-gatewaybraintreeapplepay

Apple Pay - Pass book empty


recently my app got failed in an Apple Review , for Apple Pay , mentioning "Specifically, we found that your app provide the Apple Pay button for devices without Apple Pay being set up."... Clueless :( I built the way , button "Buy with Apple Pay" will display , when

     [PKPaymentAuthorizationViewController canMakePayments] 

returns one (true) & Braintree validation success on devices like iPhone 6, 6+. Though, Passbook is empty , above canMakePayments returns "true" always. I suspect , this could the reason for Apple rejection. But, do you think we can fix this from our end by any other means? Or ,Shall I appeal for it? If I am on wrong path, correct me.

Also, I couldn't get clear on this statement what Apple Doc says on it.

"On devices that support making payments but don’t have any payment cards configured, the canMakePayments method returns YES because the hardware and parental controls allow making payments, but the canMakePaymentsUsingNetworks: method returns NO regardless of network."

Thanks.


Solution

  • Here is what the reason for an issue! Actually not an Apple Bug, its our own implementation bug.

    Just posting for reference - Like me , many might have missed this, hope this will help others.

    canMakePayments - Will return "YES" ( True / 1 ) irrespective of card configuration.

    canMakePaymentsUsingNetworks - Will return "NO" , if card NOT configured or NOT configured properly.

    So, for my case I should check both... If both should be TRUE then only I need to make Button "Apple Pay" visible. Let me request and see what happens!