Quick Reference
| Option | Type | Default | Description |
|---|---|---|---|
buttonType | string | 'buy' | Button label |
buttonColor | string | 'black' | Button color |
buttonSizeMode | string | 'fill' | 'fill' or 'static' |
buttonRadius | number | — | Corner radius in pixels |
buttonBorderType | string | — | 'default_border' or 'no_border' |
buttonLocale | string | Browser default | ISO 639-1 locale code |
captureBillingAddress | boolean | false | Capture billing address |
captureShippingAddress | boolean | false | Capture shipping address |
requireShippingMethod | boolean | false | Enable shipping method selection |
emailRequired | boolean | false | Capture email address |
existingPaymentMethodRequired | boolean | false | Only show if user has saved payment |
Button Styling
Customize the Google Pay button appearance.| Option | Type | Default | Description |
|---|---|---|---|
buttonType | string | 'buy' | Button label text (see values below) |
buttonColor | string | 'black' | 'black' for light backgrounds (default), 'white' for dark backgrounds, 'default' (same as 'black') |
buttonSizeMode | string | 'fill' | 'fill' to match container width (default), 'static' to size based on label text |
buttonRadius | number | — | Corner radius in pixels |
buttonBorderType | string | — | 'default_border' or 'no_border' |
buttonLocale | string | Browser default | ISO 639-1 code ('en', 'de', 'fr', etc.) |
Button Type
SetbuttonType to control the label displayed on the Google Pay button.
| Type | Description |
|---|---|
'buy' | ”Buy with Google Pay” (default) |
'checkout' | ”Checkout with Google Pay” |
'pay' | ”Pay with Google Pay” |
'order' | ”Order with Google Pay” |
'book' | ”Book with Google Pay” |
'donate' | ”Donate with Google Pay” |
'subscribe' | ”Subscribe with Google Pay” |
'plain' | Google Pay logo only |
Examples
Supported locales
Supported locales
Google Pay supports:
en, ar, bg, ca, cs, da, de, el, es, et, fi, fr, hr, id, it, ja, ko, ms, nl, no, pl, pt, ru, sk, sl, sr, sv, th, tr, uk, zhExpress Checkout
Google Pay can capture customer information directly from the payment sheet.Billing Address
Shipping Address
| Option | Type | Description |
|---|---|---|
captureShippingAddress | boolean | Enable shipping address capture |
shippingAddressParameters.allowedCountryCodes | string[] | ISO 3166-1 alpha-2 country codes |
shippingAddressParameters.phoneNumberRequired | boolean | Require phone number |
Providing
shippingAddressParameters (even empty {}) implicitly enables shipping address capture for backward compatibility.Shipping Method Selection
Enable customers to select shipping methods directly in the Google Pay sheet:- Shipping options from your SHIPPING checkout module appear in the payment sheet
- Customer selects a shipping method before completing payment
- Selected method is sent to your backend via
selectShippingMethod() - Display items update to show shipping costs
Email Capture
Advanced Options
Existing Payment Method Required
Only show Google Pay if the user has a saved payment method:This option only affects button visibility in PRODUCTION. In TEST mode, the button always appears.
Supported Card Networks
| Network | Description |
|---|---|
| VISA | Visa cards |
| MASTERCARD | Mastercard cards |
| AMEX | American Express cards |
| DISCOVER | Discover cards |
| JCB | JCB cards |
| INTERAC | Interac cards |
orderedAllowedCardNetworks is set in your client session, only those networks are available.
Display Items
When using express checkout with shipping, the payment sheet displays:- Line items — Products from
order.lineItems - Fees — Non-zero fees from
order.fees - Shipping — Non-zero shipping costs (when
requireShippingMethodis enabled)
merchantAmount is set, a simplified “Subtotal” view is shown instead.
Testing
TEST Environment
Google Pay returns mock payment credentials. The button always appears regardless ofexistingPaymentMethodRequired.
PRODUCTION Environment
- Register your website with the Google Pay Business Console
- Use a real Google account with saved payment methods
- Test
existingPaymentMethodRequired: truefor one-tap checkout
Troubleshooting
Google Pay button not appearing
Google Pay button not appearing
Shipping methods not appearing
Shipping methods not appearing
Checklist:
-
requireShippingMethod: truein SDK options -
captureShippingAddress: trueorshippingAddressParametersset - SHIPPING checkout module configured on backend
- Shipping options available for the selected address
Address not captured
Address not captured
Checklist:
-
captureBillingAddress: truefor billing -
captureShippingAddress: trueorshippingAddressParametersfor shipping - User has address saved in Google account
Complete Example
See Also
- SDK Options Reference — All configuration options
- Google Pay Web Documentation — Official Google documentation
- Google Pay Button Options — Button customization reference