Intereting Posts
Синхронизировать устройства Android через время GPS? Как я могу перехватить намерение, когда пользователь открывает другое приложение? Проблемы с неправильным часовым поясом на Android Изменение внешнего вида текста в стилях и темах для приложения для Android Установить выделение в HorizontalScrollView Почему моя активность расширяет ActionBarActivity? Кнопка «ОК» в диалоговом окне «Создать новое виртуальное устройство Android (AVD)» ничего не делает Что не так с жестко запрограммированной строкой в ​​файле android xml? Android Data Binding приводит к сбою приложения при использовании тега include в не-root ViewGroup Android Studio – данные об ошибках сборки Appcompat-v23 / styles_bases.xml Здание библиотеки с градиентом, который находится в каталоге сестры Андроид Wi-Fi разрешение Не удается запустить новый проект с Android Studio Android, что должно быть точкой поворота для поворота изображения вокруг его центра базы Тема или услуги

Ошибка авторизации биллинга с помощью Google in-app billing

Я сделал приложение для Android, которое использует биллинг Google в приложении. Большая часть времени это работает очень хорошо, но некоторые пользователи, похоже, не авторизованы. В этом случае я получаю электронное письмо со следующим текстом.

Google order # XXX has been cancelled because carrier billing authorization did not succeed for your buyer. The buyer was not charged. 

Я понимаю, что это значит и что проблема не на моей стороне, но мне интересно, что именно происходит в этом случае в приложении. Выполняется ли заказ сначала и позже отменяется? Каков поток сообщений в этом случае между Google и моим приложением?

В этом сообщении нет ничего плохого. Каждая платежная транзакция состоит из двух шагов: авторизация и захват. На этапе авторизации Google Play пытается проверить, что платежный инструмент (в вашем случае это учетная запись оператора) действителен, и средств там достаточно. Если это удастся, тогда определенная сумма денег будет заблокирована на этом платежном инструменте на определенное время. Следующим шагом является захват или отмена этого разрешения. Захват означает, что деньги будут востребованы и перенесены на счет Google. Отменяет отсутствие перевода денег.

В вашем случае первый этап авторизации завершился неудачно. Обычно вы увидите отмененный ордер в Google Кошельке, но в банковских записях пользователя не будет отменена транзакция платежа . Если на этапе авторизации транзакция с платежом не выполняется, это то же самое, что транзакции вообще не было.

Что вы можете сделать, чтобы исправить это? Ничего. Это зависит от того, какой платежный инструмент используется, и если там есть достаточное количество находок. Если пользователь использует учетную запись оператора для оплаты с некоторыми ограничениями на нее, может быть отказано в авторизации, что нормально.

Применяется ли ваше приложение? Да. Он будет уведомлен о том, что платеж потерпел неудачу, и вы не должны включать оплачиваемые функции для этого пользователя. Вам не нужно ничего делать. Если пользователь захочет, он или она исправит проблему (например, пополнит свою учетную запись) и попытается снова купить.

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