CINXE.COM

Integration checklist  |  Google Pay API for Android  |  Google for Developers

<!doctype html> <html lang="en" dir="ltr"> <head> <meta name="google-signin-client-id" content="721724668570-nbkv1cfusk7kk4eni4pjvepaus73b13t.apps.googleusercontent.com"> <meta name="google-signin-scope" content="profile email https://www.googleapis.com/auth/developerprofiles https://www.googleapis.com/auth/developerprofiles.award"> <meta property="og:site_name" content="Google for Developers"> <meta property="og:type" content="website"><meta name="theme-color" content="#1a73e8"><meta charset="utf-8"> <meta content="IE=Edge" http-equiv="X-UA-Compatible"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="manifest" href="/_pwa/developers/manifest.json" crossorigin="use-credentials"> <link rel="preconnect" href="//www.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.googleapis.com" crossorigin> <link rel="preconnect" href="//apis.google.com" crossorigin> <link rel="preconnect" href="//www.google-analytics.com" crossorigin><link rel="stylesheet" href="//fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"> <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Material+Icons&family=Material+Symbols+Outlined&display=block"><link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/css/app.css"> <link rel="shortcut icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/favicon-new.png"> <link rel="apple-touch-icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/touchicon-180-new.png"><link rel="canonical" href="https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist"><link rel="search" type="application/opensearchdescription+xml" title="Google for Developers" href="https://developers.google.com/s/opensearch.xml"> <link rel="alternate" hreflang="en" href="https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist" /><link rel="alternate" hreflang="x-default" href="https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist" /><link rel="alternate" hreflang="zh-Hans" href="https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist?hl=zh-cn" /><link rel="alternate" hreflang="zh-Hant" href="https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist?hl=zh-tw" /><link rel="alternate" hreflang="ja" href="https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist?hl=ja" /><link rel="alternate" hreflang="ko" href="https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist?hl=ko" /><link rel="alternate" hreflang="pl" href="https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist?hl=pl" /><link rel="alternate" hreflang="pt-BR" href="https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist?hl=pt-br" /><link rel="alternate" hreflang="ru" href="https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist?hl=ru" /><title>Integration checklist &nbsp;|&nbsp; Google Pay API for Android &nbsp;|&nbsp; Google for Developers</title> <meta property="og:title" content="Integration checklist &nbsp;|&nbsp; Google Pay API for Android &nbsp;|&nbsp; Google for Developers"><meta property="og:url" content="https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist"><meta property="og:image" content="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/opengraph/google-blue.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="675"><meta property="og:locale" content="en"><meta name="twitter:card" content="summary_large_image"><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "headline": "Integration checklist" } </script><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "name": "Google Pay", "item": "https://developers.google.com/pay" },{ "@type": "ListItem", "position": 2, "name": "Google Pay for Payments", "item": "https://developers.google.com/pay/api" },{ "@type": "ListItem", "position": 3, "name": "Android", "item": "https://developers.google.com/pay/api/android/overview" },{ "@type": "ListItem", "position": 4, "name": "Integration checklist", "item": "https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist" }] } </script> <!-- Define name of title that you must set in the files that use this template --> <link rel="stylesheet" href="/extras.css"></head> <body class="" template="page" theme="google-blue" type="article" layout="docs" concierge='closed' display-toc pending> <devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <section class="devsite-wrapper"> <devsite-cookie-notification-bar></devsite-cookie-notification-bar><devsite-header role="banner"> <div class="devsite-header--inner nocontent"> <div class="devsite-top-logo-row-wrapper-wrapper"> <div class="devsite-top-logo-row-wrapper"> <div class="devsite-top-logo-row"> <button type="button" id="devsite-hamburger-menu" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Navigation menu button" visually-hidden aria-label="Open menu"> </button> <div class="devsite-product-name-wrapper"> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item devsite-has-google-wordmark"> <a href="https://developers.google.com/pay" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Upper Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Google Pay" > <svg class="devsite-google-wordmark" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 148 48"> <title>Google</title> <path class="devsite-google-wordmark-svg-path" d="M19.58,37.65c-9.87,0-18.17-8.04-18.17-17.91c0-9.87,8.3-17.91,18.17-17.91c5.46,0,9.35,2.14,12.27,4.94l-3.45,3.45c-2.1-1.97-4.93-3.49-8.82-3.49c-7.21,0-12.84,5.81-12.84,13.02c0,7.21,5.64,13.02,12.84,13.02c4.67,0,7.34-1.88,9.04-3.58c1.4-1.4,2.32-3.41,2.66-6.16H19.58v-4.89h16.47c0.18,0.87,0.26,1.92,0.26,3.06c0,3.67-1.01,8.21-4.24,11.44C28.93,35.9,24.91,37.65,19.58,37.65z M61.78,26.12c0,6.64-5.1,11.53-11.36,11.53s-11.36-4.89-11.36-11.53c0-6.68,5.1-11.53,11.36-11.53S61.78,19.43,61.78,26.12z M56.8,26.12c0-4.15-2.96-6.99-6.39-6.99c-3.43,0-6.39,2.84-6.39,6.99c0,4.11,2.96,6.99,6.39,6.99C53.84,33.11,56.8,30.22,56.8,26.12z M87.25,26.12c0,6.64-5.1,11.53-11.36,11.53c-6.26,0-11.36-4.89-11.36-11.53c0-6.68,5.1-11.53,11.36-11.53C82.15,14.59,87.25,19.43,87.25,26.12zM82.28,26.12c0-4.15-2.96-6.99-6.39-6.99c-3.43,0-6.39,2.84-6.39,6.99c0,4.11,2.96,6.99,6.39,6.99C79.32,33.11,82.28,30.22,82.28,26.12z M112.09,15.29v20.7c0,8.52-5.02,12.01-10.96,12.01c-5.59,0-8.95-3.76-10.22-6.81l4.41-1.83c0.79,1.88,2.71,4.1,5.81,4.1c3.8,0,6.16-2.36,6.16-6.77v-1.66h-0.18c-1.14,1.4-3.32,2.62-6.07,2.62c-5.76,0-11.05-5.02-11.05-11.49c0-6.51,5.28-11.57,11.05-11.57c2.75,0,4.93,1.22,6.07,2.58h0.18v-1.88H112.09z M107.64,26.16c0-4.06-2.71-7.03-6.16-7.03c-3.49,0-6.42,2.97-6.42,7.03c0,4.02,2.93,6.94,6.42,6.94C104.93,33.11,107.64,30.18,107.64,26.16z M120.97,3.06v33.89h-5.07V3.06H120.97z M140.89,29.92l3.93,2.62c-1.27,1.88-4.32,5.11-9.61,5.11c-6.55,0-11.28-5.07-11.28-11.53c0-6.86,4.77-11.53,10.71-11.53c5.98,0,8.91,4.76,9.87,7.34l0.52,1.31l-15.42,6.38c1.18,2.31,3.01,3.49,5.59,3.49C137.79,33.11,139.58,31.84,140.89,29.92zM128.79,25.77l10.31-4.28c-0.57-1.44-2.27-2.45-4.28-2.45C132.24,19.04,128.66,21.31,128.79,25.77z"/> </svg>Pay </a> </li> </ul> </span> </div> <div class="devsite-top-logo-row-middle"> <div class="devsite-header-upper-tabs"> <devsite-tabs class="upper-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Upper tabs"> <tab > <a href="https://developers.google.com/pay" track-metadata-eventdetail="https://developers.google.com/pay" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - overview" track-metadata-module="primary nav" data-category="Overview" data-label="navTopMenu" track-name="overview" data-action="tabClick" > Overview </a> </tab> <tab class="devsite-dropdown devsite-active "> <a href="https://developers.google.com/pay/api" track-metadata-eventdetail="https://developers.google.com/pay/api" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - payments" track-metadata-module="primary nav" aria-label="Payments, selected" data-category="Payments" data-label="navTopMenu" track-name="payments" data-action="tabClick" > Payments </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Payments" track-type="nav" track-metadata-eventdetail="https://developers.google.com/pay/api" track-metadata-position="nav - payments" track-metadata-module="primary nav" data-category="Payments" data-label="navTopMenu" track-name="payments" data-action="tabClick" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/pay/api/android/overview" track-type="nav" track-metadata-eventdetail="https://developers.google.com/pay/api/android/overview" track-metadata-position="nav - payments" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="navTopMenu" data-action="dropdownClick" data-category="android" > <div class="devsite-nav-item-title"> Android </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/pay/api/web/overview" track-type="nav" track-metadata-eventdetail="https://developers.google.com/pay/api/web/overview" track-metadata-position="nav - payments" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="navTopMenu" data-category="web" data-action="dropdownClick" > <div class="devsite-nav-item-title"> Web </div> </a> </li> </ul> </div> </div> </div> </tab> <tab > <a href="https://developers.google.com/wallet" track-metadata-eventdetail="https://developers.google.com/wallet" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - wallet" track-metadata-module="primary nav" data-category="Wallet" data-label="navTopMenu" track-name="wallet" data-action="tabClick" > Wallet </a> </tab> <tab class="devsite-dropdown "> <a href="https://developers.google.com/pay/india/api" track-metadata-eventdetail="https://developers.google.com/pay/india/api" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - india" track-metadata-module="primary nav" data-category="APIs for India" data-label="navTopMenu" track-name="india" data-action="tabClick" > India </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for India" track-type="nav" track-metadata-eventdetail="https://developers.google.com/pay/india/api" track-metadata-position="nav - india" track-metadata-module="primary nav" data-category="APIs for India" data-label="navTopMenu" track-name="india" data-action="tabClick" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/pay/india/api/android/overview" track-type="nav" track-metadata-eventdetail="https://developers.google.com/pay/india/api/android/overview" track-metadata-position="nav - india" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-action="dropdownClick" data-label="navTopMenu" data-category="android-india" > <div class="devsite-nav-item-title"> Android </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/pay/india/api/ios/overview" track-type="nav" track-metadata-eventdetail="https://developers.google.com/pay/india/api/ios/overview" track-metadata-position="nav - india" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="navTopMenu" data-action="dropdownClick" data-category="ios-india" > <div class="devsite-nav-item-title"> iOS </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/pay/india/api/web/intro" track-type="nav" track-metadata-eventdetail="https://developers.google.com/pay/india/api/web/intro" track-metadata-position="nav - india" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="navTopMenu" data-action="dropdownClick" data-category="web-india" > <div class="devsite-nav-item-title"> Web </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/pay/india/api/otherapis/omnichannel/overview" track-type="nav" track-metadata-eventdetail="https://developers.google.com/pay/india/api/otherapis/omnichannel/overview" track-metadata-position="nav - india" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-category="omnichannel-india" data-label="navTopMenu" data-action="dropdownClick" > <div class="devsite-nav-item-title"> Omnichannel </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/pay/india/api/merchant-sdk/guides/overview" track-type="nav" track-metadata-eventdetail="https://developers.google.com/pay/india/api/merchant-sdk/guides/overview" track-metadata-position="nav - india" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="navTopMenu" data-category="merchant-india" data-action="dropdownClick" > <div class="devsite-nav-item-title"> Merchant SDK </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/pay/india/api/psp/overview" track-type="nav" track-metadata-eventdetail="https://developers.google.com/pay/india/api/psp/overview" track-metadata-position="nav - india" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="navTopMenu" data-category="psp-india" data-action="dropdownClick" > <div class="devsite-nav-item-title"> PSP APIs </div> </a> </li> </ul> </div> </div> </div> </tab> <tab > <a href="https://developers.google.com/pay/payment-card-recognition/debit-credit-card-recognition" track-metadata-eventdetail="https://developers.google.com/pay/payment-card-recognition/debit-credit-card-recognition" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - payment card recognition" track-metadata-module="primary nav" data-category="payment-card-recognition" data-label="navTopMenu" track-name="payment card recognition" data-action="tabClick" > Payment Card Recognition </a> </tab> <tab > <a href="https://developers.google.com/pay/spot" track-metadata-eventdetail="https://developers.google.com/pay/spot" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - spot platform" track-metadata-module="primary nav" data-category="spot-platform" data-label="navTopMenu" track-name="spot platform" data-action="tabClick" > Spot Platform </a> </tab> </nav> </devsite-tabs> </div> <devsite-search enable-signin enable-search enable-suggestions enable-query-completion project-name="Google Pay API for Android" tenant-name="Google for Developers" project-scope="/pay/api/android/overview" url-scoped="https://developers.google.com/s/results/pay/api/android/overview" > <form class="devsite-search-form" action="https://developers.google.com/s/results" method="GET"> <div class="devsite-search-container"> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-expanded="false" aria-haspopup="listbox" autocomplete="off" class="devsite-search-field devsite-search-query" name="q" placeholder="Search" role="combobox" type="text" value="" > <div class="devsite-search-image material-icons" aria-hidden="true"> </div> <div class="devsite-search-shortcut-icon-container" aria-hidden="true"> <kbd class="devsite-search-shortcut-icon">/</kbd> </div> </div> </div> </form> <button type="button" search-close class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Close search"></button> </devsite-search> </div> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es" >Español</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="pl" >Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw" >中文 – 繁體</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> <devsite-user enable-profiles fp-auth id="devsite-user"> <span class="button devsite-top-button" aria-hidden="true" visually-hidden>Sign in</span> </devsite-user> </div> </div> </div> <div class="devsite-collapsible-section "> <div class="devsite-header-background"> <div class="devsite-product-id-row" > <div class="devsite-product-description-row"> <ul class="devsite-breadcrumb-list" aria-label="Lower header breadcrumb"> <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/pay/api" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Lower Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Google Pay API" > Google Pay for Payments </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/pay/api/android/overview" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Lower Header" data-value="2" track-type="globalNav" track-name="breadcrumb" track-metadata-position="2" track-metadata-eventdetail="Google Pay API for Android" > Android </a> </li> </ul> </div> <div class="devsite-product-button-row"> <a href="https://pay.google.com/business/console?utm_source=devsite&amp;utm_medium=devsite&amp;utm_campaign=devsite" class="button external " target="_blank" >Manage integrations in console</a> </div> </div> <div class="devsite-doc-set-nav-row"> <devsite-tabs class="lower-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Lower tabs"> <tab > <a href="https://developers.google.com/pay/api" track-metadata-eventdetail="https://developers.google.com/pay/api" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - home" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Home" track-name="home" > Home </a> </tab> <tab class="devsite-active"> <a href="https://developers.google.com/pay/api/android/overview" track-metadata-eventdetail="https://developers.google.com/pay/api/android/overview" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - guides" track-metadata-module="primary nav" aria-label="Guides, selected" data-category="Site-Wide Custom Events" data-label="Tab: Guides" track-name="guides" > Guides </a> </tab> <tab > <a href="https://developers.google.com/pay/api/android/reference/client" track-metadata-eventdetail="https://developers.google.com/pay/api/android/reference/client" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - reference" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Reference" track-name="reference" > Reference </a> </tab> <tab > <a href="https://developers.google.com/pay/api/android/samples" track-metadata-eventdetail="https://developers.google.com/pay/api/android/samples" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - samples" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Samples" track-name="samples" > Samples </a> </tab> <tab > <a href="https://developers.google.com/pay/api/android/support/troubleshooting" track-metadata-eventdetail="https://developers.google.com/pay/api/android/support/troubleshooting" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - support" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Support" track-name="support" > Support </a> </tab> <tab class="devsite-dropdown "> <span class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - community" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" > Community </span> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Community" track-type="nav" track-metadata-eventdetail="" track-metadata-position="nav - community" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-item"> <a href="https://github.com/google-pay" track-type="nav" track-metadata-eventdetail="https://github.com/google-pay" track-metadata-position="nav - community" track-metadata-module="tertiary nav" tooltip data-action="upper-tab-dropdown-click" data-category="pay" data-label="https://github.com/google-pay" > <div class="devsite-nav-item-title"> GitHub </div> </a> </li> <li class="devsite-nav-item"> <a href="https://twitter.com/googlepaydevs" track-type="nav" track-metadata-eventdetail="https://twitter.com/googlepaydevs" track-metadata-position="nav - community" track-metadata-module="tertiary nav" tooltip data-action="upper-tab-dropdown-click" data-category="pay" data-label="https://twitter.com/googlepaydevs" > <div class="devsite-nav-item-title"> X (Twitter) </div> </a> </li> <li class="devsite-nav-item"> <a href="https://goo.gle/payments-dev-community" track-type="nav" track-metadata-eventdetail="https://goo.gle/payments-dev-community" track-metadata-position="nav - community" track-metadata-module="tertiary nav" tooltip data-label="https://goo.gle/payments-dev-community" data-action="upper-tab-dropdown-click" data-category="pay" > <div class="devsite-nav-item-title"> Discord </div> </a> </li> <li class="devsite-nav-item"> <a href="https://stackoverflow.com/questions/tagged/google-pay" track-type="nav" track-metadata-eventdetail="https://stackoverflow.com/questions/tagged/google-pay" track-metadata-position="nav - community" track-metadata-module="tertiary nav" tooltip data-category="pay" data-label="https://stackoverflow.com/questions/tagged/google-pay" data-action="upper-tab-dropdown-click" > <div class="devsite-nav-item-title"> StackOverflow </div> </a> </li> </ul> </div> </div> </div> </tab> </nav> </devsite-tabs> </div> </div> </div> </div> </devsite-header> <devsite-book-nav scrollbars > <div class="devsite-book-nav-filter" > <span class="filter-list-icon material-icons" aria-hidden="true"></span> <input type="text" placeholder="Filter" aria-label="Type to filter" role="searchbox"> <span class="filter-clear-button hidden" data-title="Clear filter" aria-label="Clear filter" role="button" tabindex="0"></span> </div> <nav class="devsite-book-nav devsite-nav nocontent" aria-label="Side menu"> <div class="devsite-mobile-header"> <button type="button" id="devsite-close-nav" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Close navigation" aria-label="Close navigation"> </button> <div class="devsite-product-name-wrapper"> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item devsite-has-google-wordmark"> <a href="https://developers.google.com/pay" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Upper Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Google Pay" > <svg class="devsite-google-wordmark" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 148 48"> <title>Google</title> <path class="devsite-google-wordmark-svg-path" d="M19.58,37.65c-9.87,0-18.17-8.04-18.17-17.91c0-9.87,8.3-17.91,18.17-17.91c5.46,0,9.35,2.14,12.27,4.94l-3.45,3.45c-2.1-1.97-4.93-3.49-8.82-3.49c-7.21,0-12.84,5.81-12.84,13.02c0,7.21,5.64,13.02,12.84,13.02c4.67,0,7.34-1.88,9.04-3.58c1.4-1.4,2.32-3.41,2.66-6.16H19.58v-4.89h16.47c0.18,0.87,0.26,1.92,0.26,3.06c0,3.67-1.01,8.21-4.24,11.44C28.93,35.9,24.91,37.65,19.58,37.65z M61.78,26.12c0,6.64-5.1,11.53-11.36,11.53s-11.36-4.89-11.36-11.53c0-6.68,5.1-11.53,11.36-11.53S61.78,19.43,61.78,26.12z M56.8,26.12c0-4.15-2.96-6.99-6.39-6.99c-3.43,0-6.39,2.84-6.39,6.99c0,4.11,2.96,6.99,6.39,6.99C53.84,33.11,56.8,30.22,56.8,26.12z M87.25,26.12c0,6.64-5.1,11.53-11.36,11.53c-6.26,0-11.36-4.89-11.36-11.53c0-6.68,5.1-11.53,11.36-11.53C82.15,14.59,87.25,19.43,87.25,26.12zM82.28,26.12c0-4.15-2.96-6.99-6.39-6.99c-3.43,0-6.39,2.84-6.39,6.99c0,4.11,2.96,6.99,6.39,6.99C79.32,33.11,82.28,30.22,82.28,26.12z M112.09,15.29v20.7c0,8.52-5.02,12.01-10.96,12.01c-5.59,0-8.95-3.76-10.22-6.81l4.41-1.83c0.79,1.88,2.71,4.1,5.81,4.1c3.8,0,6.16-2.36,6.16-6.77v-1.66h-0.18c-1.14,1.4-3.32,2.62-6.07,2.62c-5.76,0-11.05-5.02-11.05-11.49c0-6.51,5.28-11.57,11.05-11.57c2.75,0,4.93,1.22,6.07,2.58h0.18v-1.88H112.09z M107.64,26.16c0-4.06-2.71-7.03-6.16-7.03c-3.49,0-6.42,2.97-6.42,7.03c0,4.02,2.93,6.94,6.42,6.94C104.93,33.11,107.64,30.18,107.64,26.16z M120.97,3.06v33.89h-5.07V3.06H120.97z M140.89,29.92l3.93,2.62c-1.27,1.88-4.32,5.11-9.61,5.11c-6.55,0-11.28-5.07-11.28-11.53c0-6.86,4.77-11.53,10.71-11.53c5.98,0,8.91,4.76,9.87,7.34l0.52,1.31l-15.42,6.38c1.18,2.31,3.01,3.49,5.59,3.49C137.79,33.11,139.58,31.84,140.89,29.92zM128.79,25.77l10.31-4.28c-0.57-1.44-2.27-2.45-4.28-2.45C132.24,19.04,128.66,21.31,128.79,25.77z"/> </svg>Pay </a> </li> </ul> </span> </div> </div> <div class="devsite-book-nav-wrapper"> <div class="devsite-mobile-nav-top"> <ul class="devsite-nav-list"> <li class="devsite-nav-item"> <a href="/pay" class="devsite-nav-title gc-analytics-event " data-category="Overview" data-label="navTopMenu" track-name="overview" data-action="tabClick" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Overview" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Overview </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/api" class="devsite-nav-title gc-analytics-event devsite-nav-active" data-category="Payments" data-label="navTopMenu" track-name="payments" data-action="tabClick" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Payments" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Payments </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Payments" data-label="navTopMenu" track-name="payments" data-action="tabClick" > <span class="devsite-nav-text" tooltip menu="Payments"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Payments"> </span> </span> </li> </ul> <ul class="devsite-nav-responsive-tabs"> <li class="devsite-nav-item"> <a href="/pay/api" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Home" track-name="home" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Home" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Home </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/api/android/overview" class="devsite-nav-title gc-analytics-event devsite-nav-has-children devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Guides" track-name="guides" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Guides" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip menu="_book"> Guides </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="_book"> </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/api/android/reference/client" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Reference" track-name="reference" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Reference" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Reference </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/api/android/samples" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Samples" track-name="samples" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Samples" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Samples </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/api/android/support/troubleshooting" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Support" track-name="support" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Support" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Support </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" > <span class="devsite-nav-text" tooltip > Community </span> </span> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu devsite-lower-tab-item"> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Community" track-name="community" > <span class="devsite-nav-text" tooltip menu="Community"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Community"> </span> </span> </li> </ul> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/wallet" class="devsite-nav-title gc-analytics-event " data-category="Wallet" data-label="navTopMenu" track-name="wallet" data-action="tabClick" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Wallet" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Wallet </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/india/api" class="devsite-nav-title gc-analytics-event " data-category="APIs for India" data-label="navTopMenu" track-name="india" data-action="tabClick" data-category="Site-Wide Custom Events" data-label="Responsive Tab: India" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > India </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="APIs for India" data-label="navTopMenu" track-name="india" data-action="tabClick" > <span class="devsite-nav-text" tooltip menu="India"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="India"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/pay/payment-card-recognition/debit-credit-card-recognition" class="devsite-nav-title gc-analytics-event " data-category="payment-card-recognition" data-label="navTopMenu" track-name="payment card recognition" data-action="tabClick" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Payment Card Recognition" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Payment Card Recognition </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/spot" class="devsite-nav-title gc-analytics-event " data-category="spot-platform" data-label="navTopMenu" track-name="spot platform" data-action="tabClick" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Spot Platform" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Spot Platform </span> </a> </li> </ul> </div> <div class="devsite-mobile-nav-bottom"> <ul class="devsite-nav-list" menu="_book"> <li class="devsite-nav-item"><a href="/pay/api/android/overview" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/overview" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/overview" ><span class="devsite-nav-text" tooltip>Overview</span></a></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Get started</span> </div></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/setup" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/setup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/setup" ><span class="devsite-nav-text" tooltip>Setup</span></a></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/tutorial" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/tutorial" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/tutorial" ><span class="devsite-nav-text" tooltip>Tutorial</span></a></li> <li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Quickstart</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item devsite-nav-external"><a href="https://github.com/google-pay/flutter-plugin/tree/main/pay_android" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://github.com/google-pay/flutter-plugin/tree/main/pay_android" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://github.com/google-pay/flutter-plugin/tree/main/pay_android" target="_blank"><span class="devsite-nav-text" tooltip>Flutter</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li><li class="devsite-nav-item devsite-nav-external"><a href="https://github.com/google-pay/android-quickstart/tree/main/java" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://github.com/google-pay/android-quickstart/tree/main/java" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://github.com/google-pay/android-quickstart/tree/main/java" target="_blank"><span class="devsite-nav-text" tooltip>Java</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li><li class="devsite-nav-item devsite-nav-external"><a href="https://github.com/google-pay/android-quickstart/tree/main/kotlin" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://github.com/google-pay/android-quickstart/tree/main/kotlin" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://github.com/google-pay/android-quickstart/tree/main/kotlin" target="_blank"><span class="devsite-nav-text" tooltip>Kotlin (Jetpack Compose)</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li><li class="devsite-nav-item devsite-nav-external"><a href="https://github.com/google-pay/react-native-make-payment" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://github.com/google-pay/react-native-make-payment" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://github.com/google-pay/react-native-make-payment" target="_blank"><span class="devsite-nav-text" tooltip>React Native</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>What&#39;s new</span> </div></li> <li class="devsite-nav-item"><a href="/pay/api/android/support/release-notes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/support/release-notes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/support/release-notes" ><span class="devsite-nav-text" tooltip>API release notes</span></a></li> <li class="devsite-nav-item"><a href="/pay/api/android/support/documentation-change-log" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/support/documentation-change-log" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/support/documentation-change-log" ><span class="devsite-nav-text" tooltip>Documentation change log</span></a></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Using the API</span> </div></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/resources/pay-button-api" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/resources/pay-button-api" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/resources/pay-button-api" ><span class="devsite-nav-text" tooltip>PayButton API</span></a></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/recipes/pay-from-notification" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/recipes/pay-from-notification" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/recipes/pay-from-notification" ><span class="devsite-nav-text" tooltip>Pay from a notification</span></a></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/resources/payment-data-cryptography" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/resources/payment-data-cryptography" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/resources/payment-data-cryptography" ><span class="devsite-nav-text" tooltip>Payment data cryptography</span></a></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/resources/update-to-latest-version" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/resources/update-to-latest-version" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/resources/update-to-latest-version" ><span class="devsite-nav-text" tooltip>Update to latest API version</span></a></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Product features</span> </div></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/resources/bnpl" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/resources/bnpl" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/resources/bnpl" ><span class="devsite-nav-text" tooltip>Buy now, pay later</span></a></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/resources/shift-liability-to-issuer" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/resources/shift-liability-to-issuer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/resources/shift-liability-to-issuer" ><span class="devsite-nav-text" tooltip>Shift liability to issuer</span></a></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/resources/sca" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/resources/sca" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/resources/sca" ><span class="devsite-nav-text" tooltip>Strong customer authentication</span></a></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Best practices</span> </div></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/brand-guidelines" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/brand-guidelines" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/brand-guidelines" ><span class="devsite-nav-text" tooltip>Brand guidelines</span></a></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/ux-best-practices" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/ux-best-practices" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/ux-best-practices" ><span class="devsite-nav-text" tooltip>UX best practices</span></a></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Test and troubleshoot</span> </div></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/test-and-deploy/integration-checklist" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/test-and-deploy/integration-checklist" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/test-and-deploy/integration-checklist" ><span class="devsite-nav-text" tooltip>Integration checklist</span></a></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/resources/test-card-suite" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/resources/test-card-suite" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/resources/test-card-suite" ><span class="devsite-nav-text" tooltip>Test with sample credit cards</span></a></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/resources/sample-tokens" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/resources/sample-tokens" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/resources/sample-tokens" ><span class="devsite-nav-text" tooltip>Test with sample tokens</span></a></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/resources/troubleshooting" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/resources/troubleshooting" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/resources/troubleshooting" ><span class="devsite-nav-text" tooltip>Troubleshooting</span></a></li> <li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Publish</span> </div></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/resources/google-pay-disclosure-requirements" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/resources/google-pay-disclosure-requirements" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/resources/google-pay-disclosure-requirements" ><span class="devsite-nav-text" tooltip>Prepare for Google Play data disclosure requirements</span></a></li> <li class="devsite-nav-item"><a href="/pay/api/android/guides/test-and-deploy/publish-your-integration" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /pay/api/android/guides/test-and-deploy/publish-your-integration" track-type="bookNav" track-name="click" track-metadata-eventdetail="/pay/api/android/guides/test-and-deploy/publish-your-integration" ><span class="devsite-nav-text" tooltip>Publish your integration</span></a></li> </ul> <ul class="devsite-nav-list" menu="Payments" aria-label="Side menu" hidden> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > </span> </span> </li> <li class="devsite-nav-item"> <a href="/pay/api/android/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/api/web/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Web" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Web </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="India" aria-label="Side menu" hidden> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > </span> </span> </li> <li class="devsite-nav-item"> <a href="/pay/india/api/android/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Android" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Android </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/india/api/ios/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: iOS" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > iOS </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/india/api/web/intro" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Web" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Web </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/india/api/otherapis/omnichannel/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Omnichannel" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Omnichannel </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/india/api/merchant-sdk/guides/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Merchant SDK" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Merchant SDK </span> </a> </li> <li class="devsite-nav-item"> <a href="/pay/india/api/psp/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: PSP APIs" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > PSP APIs </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="Community" aria-label="Side menu" hidden> <li class="devsite-nav-item"> <a href="https://github.com/google-pay" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: GitHub" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > GitHub </span> </a> </li> <li class="devsite-nav-item"> <a href="https://twitter.com/googlepaydevs" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: X (Twitter)" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > X (Twitter) </span> </a> </li> <li class="devsite-nav-item"> <a href="https://goo.gle/payments-dev-community" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Discord" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Discord </span> </a> </li> <li class="devsite-nav-item"> <a href="https://stackoverflow.com/questions/tagged/google-pay" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: StackOverflow" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > StackOverflow </span> </a> </li> </ul> </div> </div> </nav> </devsite-book-nav> <section id="gc-wrapper"> <main role="main" class="devsite-main-content" has-book-nav > <devsite-content> <article class="devsite-article"><style> /* Styles inlined from /style/css/styleguide.css */ .example { margin-left: 30px; } .example-heading { margin-top: 0; margin-bottom: -10px; } .indent2 { margin-left: 35px; } /* set up an icon and color for dontuse */ .icon-dontuse::before { font:normal normal normal 24px/1 Material Icons; -webkit-font-feature-settings:"liga"; font-feature-settings:"liga"; -moz-osx-font-smoothing:grayscale; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; text-transform:none; word-wrap:normal; margin-right: 0; vertical-align:middle; } .icon-dontuse:before { content: "error"; } .icon-dontuse { color: #ad0303; margin-right: 2px; } /* set up an icon and color for avoid */ .icon-avoid::before { font:normal normal normal 24px/1 Material Icons; -webkit-font-feature-settings:"liga"; font-feature-settings:"liga"; -moz-osx-font-smoothing:grayscale; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; text-transform:none; word-wrap:normal; margin-right: 0; vertical-align:middle; } .icon-avoid:before { content: "warning"; } .icon-avoid { color: #e07b00; margin-right: 2px; } ol.upperalpha { list-style-type: upper-alpha; } table { border-bottom-style: solid; } img.inline-icon { height: 20px; /* match line height */ vertical-align: sub; } .internal-only { background-color: #fff4e6; padding: 4px 15px; border: 1px solid black; } tr.internal-only td { background-color: #fff4e6; padding: 4px 15px; border: 1px solid black; } .internal-only + .internal-only { margin-top: 15px; } section.internal-only { margin-top: 15px; } section.internal-only aside, div.internal-only aside { padding-top: 15px; margin-left: 0 !important; margin-right: 0 !important; } section.internal-only h2, section.internal-only h3 { margin-top: 20px; } dt.internal-only { margin-bottom: 0; } dd.internal-only, p.internal-only, li.internal-only { padding-top: 12px; padding-bottom: 10px; padding-left: 40px; margin-top: 0; margin-bottom: 0; } .internal-only i { font-style: normal; } /* set up an icon for class android */ .icon-android::before { font:normal normal normal 24px/1 Material Icons; -webkit-font-feature-settings:"liga"; font-feature-settings:"liga"; -moz-osx-font-smoothing:grayscale; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; text-transform:none; word-wrap:normal; margin-right:0; vertical-align:middle; } .icon-android::before { content: "android"; } .icon-android { color: #a4c639; margin-right: 2px; } /* set up an icon for class cloud */ .icon-cloud{ text-decoration:none; padding-left:20px; padding-right:6px; } .icon-cloud:before{ content: ''; background:url('https://www.gstatic.com/images/branding/productlogos/google_cloud/v8/web-24dp/logo_google_cloud_color_1x_web_24dp.png'); background-size:cover; position:absolute; width:24px; height:24px; margin-left:-20px; text-rendering:optimizeLegibility; text-transform:none; word-wrap:normal; margin-right: 4px; vertical-align:middle; } th.narrow { width: 20%; } /* set up an icon for class workspace */ .icon-workspace{ text-decoration:none; padding-left:20px; padding-right:6px; } .icon-workspace:before{ content: ''; background:url('https://www.gstatic.com/images/branding/productlogos/googleg/v6/web-24dp/logo_googleg_color_1x_web_24dp.png'); background-size:cover; position:absolute; width:24px; height:24px; margin-left:-20px; text-rendering:optimizeLegibility; text-transform:none; word-wrap:normal; margin-right: 4px; vertical-align:middle; } th.narrow { width: 20%; } /* Add vertical space and separators to the word list. */ section.separated dt { border-top: 1px solid #cccccc; padding-top: 1em; } section.separated h3 { border-top: 2px solid #666666; padding-top: 1em; } section.separated dl > div.internal-only { border-top: 5px double black; } section.separated dl > div.internal-only dt { border-top: none; } </style> <div class="devsite-article-meta nocontent" role="navigation"> <ul class="devsite-breadcrumb-list" aria-label="Breadcrumb"> <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="" > Home </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/products" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="2" track-type="globalNav" track-name="breadcrumb" track-metadata-position="2" track-metadata-eventdetail="" > Products </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/pay" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="3" track-type="globalNav" track-name="breadcrumb" track-metadata-position="3" track-metadata-eventdetail="Google Pay" > Google Pay </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/pay/api" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="4" track-type="globalNav" track-name="breadcrumb" track-metadata-position="4" track-metadata-eventdetail="Google Pay API" > Google Pay for Payments </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/pay/api/android/overview" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="5" track-type="globalNav" track-name="breadcrumb" track-metadata-position="5" track-metadata-eventdetail="Google Pay API for Android" > Android </a> </li> </ul> <devsite-thumb-rating position="header"> </devsite-thumb-rating> </div> <h1 class="devsite-page-title" tabindex="-1"> Integration checklist </h1> <devsite-feature-tooltip ack-key="AckCollectionsBookmarkTooltipDismiss" analytics-category="Site-Wide Custom Events" analytics-action-show="Callout Profile displayed" analytics-action-close="Callout Profile dismissed" analytics-label="Create Collection Callout" class="devsite-page-bookmark-tooltip nocontent" dismiss-button="true" id="devsite-collections-dropdown" dismiss-button-text="Dismiss" close-button-text="Got it"> <devsite-bookmark></devsite-bookmark> <span slot="popout-heading"> Stay organized with collections </span> <span slot="popout-contents"> Save and categorize content based on your preferences. </span> </devsite-feature-tooltip> <div class="devsite-page-title-meta"><devsite-view-release-notes></devsite-view-release-notes></div> <devsite-toc class="devsite-nav" depth="2" devsite-toc-embedded > </devsite-toc> <div class="devsite-article-body clearfix "> <!-- Define name of the body that you define in the files that use this template --> <p>Use the following checklist to ensure you've completed all of the required steps in your Android integration.</p> <h2 id="about-the-test-environment" data-text="About the test environment" tabindex="-1">About the test environment</h2> <p>Our test environment doesn't return live chargeable tokens in the <code translate="no" dir="ltr">PaymentData</code> response, but the test environment allows us to test elements of your purchase:</p> <ul> <li>Confirmation pages</li> <li>Receipts</li> <li>Billing address (optional)</li> <li>Billing phone number (optional)</li> <li>Shipping address (optional)</li> <li>Email address (optional)</li> </ul> <p>An <code translate="no" dir="ltr">Unrecognized App</code> error appears on the Google Pay payment sheet until your app has production access.</p> <p>The value of the environment parameter from <a href="/android/reference/com/google/android/gms/wallet/Wallet.WalletOptions">WalletOptions</a> indicates whether the server runs in a production or in a test environment. The environment value can be one of the following:</p> <ul> <li><code translate="no" dir="ltr">WalletConstants.ENVIRONMENT_PRODUCTION</code></li> <li><code translate="no" dir="ltr">WalletConstants.ENVIRONMENT_TEST</code></li> </ul> <p>For testing and development, use <code translate="no" dir="ltr">WalletConstants.ENVIRONMENT_TEST</code>.</p> <h2 id="testing-your-integration" data-text="Test your integration" tabindex="-1">Test your integration</h2> <p> Before you submit your integration to Google for validation in <code translate="no" dir="ltr">ENVIRONMENT_TEST</code>, ensure that you've fulfilled the exit criteria for each of the following functional and brand checks. </p> <table> <tr> <th colspan="2"><h3 id="basics" data-text="1. Basics" tabindex="-1">1. Basics</h3></th> </tr> <tr> <td><input type="checkbox"></td> <td>Ensure that your current risk checks and controls for card or PAN transactions are also applied to the Google Pay transactions. Google Pay validation and fraud checks aren't intended to replace your risk management processes.</td> </tr> <tr> <td><input type="checkbox"></td> <td>If you selectively trigger 3D Secure (step-up authentication) for normal card transactions based on risk criteria, be sure to use the same risk criteria to trigger 3D Secure for Google Pay PAN <code translate="no" dir="ltr">PAN_ONLY</code> transactions.</td> </tr> <tr> <td><input type="checkbox"></td> <td>Ensure that you've read and are ready to accept our <a href="https://payments.developers.google.com/terms/sellertos" class="external">Terms of Service</a>. Registration with the Google Pay API requires that you have access to the account owner email address of your Android application.</td> </tr> <tr> <td><input type="checkbox"></td> <td>Use the data received from the Google Pay API to process transactions only. All other use cases require separate, express consent from the user.</td> </tr> <tr> <td><input type="checkbox"></td> <td>Confirm the payment card authentication and card networks are accepted by the payment processor in your country.</td> </tr> <tr> <td><input type="checkbox"></td> <td>If you complete a <a href="/pay/api/android/reference/request-objects#direct"><code translate="no" dir="ltr">DIRECT</code></a> <code translate="no" dir="ltr">tokenizationSpecification</code> <code translate="no" dir="ltr">type</code> integration, you must annually rotate your public encryption key and provide PCI Attestation to Google via the <a href="https://pay.google.com/business/console?utm_source=devsite&utm_medium=devsite&utm_campaign=devsite">Google Pay & Wallet Console</a>. PCI Attestation can be submitted by a third-party or Qualified Security Assessor certified by the <a href="https://www.pcisecuritystandards.org" class="external">PCI Security Standards Council</a>, and approved by an <a href="https://www.pcisecuritystandards.org/assessors_and_solutions/approved_scanning_vendors?mode=list&page=2" class="external">Approved Vendor</a> or <a href="https://www.pcisecuritystandards.org/assessors_and_solutions/qualified_security_assessors" class="external">Qualified Assessor</a>. </td> </tr> <tr> <th colspan="2"><h3 id="branding-testing" data-text="2. Branding tests" tabindex="-1">2. Branding tests</h3></th> </tr> <tr> <td><input type="checkbox"></td> <td>Create the Google Pay payment button using the <a href="/pay/api/android/reference/client#PayButton">PayButton API</a> to adhere to all elements of our <a href="/pay/api/android/guides/brand-guidelines">Branding guidelines</a>.</td> </tr> <tr> <td><input type="checkbox"></td> <td>Ensure the Google Pay payment button only appears after your app has confirmed the user's ability to pay through the <a href="/android/reference/com/google/android/gms/wallet/PaymentsClient#isReadyToPay(com.google.android.gms.wallet.IsReadyToPayRequest)"> <code translate="no" dir="ltr">isReadyToPay()</code></a> function.</td> </tr> <tr> <td><input type="checkbox"></td> <td>Confirm that the displayed Google Pay payment button dimensions match similar buttons and elements on the page.</td> </tr> <tr> <td><input type="checkbox"></td> <td>Choose an appropriate button based on the background color of the area where it's intended to appear.</td> </tr> <tr> <th colspan="2"><h3 id="functional-testing" data-text="3. Functional tests" tabindex="-1">3. Functional tests</h3></th> </tr> <tr> <td><input type="checkbox"></td> <td><aside class="key-point"><b>Key Point:</b> You can now leverage our <a href="/pay/api/android/guides/resources/test-card-suite">new test card suite</a> to complete the following checklist.</aside> <p>When you request a <code translate="no" dir="ltr">CARD</code> payment method type with <code translate="no" dir="ltr">PAN_ONLY</code> card authentication, complete the cards on file test:</p> <ol> <li>If applicable, remove all cards from the <a href="https://play.google.com/store/apps/details?id=com.google.android.apps.walletnfcrel" class="external">Google Wallet application</a>.</li> <li>If applicable, remove all cards on file from <code translate="no" dir="ltr">pay.google.com</code>.</li> <li>Return to your integration.</li> <li>Click <b>Google Pay</b>.</li> <li>Validate that you see the option to add a card.</li> <li>Add a card from a supported network, as defined in <a href="/pay/api/android/reference/request-objects#CardParameters"><code translate="no" dir="ltr">allowedCardNetworks</code></a>.</li> <li>Validate that you see the added card with a network logo in the selector.</li></ol></td> </tr> <tr> <td><input type="checkbox"></td> <td><p>When you request a <code translate="no" dir="ltr">CARD</code> payment method type with <code translate="no" dir="ltr">CRYPTOGRAM_3DS</code> card authentication, complete the Android device token test:</p> <ol> <li>Check that your card <a href="https://support.google.com/pay/answer/7454247" class="external">issuer is supported</a>, and add an eligible card in the <a href="https://play.google.com/store/apps/details?id=com.google.android.apps.walletnfcrel" class="external">Google Wallet application</a>.</li> <li>Return to your integration.</li> <li>Click <b>Google Pay</b>.</li> <li>Validate that you see the added card with card art in the chooser.</li> </ol> <p>If you've confirmed that your processor supports <code translate="no" dir="ltr">CRYPTOGRAM_3DS</code> card authentication, you might proceed, even if <code translate="no" dir="ltr">CRYPTOGRAM_3DS</code> card authentication isn't available to you as an Android user or cardholder.</p></td> </tr> <tr> <td><input type="checkbox"></td> <td><p>If you require a shipping address, test processing of the <a href="/pay/api/android/reference/response-objects#Address"> shipping address</a> in varied states of completion. Try the following methods:</p> <ul> <li>Test variances on a full name to be parsed into structured fields, such as John, John Doe, and Jane Doe Smith.</li> <li>Accurately parse all address lines returned by the Google Pay API, which might exceed the total number of address lines typically collected in your standard checkout flow.</li> <li>Verify that the returned country component of the address matches your site's <a href="/pay/api/android/reference/request-objects#ShippingAddressParameters">supported shipping destinations</a>. If you specified shipping restrictions, enter an unsupported shipping address and verify it's not allowed in the Google Pay payment sheet.</li></ul></td> </tr> <tr> <td><input type="checkbox"></td> <td>If you require a telephone number, test the parse and storage of the telephone number to the data standards of your app for different formats such as +14155551212, 14155551212, (415) 555-1212.</td> </tr> <tr> <td><input type="checkbox"></td> <td>Ensure that Google Pay is displayed on parity with other third party payment methods.</td> </tr> <tr> <td><input type="checkbox"></td> <td>For users who don't have any payment information stored on their account within your app, Google Pay should be defaulted or shown prominently as the payment method.</td> </tr> <tr> <td><input type="checkbox"></td> <td>For users who previously selected Google Pay at checkout and indicated Google Pay as their preference for payment within your app, Google Pay should be the default payment method for their subsequent purchase.</td> </tr> <tr> <td><input type="checkbox"></td> <td>A final price must be displayed to the user before the transaction is processed. If the amount to be charged has varied based on data received from the Google Pay API you're expected to show a confirmation page with a final price.</td> </tr> </table> <devsite-hats-survey class="nocontent" hats-id="4NW8RMX3c0txz2edqks0X7KTJD4r" listnr-id="5165057"></devsite-hats-survey> </div> <devsite-recommendations display="in-page" hidden yield> </devsite-recommendations> <devsite-thumb-rating position="footer"> </devsite-thumb-rating> <devsite-recommendations id="recommendations-link" yield></devsite-recommendations> <div class="devsite-floating-action-buttons"> </div> </article> <devsite-content-footer class="nocontent"> <p>Except as otherwise noted, the content of this page is licensed under the <a href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 License</a>, and code samples are licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache 2.0 License</a>. For details, see the <a href="https://developers.google.com/site-policies">Google Developers Site Policies</a>. Java is a registered trademark of Oracle and/or its affiliates.</p> <p>Last updated 2024-11-21 UTC.</p> </devsite-content-footer> <devsite-notification > </devsite-notification> <div class="devsite-content-data"> <template class="devsite-content-data-template"> [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-11-21 UTC."],[],[]] </template> </div> </devsite-content> </main> <devsite-footer-promos class="devsite-footer"> </devsite-footer-promos> <devsite-footer-linkboxes class="devsite-footer"> <nav class="devsite-footer-linkboxes nocontent" aria-label="Footer links"> <ul class="devsite-footer-linkboxes-list"> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Product Info</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="https://payments.developers.google.com/terms/aup" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Acceptable Use Policy </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://payments.developers.google.com/terms/sellertos" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Terms of Service </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://play.google.com/about/monetization-ads/payments/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 3)" > Google Play Developer Policy - Payments </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Support</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="/pay/api/android/support/how-to-get-help" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > How to get help with the Google Pay API </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Related Links</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="/pay/save" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 1)" > Save to Google Pay </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/gmail/markup/reference/order" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Link (index 2)" > Gmail order markup </a> </li> </ul> </li> </ul> </nav> </devsite-footer-linkboxes> <devsite-footer-utility class="devsite-footer"> <div class="devsite-footer-utility nocontent"> <nav class="devsite-footer-sites" aria-label="Other Google Developers websites"> <a href="https://developers.google.com/" class="devsite-footer-sites-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Developers Link"> <picture> <img class="devsite-footer-sites-logo" src="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/lockup-google-for-developers.svg" loading="lazy" alt="Google Developers"> </picture> </a> <ul class="devsite-footer-sites-list"> <li class="devsite-footer-sites-item"> <a href="//developer.android.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Android Link" > Android </a> </li> <li class="devsite-footer-sites-item"> <a href="//developer.chrome.com/home" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Chrome Link" > Chrome </a> </li> <li class="devsite-footer-sites-item"> <a href="//firebase.google.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Firebase Link" > Firebase </a> </li> <li class="devsite-footer-sites-item"> <a href="//cloud.google.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Cloud Platform Link" > Google Cloud Platform </a> </li> <li class="devsite-footer-sites-item"> <a href="//ai.google.dev/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google AI Link" > Google AI </a> </li> <li class="devsite-footer-sites-item"> <a href="/products" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer All products Link" > All products </a> </li> </ul> </nav> <nav class="devsite-footer-utility-links" aria-label="Utility links"> <ul class="devsite-footer-utility-list"> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="/terms/site-terms" data-category="Site-Wide Custom Events" data-label="Footer Terms link" > Terms </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//policies.google.com/privacy" data-category="Site-Wide Custom Events" data-label="Footer Privacy link" > Privacy </a> </li> <li class="devsite-footer-utility-item glue-cookie-notification-bar-control"> <a class="devsite-footer-utility-link gc-analytics-event" href="#" data-category="Site-Wide Custom Events" data-label="Footer Manage cookies link" aria-hidden="true" > Manage cookies </a> </li> <li class="devsite-footer-utility-item devsite-footer-utility-button"> <span class="devsite-footer-utility-description">Sign up for the Google for Developers newsletter</span> <a class="devsite-footer-utility-link gc-analytics-event" href="/newsletter/subscribe" data-category="Site-Wide Custom Events" data-label="Footer Subscribe link" > Subscribe </a> </li> </ul> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es" >Español</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="pl" >Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw" >中文 – 繁體</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> </nav> </div> </devsite-footer-utility> <devsite-panel></devsite-panel> <devsite-concierge data-info-panel data-ai-panel data-api-explorer-panel > </devsite-concierge> </section></section> <devsite-sitemask></devsite-sitemask> <devsite-snackbar></devsite-snackbar> <devsite-tooltip ></devsite-tooltip> <devsite-heading-link></devsite-heading-link> <devsite-analytics> <script type="application/json" analytics>[{&#34;dimensions&#34;: {&#34;dimension4&#34;: &#34;Google Pay API for Android&#34;, &#34;dimension3&#34;: false, &#34;dimension11&#34;: false, &#34;dimension6&#34;: &#34;en&#34;, &#34;dimension5&#34;: &#34;en&#34;, &#34;dimension1&#34;: &#34;Signed out&#34;}, &#34;gaid&#34;: &#34;UA-24532603-1&#34;, &#34;metrics&#34;: {&#34;ratings_count&#34;: &#34;metric2&#34;, &#34;ratings_value&#34;: &#34;metric1&#34;}, &#34;purpose&#34;: 1}, {&#34;dimensions&#34;: {&#34;dimension4&#34;: &#34;Google Pay API for Android&#34;, &#34;dimension3&#34;: false, &#34;dimension11&#34;: false, &#34;dimension6&#34;: &#34;en&#34;, &#34;dimension5&#34;: &#34;en&#34;, &#34;dimension1&#34;: &#34;Signed out&#34;}, &#34;gaid&#34;: &#34;UA-22847105-24&#34;, &#34;metrics&#34;: {&#34;ratings_count&#34;: &#34;metric2&#34;, &#34;ratings_value&#34;: &#34;metric1&#34;}, &#34;purpose&#34;: 0}]</script> <script type="application/json" tag-management>{&#34;at&#34;: &#34;True&#34;, &#34;ga4&#34;: [{&#34;id&#34;: &#34;G-272J68FCRF&#34;, &#34;purpose&#34;: 1}, {&#34;id&#34;: &#34;G-H8SZV3J6N1&#34;, &#34;purpose&#34;: 0}], &#34;ga4p&#34;: [{&#34;id&#34;: &#34;G-272J68FCRF&#34;, &#34;purpose&#34;: 1}], &#34;gtm&#34;: [], &#34;parameters&#34;: {&#34;internalUser&#34;: &#34;False&#34;, &#34;language&#34;: {&#34;machineTranslated&#34;: &#34;False&#34;, &#34;requested&#34;: &#34;en&#34;, &#34;served&#34;: &#34;en&#34;}, &#34;pageType&#34;: &#34;article&#34;, &#34;projectName&#34;: &#34;Google Pay API for Android&#34;, &#34;signedIn&#34;: &#34;False&#34;, &#34;tenant&#34;: &#34;developers&#34;, &#34;recommendations&#34;: {&#34;sourcePage&#34;: &#34;&#34;, &#34;sourceType&#34;: 0, &#34;sourceRank&#34;: 0, &#34;sourceIdenticalDescriptions&#34;: 0, &#34;sourceTitleWords&#34;: 0, &#34;sourceDescriptionWords&#34;: 0, &#34;experiment&#34;: &#34;&#34;}, &#34;experiment&#34;: {&#34;ids&#34;: &#34;&#34;}}}</script> </devsite-analytics> <devsite-badger></devsite-badger> <script nonce="hafuDX/IUoepKjCzYFFfVGLH7HMRng"> (function(d,e,v,s,i,t,E){d['GoogleDevelopersObject']=i; t=e.createElement(v);t.async=1;t.src=s;E=e.getElementsByTagName(v)[0]; E.parentNode.insertBefore(t,E);})(window, document, 'script', 'https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/js/app_loader.js', '[1,"en",null,"/js/devsite_app_module.js","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers","https://developers-dot-devsite-v2-prod.appspot.com",null,null,["/_pwa/developers/manifest.json","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/images/video-placeholder.svg","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/favicon-new.png","https://fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"],1,null,[1,6,8,12,14,17,21,25,50,52,63,70,75,76,80,87,91,92,93,97,98,100,101,102,103,104,105,107,108,109,110,112,113,117,118,120,122,124,125,126,127,129,130,131,132,133,134,135,136,138,140,141,147,148,149,151,152,156,157,158,159,161,163,164,168,169,170,179,180,182,183,186,191,193,196],"AIzaSyAP-jjEJBzmIyKR4F-3XITp8yM9T1gEEI8","AIzaSyB6xiKGDR5O3Ak2okS4rLkauxGUG7XP0hg","developers.google.com","AIzaSyAQk0fBONSGUqCNznf6Krs82Ap1-NV6J4o","AIzaSyCCxcqdrZ_7QMeLCRY20bh_SXdAYqy70KY",null,null,null,["Profiles__enable_profile_collections","Profiles__enable_page_saving","Profiles__enable_public_developer_profiles","Experiments__reqs_query_experiments","Search__enable_ai_search_summaries","Cloud__enable_legacy_calculator_redirect","Profiles__enable_awarding_url","MiscFeatureFlags__enable_project_variables","EngEduTelemetry__enable_engedu_telemetry","CloudShell__cloud_shell_button","CloudShell__cloud_code_overflow_menu","Search__enable_dynamic_content_confidential_banner","Analytics__enable_clearcut_logging","Cloud__enable_cloud_facet_chat","MiscFeatureFlags__enable_explain_this_code","Profiles__enable_complete_playlist_endpoint","Profiles__enable_dashboard_curated_recommendations","TpcFeatures__enable_required_headers","Cloud__enable_llm_concierge_chat","Cloud__enable_cloud_shell","Search__enable_page_map","MiscFeatureFlags__enable_firebase_utm","MiscFeatureFlags__enable_view_transitions","DevPro__enable_developer_subscriptions","TpcFeatures__enable_mirror_tenant_redirects","Cloud__enable_cloudx_ping","Profiles__require_profile_eligibility_for_signin","Profiles__enable_completecodelab_endpoint","Cloud__enable_cloud_dlp_service","Significatio__enable_by_tenant","Cloud__enable_cloudx_experiment_ids","BookNav__enable_tenant_cache_key","MiscFeatureFlags__developers_footer_image","Search__enable_ai_search_summaries_restricted","Cloud__enable_cloud_shell_fte_user_flow","Profiles__enable_developer_profiles_callout","Profiles__enable_recognition_badges","Cloud__enable_free_trial_server_call","MiscFeatureFlags__developers_footer_dark_image","Concierge__enable_concierge","MiscFeatureFlags__emergency_css","Search__enable_suggestions_from_borg","DevPro__enable_cloud_innovators_plus","MiscFeatureFlags__enable_variable_operator","Concierge__enable_concierge_restricted","Profiles__enable_release_notes_notifications","Concierge__enable_pushui","Search__enable_ai_eligibility_checks"],null,null,"AIzaSyBLEMok-5suZ67qRPzx0qUtbnLmyT_kCVE","https://developerscontentserving-pa.clients6.google.com","AIzaSyCM4QpTRSqP5qI4Dvjt4OAScIN8sOUlO-k","https://developerscontentsearch-pa.clients6.google.com",1,4,null,"https://developerprofiles-pa.clients6.google.com",[1,"developers","Google for Developers","developers.google.com",null,"developers-dot-devsite-v2-prod.appspot.com",null,null,[1,1,[1],null,null,null,null,null,null,null,null,[1],null,null,null,null,null,null,[1],[1,null,null,[1,20],"/recommendations/information"],null,null,null,[1,1,1],[1,1,null,1,1]],null,[null,null,null,null,null,null,"/images/lockup-new.svg","/images/touchicon-180-new.png",null,null,null,null,1,null,null,null,null,null,null,null,null,1,null,null,null,"/images/lockup-dark-theme-new.svg",[]],[],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[6,1,14,15,20,22,23,29,32,36],null,[[null,null,null,[3,7,10,2,39,17,4,32,24,11,12,13,34,15,25],null,null,[1,[["docType","Choose a content type",[["Tutorial",null,null,null,null,null,null,null,null,"Tutorial"],["Guide",null,null,null,null,null,null,null,null,"Guide"],["Sample",null,null,null,null,null,null,null,null,"Sample"]]],["product","Choose a product",[["Android",null,null,null,null,null,null,null,null,"Android"],["ARCore",null,null,null,null,null,null,null,null,"ARCore"],["ChromeOS",null,null,null,null,null,null,null,null,"ChromeOS"],["Firebase",null,null,null,null,null,null,null,null,"Firebase"],["Flutter",null,null,null,null,null,null,null,null,"Flutter"],["Assistant",null,null,null,null,null,null,null,null,"Google Assistant"],["GoogleCloud",null,null,null,null,null,null,null,null,"Google Cloud"],["GoogleMapsPlatform",null,null,null,null,null,null,null,null,"Google Maps Platform"],["GooglePay",null,null,null,null,null,null,null,null,"Google Pay & Google Wallet"],["GooglePlay",null,null,null,null,null,null,null,null,"Google Play"],["Tensorflow",null,null,null,null,null,null,null,null,"TensorFlow"]]],["category","Choose a topic",[["AiAndMachineLearning",null,null,null,null,null,null,null,null,"AI and Machine Learning"],["Data",null,null,null,null,null,null,null,null,"Data"],["Enterprise",null,null,null,null,null,null,null,null,"Enterprise"],["Gaming",null,null,null,null,null,null,null,null,"Gaming"],["Mobile",null,null,null,null,null,null,null,null,"Mobile"],["Web",null,null,null,null,null,null,null,null,"Web"]]]]]],[1,1],null,1],[[["UA-24532603-1"],["UA-22084204-5"],null,null,["UA-24532603-5"],null,null,[["G-272J68FCRF"],null,null,[["G-272J68FCRF",2]]],[["UA-24532603-1",2]],null,[["UA-24532603-5",2]],null,1],[[13,10],[6,5],[12,9],[1,1],[4,3],[3,2],[16,13],[15,12],[14,11],[11,8],[5,4]],[[1,1],[2,2]]],null,4,null,null,null,null,null,null,null,null,null,null,null,null,null,"developers.devsite.google"],null,"pk_live_5170syrHvgGVmSx9sBrnWtA5luvk9BwnVcvIi7HizpwauFG96WedXsuXh790rtij9AmGllqPtMLfhe2RSwD6Pn38V00uBCydV4m"]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10