PaymentsClient

public class PaymentsClient extends GoogleApi<Wallet.WalletOptions>

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

Public Method Summary

Task<Boolean>
isReadyToPay(IsReadyToPayRequest request)
Determines if the user can make payments using the Payments API.
Task<PaymentData>
loadPaymentData(PaymentDataRequest request)
Requests PaymentData, which contains the necessary information to complete a payment.

Inherited Method Summary

Public Methods

public Task<Boolean> isReadyToPay (IsReadyToPayRequest request)

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

    This API checks the following minimum requirements to finish a transaction using the Payments APIs:
  • Device is running on a supported Android system version and also has a supported version of Google Play Services installed.
  • Device has at least one valid Google account on the device.
  • Payments 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 generally will require UI to be shown to the users so they can select payment method to be used.

This API conforms to the protocol defined by AutoResolveHelper, so instead of handling the returned exceptions yourself when UI needs to be shown (i.e. ResolvableApiException), you should use the AutoResolveHelper to pipe the results back to onActivityResult(int, int, android.content.Intent). This frees your code from having to handle receiving the result differently depending on UI being shown or not.

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