# Google Pay > AVAILABILITY Google Pay is currently available with our latest Android and JavaScript SDKs. Google Pay provides a purchasing experience both in app and on the web for customers with supported Android devices. It allows customers to pay with cards and PayPal accounts stored in their Google account, in addition to those stored in Google Pay. For more details on compatibility and availability, see our [Google Pay support article](https://developer.paypal.com/braintree/articles/guides/payment-methods/google-pay). ## Getting started If you don't already accept Google Pay, you'll need to follow these steps to add a Google Pay to your existing Braintree integration: * Configure Google Pay * Integrate on your servers ### Configure Google Pay In order to accept payments via Google Pay in sandbox or production, you will need to enable it in the Control Panel. To do so: 1. Log into either your [sandbox Control Panel](https://sandbox.braintreegateway.com/login) or [your production Control Panel](https://www.braintreegateway.com/login) 1. Click on the gear icon in the top right corner 1. Click Processing from the drop-down menu 1. Scroll to the Payment Methods section 1. Next to Google Pay, click the toggle to turn it on If you already have Google Pay activated in your Control Panel, but need to get this payment method enabled for a particular merchant account, [contact us](https://developer.paypal.com/braintree/help?issue=acceptPaymentTypes). In production, you'll also need to work with Google to go live. #### PayPal via Google Pay To accept PayPal payments via Google Pay, make sure you have enabled both PayPal and Google Pay in the Control Panel. ### Integrate on your servers #### Creating transactions For the purpose of making transactions, an Google Pay card is treated just like other credit cards with a few noted differences. Using [chargePaymentMethod](https://graphql.braintreepayments.com/reference/#Mutation--chargePaymentMethod) mutation and supply just an amount and paymentMethodId (which is called payment method nonce on the client-side) you can create a Google Pay card transaction. *Request body* ``` mutation ChargePaymentMethod($input: ChargePaymentMethodInput!) { chargePaymentMethod(input: $input) { transaction { id createdAt status amount { value currencyCode } merchantAccountId paymentMethodSnapshot { ... on CreditCardDetails { brand brandCode last4 expirationMonth expirationYear cardholderName origin { type details { ... on GooglePayOriginDetails { googleTransactionId bin } } } } } processorResponse { legacyCode message avsPostalCodeResponse avsStreetAddressResponse cvvResponse } } } } ``` *Inputs* ``` { "input": { "paymentMethodId": "fake-android-pay-mastercard-nonce", "transaction": { "amount": "1.00", "riskData": { "customerBrowser": "netscap_1.0", "customerIp": "8.8.8.8", "deviceData": "android_v15.0_z2" } } } } ``` *Response* ``` { "data": { "chargePaymentMethod": { "transaction": { "id": "dHJhbnNhY3Rpb25fMm1yazc1cWI", "createdAt": "2022-09-13T04:44:37.000000Z", "status": "SUBMITTED_FOR_SETTLEMENT", "amount": { "value": "1.00", "currencyCode": "USD" }, "merchantAccountId": "sandbox_credit_card", "paymentMethodSnapshot": { "brand": "MasterCard", "brandCode": "MASTERCARD", "last4": "4444", "expirationMonth": "12", "expirationYear": "2023", "cardholderName": null, "origin": { "type": "GOOGLE_PAY", "details": { "googleTransactionId": "google_transaction_id", "bin": "555555" } } }, "processorResponse": { "legacyCode": "1000", "message": "Approved", "avsPostalCodeResponse": "NOT_PROVIDED", "avsStreetAddressResponse": "NOT_PROVIDED", "cvvResponse": "NOT_PROVIDED" } } } }, "extensions": { "requestId": "40aa12ef-7cd9-4733-8a4e-824966a2cf32" } } ``` Notice the *origin* bits in the response. The *type* clearly spells out that it's a Google Pay transaction. You should collect and pass device data under *riskData* of inputs in order to increase likelihood of a successful authorization. #### Vaulting Google Pay Google Pay cards can only be saved to your Vault for specific use cases; see the [support article for details](https://developer.paypal.com/braintree/articles/guides/payment-methods/google-pay#recurring-billing-and-vaulting). Vaulting of PayPal accounts from Google Pay is currently not supported. This means the options passed in *vaultPaymentMethodAfterTransacting* while using [chargePaymentMethod](https://graphql.braintreepayments.com/reference/#Mutation--chargePaymentMethod) mutation are not supported when creating a transaction. If your use case is supported, you can store a customer's Google Pay card in your Vault using one of the following mutations: * [vaultPaymentMethod](https://graphql.braintreepayments.com/reference/#Mutation--vaultPaymentMethod) mutation * [createCustomer](https://graphql.braintreepayments.com/reference/#Mutation--createCustomer) mutation * [updateCustomer](https://graphql.braintreepayments.com/reference/#Mutation--updateCustomer) mutation * [chargePaymentMethod](https://graphql.braintreepayments.com/reference/#Mutation--chargePaymentMethod) mutation