{"title":"Google Pay express checkout","category":"default","creationDate":1692969780,"content":"<p>Google Pay is an express payment method that lets shoppers pay with fewer steps.<\/p>\n<p><\/p>\n<h2>Requirements<\/h2>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Requirement<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><strong>Integration type<\/strong><\/td>\n<td style=\"text-align: left;\">Google Pay express checkout is supported only with the Advanced flow integration. Make sure that you have built an <a href=\"\/pt\/online-payments\/build-your-integration\/advanced-flow?platform=Web&amp;integration=Components\">Advanced flow Components integration<\/a>.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Limitations<\/strong><\/td>\n<td style=\"text-align: left;\">Google Pay express checkout is not supported on Android.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Setup steps<\/strong><\/td>\n<td style=\"text-align: left;\">Before you begin: <ul><li>Follow the <a href=\"https:\/\/developers.google.com\/pay\/api\/web\/guides\/setup\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">setup steps in the Google Pay documentation<\/a>.<\/li> <li><a href=\"\/pt\/payment-methods\/add-payment-methods\">Add Google Pay in your Customer Area<\/a>.<\/li><\/ul>.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Code samples<\/h2>\n<div class=\"accordion-shortcode adl-accordion adl-accordion--max-height-transition\" data-expand=\"true\" data-ignore=\"anchorjs-link\">\n    \n    <div class=\"adl-accordion__item\" style=\"\">\n        <div tabindex=\"0\" role=\"item\" aria-expanded=\"false\" class=\"adl-accordion__header\">\n            <i class=\"adl-accordion__toggle adl-icon-chevron-down\"><\/i>\n            <div class=\"adl-accordion__title-wrapper\" data-accordion=\"#html\">\n                                    <h3 class=\"adl-accordion__title\">HTML<\/h3>\n                            <\/div>\n        <\/div>\n        <div role=\"region\" class=\"adl-accordion__content\">\n            \n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'DOM element'\" :id=\"''\" :code-data='[{\"language\":\"html\",\"tabTitle\":\"\",\"content\":\"<!-- Step 1: Create a DOM element -->\\n\\n&lt;div id=\\\"googlepay-container\\\"&gt;&lt;\\\/div&gt;\"}]' :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n\n        <\/div>\n    <\/div>\n<\/div>\n\n<div class=\"accordion-shortcode adl-accordion adl-accordion--max-height-transition\" data-expand=\"true\" data-ignore=\"anchorjs-link\">\n    \n    <div class=\"adl-accordion__item\" style=\"\">\n        <div tabindex=\"0\" role=\"item\" aria-expanded=\"false\" class=\"adl-accordion__header\">\n            <i class=\"adl-accordion__toggle adl-icon-chevron-down\"><\/i>\n            <div class=\"adl-accordion__title-wrapper\" data-accordion=\"#java-script\">\n                                    <h3 class=\"adl-accordion__title\">JavaScript<\/h3>\n                            <\/div>\n        <\/div>\n        <div role=\"region\" class=\"adl-accordion__content\">\n            \n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Component implementation example'\" :id=\"''\" :code-data=\"[{&quot;language&quot;:&quot;js&quot;,&quot;tabTitle&quot;:&quot;&quot;,&quot;content&quot;:&quot;const googlePay = new GooglePay('googlepay', {\\n\\n\\\/\\\/ Step 2: Set the callback intents.\\n\\n    callbackIntents: ['SHIPPING_ADDRESS', 'SHIPPING_OPTION'],\\n\\n\\\/\\\/ Step 3: Set shipping configurations.\\n\\n    shippingAddressRequired: true,\\n\\n    shippingAddressParameters: {\\n        allowedCountryCodes: [],\\n        phoneNumberRequired: true\\n    },\\n\\n    \\\/\\\/ Shipping options configurations.\\n    shippingOptionRequired: true,\\n\\n\\\/\\\/ Step 4: Pass the default shipping options.\\n\\n    shippingOptions: {\\n        defaultSelectedOptionId: 'shipping-001',\\n        shippingOptions: [\\n            {\\n                id: 'shipping-001',\\n                label: '$0.00: Free shipping',\\n                description: 'Free shipping: delivered in 10 business days.'\\n            },\\n            {\\n                id: 'shipping-002',\\n                label: '$1.99: Standard shipping',\\n                description: 'Standard shipping: delivered in 3 business days.'\\n            },\\n        ]\\n    },\\n\\n\\\/\\\/ Step 5: Set the transaction information.\\n\\n    \\\/\\\/Required for v6.0.0 or later.\\n    isExpress: true,\\n\\n    \\\/\\\/ Line items.\\n    transactionInfo:{\\n        displayItems: [\\n            {\\n                label: 'Subtotal',\\n                type: 'SUBTOTAL',\\n                price: '99.00'\\n            },\\n            {\\n                label: 'Tax',\\n                type: 'TAX',\\n                price: '1.00'\\n            }\\n        ],\\n        countryCode: 'US',\\n        currencyCode: 'USD',\\n        totalPriceStatus: 'FINAL',\\n        totalPrice: '100.00',\\n        totalPriceLabel: 'Total'\\n    },\\n\\n\\\/\\\/ Step 6: (Optional) Add additional configuration.\\n\\n    \\\/\\\/ Configuration from Google Pay documentation: https:\\\/\\\/developers.google.com\\\/pay\\\/api\\\/web\\\/reference\\\/request-objects.\\n    emailRequired: true,\\n    billingAddressRequired: true,\\n    billingAddressParameters: {\\n        format: 'FULL'\\n    },\\n\\n\\\/\\\/ Step 7: Update the payment data.\\n\\n    paymentDataCallbacks: {\\n        onPaymentDataChanged(intermediatePaymentData) {\\n            return new Promise(async resolve =&gt; {\\n                const { callbackTrigger, shippingAddress, shippingOptionData } = intermediatePaymentData;\\n                const paymentDataRequestUpdate = {};\\n\\n                \\\/\\\/ Validate the country\\\/region and address selection.\\n                if (shippingAddress.countryCode !== 'US' &amp;&amp; shippingAddress.countryCode !== 'BR') {\\n                    paymentDataRequestUpdate.error = {\\n                        reason: 'SHIPPING_ADDRESS_UNSERVICEABLE',\\n                        message: 'Cannot ship to the selected address',\\n                        intent: 'SHIPPING_ADDRESS'\\n                    };\\n                }\\n\\n                \\\/\\\/ If it initializes or changes the shipping address, calculate the shipping options and transaction info.\\n                if (callbackTrigger === 'INITIALIZE' || callbackTrigger === 'SHIPPING_ADDRESS') {\\n                    paymentDataRequestUpdate.newShippingOptionParameters = await fetchNewShippingOptions(shippingAddress.countryCode);\\n                    paymentDataRequestUpdate.newTransactionInfo = calculateNewTransactionInfo(\\\/* ... *\\\/);\\n                }\\n\\n                \\\/\\\/ If SHIPPING_OPTION changes, calculate the new shipping amount.\\n                if (callbackTrigger === 'SHIPPING_OPTION') {\\n                    paymentDataRequestUpdate.newTransactionInfo = calculateNewTransactionInfo(\\\/* ... *\\\/);\\n                }\\n\\n                resolve(paymentDataRequestUpdate);\\n            });\\n        }\\n    },\\n\\n\\\/\\\/ Step 8: Configure the callback to get the shopper's information.\\n\\n    onAuthorized: paymentData =&gt; {\\n        console.log('Shopper details', paymentData);\\n    }\\n});\\n\\n\\\/\\\/ Step 9: Mount the Component.\\n\\ngooglepay\\n   .isAvailable()\\n   .then(() =&gt; {\\n       googlePay.mount(\\&quot;#googlepay-container\\&quot;);\\n   })\\n   .catch(e =&gt; {\\n       \\\/\\\/ Google Pay isn't available.\\n   });&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n\n        <\/div>\n    <\/div>\n<\/div>\n\n<p>For more details about each step, continue to the step-by-step guide below.<\/p>\n<h2>Step 1: Create a DOM element<\/h2>\n<p>Create a <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/Document_Object_Model\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Document Object Model (DOM)<\/a> element where you want to implement express checkout.<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Create a DOM element'\" :id=\"''\" :code-data='[{\"language\":\"html\",\"tabTitle\":\"\",\"content\":\"&lt;div id=\\\"googlepay-container\\\"&gt;&lt;\\\/div&gt;\"}]' :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h2 id=\"set-the-callback-intents\">Step 2: Set the callback intents<\/h2>\n<p>When you create an instance of the Component, set the <a href=\"https:\/\/developers.google.com\/pay\/api\/web\/reference\/request-objects#PaymentDataRequest\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">callback intents<\/a> from Google Pay:<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Callback intents'\" :id=\"''\" :code-data=\"[{&quot;language&quot;:&quot;js&quot;,&quot;tabTitle&quot;:&quot;&quot;,&quot;content&quot;:&quot;const googlePay = new GooglePay('googlepay', {\\n    callbackIntents: ['SHIPPING_ADDRESS', 'SHIPPING_OPTION'],\\n    \\\/\\\/ ...Other parameters.\\n});&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h2>Step 3: Set shipping configurations<\/h2>\n<p>Configure the options for <a href=\"https:\/\/developers.google.com\/pay\/api\/web\/reference\/request-objects#PaymentDataRequest\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">shipping address and shipping options<\/a>:<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Shipping configuration'\" :id=\"''\" :code-data=\"[{&quot;language&quot;:&quot;js&quot;,&quot;tabTitle&quot;:&quot;&quot;,&quot;content&quot;:&quot;const googlePay = new GooglePlay('googlepay', {\\n    \\\/\\\/ ...Other parameters.\\n\\n    \\\/\\\/ Shipping address configurations.\\n    shippingAddressRequired: true,\\n\\n    shippingAddressParameters: {\\n        allowedCountryCodes: [],\\n        phoneNumberRequired: true\\n    },\\n\\n    \\\/\\\/ Shipping options configurations.\\n    shippingOptionRequired: true\\n});&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h2>Step 4: Pass the default shipping options<\/h2>\n<p>Configure the default <a href=\"https:\/\/developers.google.com\/pay\/api\/web\/reference\/request-objects#ShippingOptionParameters\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">shipping option parameters<\/a>.<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Default shipping options'\" :id=\"''\" :code-data=\"[{&quot;language&quot;:&quot;js&quot;,&quot;tabTitle&quot;:&quot;&quot;,&quot;content&quot;:&quot;const googlePay = new GooglePay('googlepay', {\\n    \\\/\\\/ ...Other parameters\\n    shippingOptionParameters: {\\n        defaultSelectedOptionId: 'shipping-001',\\n        shippingOptions: [\\n            {\\n                id: 'shipping-001',\\n                label: '$0.00: Free shipping',\\n                description: 'Free shipping: delivered in 10 business days.'\\n            },\\n            {\\n                id: 'shipping-002',\\n                label: '$1.99: Standard shipping',\\n                description: 'Standard shipping: delivered in 3 business days.'\\n            },\\n        ]\\n    }\\n});&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h2>Step 5: Set the transaction information<\/h2>\n<p>Set up additional <a href=\"\/pt\/payment-methods\/google-pay\/web-component#transaction-info\">component configuration<\/a>, and set the initial <a href=\"https:\/\/developers.google.com\/pay\/api\/web\/reference\/request-objects#TransactionInfo\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">transaction information<\/a>. For example:<\/p>\n<p>For v6.0.0 or later, you must include <code>isExpress<\/code>: <span translate=\"no\"><strong>true<\/strong><\/span>.<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Get transaction information'\" :id=\"''\" :code-data=\"[{&quot;language&quot;:&quot;js&quot;,&quot;tabTitle&quot;:&quot;&quot;,&quot;content&quot;:&quot;const googlePay = new GooglePay('googlepay', {\\n    \\\/\\\/... Other parameters.\\n\\n    \\\/\\\/ Required for v6.0.0 or later.\\n    isExpress: true,\\n\\n    transactionInfo:{\\n        displayItems: [\\n            {\\n                label: 'Subtotal',\\n                type: 'SUBTOTAL',\\n                price: '99.00'\\n            },\\n            {\\n                label: 'Tax',\\n                type: 'TAX',\\n                price: '1.00'\\n            }\\n        ],\\n        countryCode: 'US',\\n        currencyCode: 'USD',\\n        totalPriceStatus: 'FINAL',\\n        totalPrice: '100.00',\\n        totalPriceLabel: 'Total'\\n    }\\n});&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h2>Step 6: (Optional) Add additional configuration<\/h2>\n<p>In your configuration object, you can include additional configuration supported by the <a href=\"https:\/\/developers.google.com\/pay\/api\/web\/reference\/request-objects\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Google Pay request object<\/a>.<\/p>\n<p>For example, to require the shopper's email and full billing address at checkout, include the following configuration:<\/p>\n<table>\n<thead>\n<tr>\n<th>Configuration<\/th>\n<th>Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><a href=\"https:\/\/developers.google.com\/pay\/api\/web\/reference\/request-objects#PaymentDataRequest\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">\n  <code>emailRequired<\/code>\n<\/a><\/td>\n<td>Set to <span translate=\"no\"><strong>true<\/strong><\/span> to require the shopper to enter their email address.<\/td>\n<\/tr>\n<tr>\n<td><a href=\"https:\/\/developers.google.com\/pay\/api\/web\/reference\/request-objects#CardParameters\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">\n  <code>billingAddressRequired<\/code>\n<\/a><\/td>\n<td>Set to <span translate=\"no\"><strong>true<\/strong><\/span> to require the shopper to enter their billing address.<\/td>\n<\/tr>\n<tr>\n<td><a href=\"https:\/\/developers.google.com\/pay\/api\/web\/reference\/request-objects#BillingAddressParameters\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">\n  <code>billingAddressParameters<\/code>\n<\/a><\/td>\n<td>Set which billing address fields to include.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Add additional configuration'\" :id=\"''\" :code-data=\"[{&quot;language&quot;:&quot;js&quot;,&quot;tabTitle&quot;:&quot;&quot;,&quot;content&quot;:&quot;const googlePay = new GooglePay('googlepay', {\\n    \\\/\\\/... Other parameters.\\n    \\\/\\\/ Set to true to require the shopper to enter their email address.\\n    emailRequired: true,\\n    \\\/\\\/ Set to true to require the shopper to enter their billing address.\\n    billingAddressRequired: true,\\n    \\\/\\\/ Set the billing address to include all fields.\\n    billingAddressParameters: {\\n         format: 'FULL'\\n    }\\n});&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h2>Step 7: Update the payment data<\/h2>\n<p>Implement the <a href=\"https:\/\/developers.google.com\/pay\/api\/web\/reference\/client#onPaymentDataChanged\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">callback<\/a> to get <a href=\"https:\/\/developers.google.com\/pay\/api\/web\/reference\/request-objects#PaymentDataRequestUpdate\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">updated payment data<\/a> from Google Pay, like if the shipping address changes. You must come up with the logic to get the new shipping options and calculate the new total. You can do this by implementing your own functions like <code>fetchNewShippingOptions<\/code> and <code>calculateNewTransactionInfo<\/code>. For example:<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Get updated payment data from Google Pay'\" :id=\"''\" :code-data=\"[{&quot;language&quot;:&quot;js&quot;,&quot;tabTitle&quot;:&quot;&quot;,&quot;content&quot;:&quot;const googlePay = new GooglePay('googlepay', {\\n    \\\/\\\/... Other parameters.\\n    paymentDataCallbacks: {\\n        onPaymentDataChanged(intermediatePaymentData) {\\n            return new Promise(async resolve =&gt; {\\n                const { callbackTrigger, shippingAddress, shippingOptionData } = intermediatePaymentData;\\n                const paymentDataRequestUpdate = {};\\n\\n                \\\/\\\/ Validate the country\\\/region and address selection.\\n                if (shippingAddress.countryCode !== 'US' &amp;&amp; shippingAddress.countryCode !== 'BR') {\\n                    paymentDataRequestUpdate.error = {\\n                        reason: 'SHIPPING_ADDRESS_UNSERVICEABLE',\\n                        message: 'Cannot ship to the selected address',\\n                        intent: 'SHIPPING_ADDRESS'\\n                    };\\n                }\\n\\n                \\\/\\\/ If it initializes or changes the shipping address, calculate the shipping options and transaction info.\\n                if (callbackTrigger === 'INITIALIZE' || callbackTrigger === 'SHIPPING_ADDRESS') {\\n                    paymentDataRequestUpdate.newShippingOptionParameters = await fetchNewShippingOptions(shippingAddress.countryCode);\\n                    paymentDataRequestUpdate.newTransactionInfo = calculateNewTransactionInfo(\\\/* ... *\\\/); \\\/\\\/ You must implement this function and its logic.\\n                }\\n\\n                \\\/\\\/ If SHIPPING_OPTION changes, calculate the new shipping amount.\\n                if (callbackTrigger === 'SHIPPING_OPTION') {\\n                    paymentDataRequestUpdate.newTransactionInfo = calculateNewTransactionInfo(\\\/* ... *\\\/); \\\/\\\/ You must implement this function and its logic.\\n                }\\n\\n                resolve(paymentDataRequestUpdate);\\n            });\\n        }\\n    }\\n});&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<div class=\"notices green\">\n<p>When the payment amount changes, Adyen doesn't receive the updated amount from Google Pay. You must validate that the updated amount is correct before you send it in the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/payments<\/a> request.<\/p>\n<\/div>\n<p>If the amount changes, update the amount and pass it to <a href=\"\/pt\/online-payments\/build-your-integration\/advanced-flow\/?platform=Web&amp;integration=Components#adyencheckout\">\n  <code>onSubmit<\/code>\n<\/a> to make the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/Checkout\/latest\/post\/payments\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/payments<\/a> request.<\/p>\n<h2>Step 8: Configure the callback to get the shopper's information<\/h2>\n<p>Implement the event handler to get the shopper's <a href=\"https:\/\/developers.google.com\/pay\/api\/web\/reference\/response-objects#PaymentData\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">information from Google Pay<\/a>. This is triggered before <code>onSubmit<\/code>:<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Get the shopper information from Google Pay payment data'\" :id=\"''\" :code-data=\"[{&quot;language&quot;:&quot;js&quot;,&quot;tabTitle&quot;:&quot;&quot;,&quot;content&quot;:&quot;const googlePay = new GooglePay('googlepay', {\\n    \\\/\\\/ ...Other parameters\\n    onAuthorized: paymentData =&gt; {\\n        console.log('Shopper details', paymentData);\\n    }\\n});&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<p>When the shopper checks out with Google Pay as an express payment method, the configurations you implemented give you updates on the shipping address, payment data, and shopper information.<\/p>\n<h2>Step 9: Mount the Component<\/h2>\n<p>Check that Google Pay is available and mount the Component:<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Check if available and mount the Component'\" :id=\"''\" :code-data=\"[{&quot;language&quot;:&quot;js&quot;,&quot;tabTitle&quot;:&quot;&quot;,&quot;content&quot;:&quot;googlepay\\n   .isAvailable()\\n   .then(() =&gt; {\\n       googlePay.mount(\\&quot;#googlepay-container\\&quot;);\\n   })\\n   .catch(e =&gt; {\\n       \\\/\\\/ Google Pay isn't available.\\n   });&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h2 id=\"see-also\">See also<\/h2>\n<div class=\"see-also-links output-inline\" id=\"see-also\">\n<ul><li><a href=\"\/online-payments\/components-web\"\n                        target=\"_self\"\n                        >\n                    Web Components integration guide\n                <\/a><\/li><li><a href=\"https:\/\/developers.google.com\/pay\/api\/\"\n                        target=\"_blank\"\n                         class=\"external\">\n                    Google Pay API\n                <\/a><\/li><li><a href=\"\/online-payments\/tokenization\"\n                        target=\"_self\"\n                        >\n                    Tokenization\n                <\/a><\/li><li><a href=\"\/development-resources\/error-codes#google-pay-error-codes\"\n                        target=\"_self\"\n                        >\n                    Google Pay error codes\n                <\/a><\/li><li><a href=\"https:\/\/docs.adyen.com\/api-explorer\/#\/CheckoutService\/latest\/overview\"\n                        target=\"_blank\"\n                         class=\"external\">\n                    API Explorer\n                <\/a><\/li><\/ul><\/div>\n","url":"https:\/\/docs.adyen.com\/pt\/payment-methods\/google-pay\/web-component\/express-checkout","articleFields":{"description":"Configure Google Pay for express checkout.","parameters":{"express":"true","integration":"Components","platform":"Web","integration_guide_url":"build-your-integration\/sessions-flow?platform=Web&integration=Components","component_name":"the Component","component_name_capitalized":"The Component","payment_method":"Google Pay","payment_method_type":"googlepay","component_js_const":"googlepay","link":"https:\/\/developers.google.com\/pay\/api\/web\/guides\/setup"},"feedback_component":true,"filters_component":false,"last_edit_on":"06-11-2025 11:53","decision_tree":"[]","page_id":"ce490851-4414-456c-9d06-6c1c64f55509"},"algolia":{"url":"https:\/\/docs.adyen.com\/pt\/payment-methods\/google-pay\/web-component\/express-checkout","title":"Google Pay express checkout","content":"Google Pay is an express payment method that lets shoppers pay with fewer steps.\n\nRequirements\n\n\n\nRequirement\nDescription\n\n\n\n\nIntegration type\nGoogle Pay express checkout is supported only with the Advanced flow integration. Make sure that you have built an Advanced flow Components integration.\n\n\nLimitations\nGoogle Pay express checkout is not supported on Android.\n\n\nSetup steps\nBefore you begin: Follow the setup steps in the Google Pay documentation. Add Google Pay in your Customer Area..\n\n\n\nCode samples\n\n    \n    \n        \n            \n            \n                                    HTML\n                            \n        \n        \n            \n\n    ","type":"page","locale":"pt","boost":16,"hierarchy":{"lvl0":"Home","lvl1":"Payment methods","lvl2":"Google Pay","lvl3":"Google Pay Component","lvl4":"Google Pay express checkout"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/pt","lvl1":"https:\/\/docs.adyen.com\/pt\/payment-methods","lvl2":"https:\/\/docs.adyen.com\/pt\/payment-methods\/google-pay","lvl3":"https:\/\/docs.adyen.com\/pt\/payment-methods\/google-pay\/web-component","lvl4":"\/pt\/payment-methods\/google-pay\/web-component\/express-checkout"},"levels":5,"category":"Payment method","category_color":"green","tags":["Google","express","checkout"]}}
