--- title: "Google Agentic Commerce integration" description: "Process payments for agent-initiated transactions with Google AI Mode or Gemini." url: "https://docs.adyen.com/online-payments/agentic-commerce/merchant/google-agentic-commerce" source_url: "https://docs.adyen.com/online-payments/agentic-commerce/merchant/google-agentic-commerce.md" canonical: "https://docs.adyen.com/online-payments/agentic-commerce/merchant/google-agentic-commerce" last_modified: "2026-06-19T12:56:19+02:00" language: "en" --- # Google Agentic Commerce integration Process payments for agent-initiated transactions with Google AI Mode or Gemini. [View source](/online-payments/agentic-commerce/merchant/google-agentic-commerce.md) Use this integration for processing Google Pay payments through Adyen, when Google agents ([Google AI Mode](https://search.google/ways-to-search/ai-mode/) or [Gemini](https://gemini.google.com/)) initiate transactions with you. In this integration, Google handles product discovery, checkout session management, and showing the Google Pay payment sheet to the shopper. Your server gets an encrypted payment token from google, and you pass it to Adyen to complete the payment. ## Requirements | Requirement | Description | | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **Integration type** | An existing [online payments integration using Advanced flow](/online-payments/build-your-integration#advanced-flow-three-api-requests). | | **Limitations** | This integration is only for Google Pay payments. | | **Setup steps** | Before you begin:- Follow the [setup steps in the Google Pay documentation](https://developers.google.com/pay/api/web/guides/setup). - [Add Google Pay in your Customer Area](https://docs.adyen.com/payment-methods/add-payment-methods). - Set up your server to handle Google's [Universal Commerce Protocol (UCP)](https://developers.google.com/pay/api/universal-commerce-protocol/overview). | ## How it works The following shows the process of a shopper using a Google AI agent to make a transaction with you: 1. The shopper instructs Google's AI agent to initiate a transaction with you. 2. Google's AI agent makes a request to your server that handles the Universal Commerce Protocol (UCP) Tokenization flow. 3. Your server returns order data to Google's AI agent (like total payment amount and shipping options). 4. Google's AI agent shows the order summary to the shopper. 5. The shopper selects to pay with Google Pay. 6. Google's AI agent shows the payment form, collects the shopper's payment details, and creates an encrypted token that you can use to process the payment through Adyen. 7. Google's AI agent makes a request to your server, including the encrypted token. 8. Your server makes a payment request to Adyen's server, including the encrypted token. 9. Adyen returns the payment result to you. 10. You return the payment result to Google's AI agent. 11. Google's AI agent shows the order confirmation to the shopper. 12. Adyen sends a webhook message with the payment outcome to your webhook server. ## Configure your UCP payment handler for Adyen payments Your server's UCP payment handler handles requests from Google's AI agent. You must configure it to handle tokens for Adyen payments. In the manifest of the UCP handler, configure the following fields: | Field | Description | | --------------------------------------------------------- | ------------------------------------------------------------------------- | | `tokenization_specification.type` | **PAYMENT\_GATEWAY**. This is not a placeholder, this is the exact value. | | `tokenization_specification.parameters.gateway` | **adyen** | | `tokenization_specification.parameters.gatewayMerchantId` | Your Adyen merchant account. | In your manifest file, the `merchant_info.merchant_id` field meant for your Google Pay Merchant ID. This field is not for your Adyen merchant account. **Example to configure your UCP manifest file** ```json { "tokenization_specification": { "type": "PAYMENT_GATEWAY", "parameters": { "gateway": "adyen", "gatewayMerchantId": "ADYEN_MERCHANT_ACCOUNT" } } } ``` ## Process the payment To process the payment, you must get the encrypted token from the request from Google's AI agent to your server. Then use it to make a payment request from your server to Adyen. ### Get the encrypted token Google makes a POST `/checkout-sessions/{id}/complete` to your server. **Example request body from Google** ```json { "payment": { "instruments": [{ "credential": { "type": "PAYMENT_GATEWAY", "token": "{"signature":"...","protocolVersion":"ECv2","signedMessage":"..."}" // ↑ Pass this value as-is to Adyen — do not decode or modify it } }] } } ``` Get the following from the request body: | Parameter | Description | | -------------------------------------- | ---------------------------------------------------------------------------------------------- | | `payment.instruments.credential.token` | The encrypted token from Google. Do not decode or modify it. Pass the complete value to Adyen. | ## Make a payment request to Adyen To submit the payment, make a payment request to Adyen. When you [make the payment request](/online-payments/build-your-integration/advanced-flow?platform=Web#make-a-payment), additionally include the following for the Google Pay payment initiated by Google's AI agent: | Parameter | Description | | ------------------------------ | --------------------------------------------------------------------------------------------------------- | | `paymentMethod.type` | **googlepay** | | `paymentMethod.googlePayToken` | The complete token value from the POST `/checkout-sessions/{id}/complete` request from Google's AI agent. | **Example payment request with Google Pay token** ```bash curl https://checkout-test.adyen.com/v72/payments \ -H 'x-api-key: ADYEN_API_KEY' \ -H 'Idempotency-Key: YOUR_IDEMPOTENCY_KEY' \ -H 'content-type: application/json' \ -d '{ "merchantAccount": "ADYEN_MERCHANT_ACCOUNT", "paymentMethod": { "type": "googlepay", "googlePayToken": "{\"signature\":\"...\",\"protocolVersion\":\"ECv2\",\"signedMessage\":\"...\"}" }, "amount": { "currency": "EUR", "value": 1000 }, "reference": "YOUR_ORDER_REFERENCE_AGENTIC_TRANSACTION", "returnUrl": "https://your-company.example.com/checkout?shopperOrder=12xy.." }' ``` After making the payment request, continue your integration's payment flow. You [get the payment outcome](/online-payments/build-your-integration/advanced-flow?platform=Web#get-the-payment-outcome) in your synchronous response and a webhook message. ## Liability shift When using **PAYMENT\_GATEWAY** tokenization with Adyen, Adyen (as the gateway) receives the Electronic Commerce Indicator (ECI) from the Google Pay token and passes it through the payment processing flow automatically. You do not need to handle ECI value. | Authorization method | Liability shift availability | | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **`CRYPTOGRAM_3DS`** | Available for eligible Visa and Mastercard device tokens (Android).- Mastercard: no exclusions. - Visa: excludes certain high-risk MCCs (money transfer, gambling, crypto). European merchants are automatically covered by a Visa exception for eligible transactions. | | **`PAN_ONLY`** | Liability shift is not available for **PAN\_ONLY** transactions. | Enabling Visa liability shift: To qualify for Visa liability shift for **CRYPTOGRAM\_3DS** transactions, follow [Google's instructions to enable Fraud liability protection for Visa device tokens in your Google Pay & Wallet Console](https://developers.google.com/pay/api/web/guides/resources/shift-liability-to-issuer#liability-shift-opt-in). Make sure that `totalPrice` and `currencyCode` are always accurate. Transactions with the value zero or a hardcoded value do not qualify. ## Test and go live Set your test environment: * UCP payment handler configuration: **TEST** * Base URL for Adyen test endpoints: `https://checkout-test.adyen.com` ### Test Google Pay in insolation To test the Google Pay token flow without a full UCP integration, use the [Google Pay Code Generator](https://developers.google.com/pay/api/web/guides/gpay-codegen). Configure the tokenization specification with the gateway **adyen** and your Adyen merchant account name, generate a test token in the test environment, and make a test [/payments](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments) request with the token. This lets you validate the Adyen integration end-to-end before your UCP server is complete. ### Test wallet setup Add a card to your [Google Pay wallet](https://wallet.google.com), then enroll it in [Google's test card suite](https://developers.google.com/pay/api/android/guides/resources/test-card-suite). The suite pre-populates your wallet with Adyen test cards covering authorized, refused, and other scenarios. Alternatively, add a real card in the test environment. It maps to an Adyen test card of the same brand without being charged. ### Go live We recommend that you test the scenarios described in [Google Pay’s API reference for web](https://developers.google.com/pay/api/web/reference/client) in your live environment. 1. Make sure that your API credential has the **API Clientside Encryption Payments role**. Check this in your [live Customer Area](https://ca-live.adyen.com/) or ask your Admin user to verify. 2. Go to your [live Customer Area](https://ca-live.adyen.com/) to configure your [Google Merchant ID](https://developers.google.com/pay/api/web/reference/request-objects#MerchantInfo). 3. Complete the steps in the Google Pay API [request production access](https://developers.google.com/pay/api/web/guides/test-and-deploy/request-prod-access). 4. Complete the steps in the Google Pay API [deploy to production documentation for Web](https://developers.google.com/pay/api/web/guides/test-and-deploy/deploy-production-environment).