"Оплата не завершена" с помощью Apple Pay - не удается получить токен
я внедряю Apple Pay с помощью PassKit, я показываю диалог надлежащим образом и обрабатываю методы делегата, но каждый раз, когда я использую touch Id для проверки покупки, он говорит "оплата не завершена" и никогда не достигает моего метода делегата paymentAuthorizationViewController:didAuthorizePayment:completion:
. Я сделал все сие полностью настроить apple pay, но я не могу получить токен для отправки на мой платежный шлюз.
PKPaymentRequest *request = [[PKPaymentRequest alloc] init];
self.paymentRequest = request;
request.countryCode = @"US";
request.currencyCode = @"USD";
request.supportedNetworks = @[PKPaymentNetworkAmex, PKPaymentNetworkMasterCard, PKPaymentNetworkVisa];
request.merchantCapabilities = PKMerchantCapabilityEMV;
request.merchantIdentifier = @"merchant.com.*******";
request.requiredShippingAddressFields = PKAddressFieldPostalAddress;
request.requiredBillingAddressFields = PKAddressFieldPostalAddress;
request.paymentSummaryItems = [self paymentSummaryItems];
self.paymentPane = [[PKPaymentAuthorizationViewController alloc] initWithPaymentRequest:request];
self.paymentPane.delegate = self;
if (self.paymentPane) {
[self presentViewController:self.paymentPane animated:TRUE completion:nil];
}
вот что я вижу, и экран просто остается там и говорит: "Попробуйте Снова и снова:
2 ответов
наконец-то получил токен. Мне нужно было включить 3DS в качестве возможности обработки платежей:
request.merchantCapabilities = PKMerchantCapabilityEMV | PKMerchantCapability3DS;
вот что я получаю за копипастинг чужого кода (http://goo.gl/uvkl8F). Странно, потому что 3DS "требуется" в соответствии с документы:
вы должны поддержать 3DS; поддержка EMV опционная.
почему я должен явно указать, что 3DS поддерживается продавцом, когда это требуется, вне меня.
убедитесь, что кредитная карта, настроенная на Passbook, проверена...в противном случае, PKPaymentAuthorizationViewController вернет nil.