PaymentsClient

Stay organized with collections Save and categorize content based on your preferences.
public class PaymentsClient extends GoogleApi<Wallet.WalletOptions>

Client for interacting with the Google Pay API. See GoogleApi for details about how the connection between your app and Google Play services is managed.

Public Method Summary

Task<PaymentCardRecognitionIntentResponse>
getPaymentCardRecognitionIntent(PaymentCardRecognitionIntentRequest request)
Requests a PendingIntent of the Google payment card recognition Activity to perform card recognition action.
Task<Boolean>
isReadyToPay(IsReadyToPayRequest request)
Determines if the user can make payments using the Google Pay API.
Task<PaymentData>
loadPaymentData(PaymentDataRequest request)
Requests PaymentData, which contains the necessary information to complete a payment.

Inherited Method Summary

Public Methods

public Task<PaymentCardRecognitionIntentResponse> getPaymentCardRecognitionIntent (PaymentCardRecognitionIntentRequest request)

Requests a PendingIntent of the Google payment card recognition Activity to perform card recognition action.

This API checks the following minimum requirements to finish a transaction using the Google Pay API:

Note that the requirements mentioned above are not exhaustive and can change over time.

When the Google payment card recognition Activity successfully recognizes a payment card and returns an Intent through Activity.onActivityResult(int, int, Intent), your app should call PaymentCardRecognitionResult.getFromIntent(Intent) to extract the result.

Parameters
request An instance of PaymentCardRecognitionIntentRequest used to specify additional settings.

public Task<Boolean> isReadyToPay (IsReadyToPayRequest request)

Determines if the user can make payments using the Google Pay API. We recommend to call this method before showing an option to pay using the Google Pay API.

    This API checks the following minimum requirements to finish a transaction using the Google Pay API:
  • Device is running on a supported Android system version and also has a supported version of Google Play services installed.
  • Google Pay API has launched in the user's country.
  • User either has or can add a card in flow according to the specifications given in the IsReadyToPayRequest.

Note that the requirements mentioned above are non-exhaustive and may change over time.

Parameters
request An instance of IsReadyToPayRequest used to specify additional filtering criteria.

public Task<PaymentData> loadPaymentData (PaymentDataRequest request)

Requests PaymentData, which contains the necessary information to complete a payment.

Note that this action will generally require UI to be shown to the users so they can select a payment method.

This API conforms to the protocol defined by AutoResolveHelper. Instead of handling the returned exceptions yourself when the Google Pay payment sheet needs to be shown (i.e. ResolvableApiException), you should use the AutoResolveHelper to pipe the results back to Activity.onActivityResult(int, int, android.content.Intent). This implementation frees your code from having to receive the result differently depending on the display of the Google Pay payment sheet.

Parameters
request An instance of PaymentDataRequest used to specify additional settings.