2016-09-13 4 views
-2

Der von uns verwendete Zahlungsprozessor unterstützt alle Kartentypen außer Discover für Android Pay. Ich habe überall gesucht, um einen Weg zu finden, die unterstützten Kartentypen zu begrenzen. Die einzigen Flags, die ich finden konnte, waren auf der MaskedWalletRequest-Seite etwas relevant. Sie erlauben Ihnen jedoch nur, Debitkarten oder Prepaid-Karten zu verweigern.Begrenzen von Kartentypen auf Android Pay

Wer weiß von einer Möglichkeit, die akzeptierten Kartenarten zu begrenzen?

+0

Wie würden wir wissen - wir wissen nicht, welchen Zahlungsprozessor Sie verwenden oder deren API. –

+0

Die Frage ist spezifisch für die MaskedWalletRequest und begrenzt die zulässigen Zahlungstypen. Der spezifische Zahlungsprozessor ist irrelevant. Ich frage nur, wie man die Zahlungsoptionen, die in der maskierten Brieftasche angezeigt werden, auf Visa, Mastercard oder Amex beschränkt. – Cherub

Antwort

1

Ich fand die Lösung für meine eigene Frage. Ich dachte, ich würde die Antwort posten, da ich sie nirgendwo anders finden konnte. Es gibt .addAllowedCardNetworks(supportedNetworks) Methode für den MaskedWallletRequest Builder.

Wenn mit den Methoden .addAllowedCardNetworks(supportedNetworks) oder nichts bereitgestellt wird, wird standardmäßig auf alle Kartennetzwerke zugegriffen.

Collection<Integer> supportedNetworks = new ArrayList<Integer>(); 
supportedNetworks.add(WalletConstants.CardNetwork.AMEX); 
supportedNetworks.add(WalletConstants.CardNetwork.MASTERCARD); 
supportedNetworks.add(WalletConstants.CardNetwork.VISA); 

MaskedWalletRequest maskedRequest = MaskedWalletRequest.newBuilder() 
      .setMerchantName(BuildConfig.MERCHANT_NAME) 
      .setPhoneNumberRequired(false) 
      .setShippingAddressRequired(false) 
      .setCurrencyCode("USD") 
      .setEstimatedTotalPrice(String.format(Locale.US, "%s", total)) 
      .setCart(cart) 
      .setPaymentMethodTokenizationParameters(parameters) 
      .addAllowedCardNetworks(supportedNetworks) 
      .build(); 
Verwandte Themen