I am developing an app using Apple Pay for a US Client from outside the US. I am using Braintree + Apple Pay. We support real credit cards to Passbook, but we can\'t verify
Most likely this is happening because no payment cards are configured for any of those networks. From the documentation:
On devices that support making payments but don’t have any payment cards configured, the
canMakePayments
method returnsYES
because the hardware and parental controls allow making payments, but thecanMakePaymentsUsingNetworks:
method returnsNO
regardless of network.
The documentation also mentions other reasons:
User may not be able to make payments for a variety of reasons. For example, this functionality may not be supported by their hardware, or it may be restricted by parental controls.
On a separate note, if(self.braintree!=nil && self.braintree != Nil
is redundant - those are the same. I would simply collapse this into if (self.braintree) { …