Интерактивные демоверсии Google Pay
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
На этой странице доступны интерактивные демоверсии Google Pay на JavaScript. Вы можете изменять код в JSFiddle.
Простой пример
Ниже представлен простой пример работы кнопки Google Pay. Подробная информация доступна в комментариях в коде.
Ниже представлен пример того, как можно изменять размер кнопки Google Pay. Задайте значение fill
для свойства buttonSizeMode
в запросе createButton
, а затем укажите размер #container div
.
Пример с авторизацией платежей
Ниже показано, как можно авторизовать платеж перед обработкой.
Если авторизацию выполнить не удастся, пользователь сможет изменить способ оплаты.
Обработка запроса авторизации платежа происходит следующим образом:
- В объекте
PaymentOptions
регистрируется обратный вызов onPaymentAuthorized()
.
- Вызывается функция
loadPaymentData()
с намерением обратного вызова PAYMENT_AUTHORIZATION
.
- Добавляется обработчик обратных вызовов
onPaymentAuthorized()
.
Нажмите на ссылку Изменить в JSFiddle, чтобы поэкспериментировать с кодом.
Пример с динамическим обновлением цены
Функция динамического обновления цен позволяет динамически корректировать итоговую цену на основе адреса и других параметров доставки.
Вот как происходит настройка динамического обновления цен:
- В объекте
PaymentOptions
регистрируются функции обратного вызова onPaymentAuthorized
и onPaymentDataChanged
.
- Вызывается функция
loadPaymentData()
с намерениями обратного вызова. Подробные сведения можно посмотреть в этом примере.
- Внедряются функции
onPaymentAuthorized
и onPaymentDataChanged
.
Нажмите на ссылку Изменить в JSFiddle, чтобы поэкспериментировать с кодом.
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2024-10-16 UTC.
[null,null,["Последнее обновление: 2024-10-16 UTC."],[[["\u003cp\u003eThis page provides live, editable Google Pay demos using JavaScript or JSFiddle.\u003c/p\u003e\n"],["\u003cp\u003eYou can explore examples demonstrating basic Google Pay button integration, button resizing, and payment authorization.\u003c/p\u003e\n"],["\u003cp\u003eThe demos also showcase how to dynamically update prices based on shipping changes using Dynamic Price Updates.\u003c/p\u003e\n"],["\u003cp\u003eThese demos are interactive and can be edited in JSFiddle for experimentation and learning.\u003c/p\u003e\n"]]],["The content showcases live Google Pay demos editable in JavaScript or JSFiddle. Key actions include creating and resizing the Google Pay button using `createButton` with `buttonSizeMode`. It demonstrates authorizing payments before processing by registering `onPaymentAuthorized()`, calling `loadPaymentData()`, and implementing the callback handler. Dynamic price updates are enabled by registering `onPaymentAuthorized` and `onPaymentDataChanged`, and implementing both functions after calling `loadPaymentData`. Note that authorize payments and Dynamic price updates do not support liability shift.\n"],null,["# Live Google Pay demos\n\nThis page contains live Google Pay demos that you can edit in JavaScript or JSFiddle.\n| **Note**: The demos on this page will only show a button if your browser supports Google Pay.\n\nBasic example\n-------------\n\nThe following demonstrates a basic example of the Google Pay button in action. Refer to the\nadjacent code for an example on how it's constructed. \n\nButton resize example\n---------------------\n\nThe following demonstrates how you can resize the Google Pay button. Call\n`createButton` with the `buttonSizeMode` property set to `fill`,\nand then set a size on the `#container div`. \n\nAuthorize Payments example\n--------------------------\n\nThe following is an example of how you can *authorize a payment* before processing it. \n\nThe reason you might want to authorize a payment before processing it is to give the user an\nopportunity to choose a different payment method if the authorization fails.\n\nYou can handle the payment authorization request by following these instructions:\n\n1. Register an [`onPaymentAuthorized()`](/pay/api/web/reference/client#onPaymentAuthorized) callback in [`PaymentOptions`](/pay/api/web/reference/request-objects#PaymentOptions).\n2. Call the [`loadPaymentData()`](/pay/api/web/reference/client#loadPaymentData) function with the `PAYMENT_AUTHORIZATION` callback intent.\n3. Implement the [`onPaymentAuthorized()`](/pay/api/web/reference/client#onPaymentAuthorized) callback handler.\n\nClick the [Edit in JSFiddle](https://jsfiddle.net/34wxopb2/)\nlink to edit and try it out for yourself.\n\nDynamic Price Update example\n----------------------------\n\nDynamic Price Updates allows you to dynamically adjust the total price to reflect changes in shipping address and shipping option changes.\n\nUse the following steps to set up Dynamic Price Updates:\n\n1. Register both of the [`onPaymentAuthorized`](/pay/api/web/reference/client#onPaymentAuthorized) and [`onPaymentDataChanged`](/pay/api/web/reference/client#onPaymentDataChanged) callbacks in [`PaymentOptions`](/pay/api/web/reference/request-objects#PaymentOptions).\n2. Call the [`loadPaymentData()`](/pay/api/web/reference/client#loadPaymentData) function with callback intents. For details, see the corresponding [example](/pay/api/web/guides/tutorial#load).\n3. Implement [`onPaymentAuthorized`](/pay/api/web/reference/client#onPaymentAuthorized) and [`onPaymentDataChanged`](/pay/api/web/reference/client#onPaymentDataChanged).\n\nClick the [Edit in JSFiddle](https://jsfiddle.net/ynt8p152/) link to edit and try it out for yourself."]]