Расширение Интернет-магазина Chrome при покупке приложения INTERNAL_SERVER_ERROR

Частичный успех процесса покупки Chrome InApp в расширении Chrome. Я включил файл buy.js и реализовал поток, как указано в пошаговом руководстве для Chrome здесь:

https://developer.chrome.com/webstore/payments-iap

Используя мое живое расширение, я пробежался по потоку, и он отлично работает. С моей кредитной карты списаны средства, и обратный вызов возвращается успешно, я доставляю товар. Когда я проверяю вызов google.payments.inapp.getPurchases, я вижу элемент, указанный как АКТИВНЫЙ.

Однако, когда я устанавливаю производственное/живое расширение на любой другой тестовый компьютер (у друга) и пытаюсь запустить поток google.payments.inapp.buy, я получаю один из двух результатов:

1) Серое изображение с текстом «Платежи в приложении в настоящее время недоступны. Не удалось завершить транзакцию. Повторите попытку позже».

2) Открывается пустое окно и тут же закрывается.

Обратный вызов «сбой» возвращается с ошибкой «INTERNAL_SERVER_ERROR».

Опять же, процесс покупки отлично работает в моей учетной записи Google, но не может быть успешно завершен в любой другой учетной записи. Мое собственное внутреннее отслеживание показывает, что 0% пользователей успешно совершают покупки, и это наводит меня на мысль, что ошибка широко распространена. Я знаю, что пользователи пытаются совершать покупки из-за внутреннего отслеживания, которое я настроил, но единственный доход в моей панели управления Chrome — это мои собственные пробные покупки. Что-то смешно пахнет.

Есть ли у разработчиков Chrome Webstore опыт успешных покупок в приложениях с помощью активных расширений? Помощь!




Ответы (1)


У меня были успешные платежи даже с других случайных компьютеров. Возможно, вам придется проверить следующее для потенциального исправления:

  1. Убедитесь, что элементы в приложении включены для всех, а не только для вас или тестовых пользователей.

  2. Обязательно используйте «параметры»: {env: «prod»}, где бы вы ни совершали вызовы «google.payments.inapp.*».

  3. Убедитесь, что пользователи вошли в свои браузеры, чтобы успешно получать предметы, лицензии и совершать окончательные покупки.

  4. Обязательно используйте originalId(nmmhkkegccagdldgiimedpiccmgmieda) при вызове chrome.runtime.connect() в buy.js, если нет, то это место, где он вызывает INTERNAL_SERVER_ERROR.

Надеюсь, поможет.

person Veeresh Devireddy    schedule 19.11.2016
comment
Я сталкиваюсь с высоким уровнем отказов для платежей в приложении. Пользователи получают неожиданные ошибки, но некоторые покупки проходят. Кто-нибудь испытывает что-то подобное? Когда платеж не проходит, Chrome возвращает только {request:{},response:{errorType:PURCHASE_CANCELED}}, что вы получите, если отмените окно покупки. - person Zig Mandel; 10.04.2017