Механика возвратов, изменения политик магазинов и тактики защиты выручки для разработчиков приложений.
Когда ребёнок покупает набор монет на телефоне родителя, и Apple, и Google возвращают деньги, и никто из них не спрашивает вас заранее. Так это устроили регуляторы. Вот как работают эти возвраты за несанкционированные встроенные покупки в каждом магазине, что за 15-минутное окно, в котором уходят деньги, и во сколько на самом деле обходится одна такая покупка.
Читать статью
Оформите возврат встроенной покупки, и в чеке отобразится возвращаемая цена плюс налог. Этот налог никогда не был вашими деньгами. Apple и Google взимают и перечисляют его как merchant of record, а затем отменяют при возврате, не касаясь вашей доли. Вот что возврат стоит на самом деле и та единственная схема, при которой налог становится вашим.
Когда клиент переходит на более высокий тариф, магазин оформляет возврат за апгрейд подписки за неиспользованные дни старого плана, и это автоматически уменьшает вашу выручку. Вот как работают возвраты за апгрейд в App Store и Google Play, и почему Apple не передаёт сумму на ваш сервер.
Возврат, это не уменьшенная продажа, это деньги, которые магазин забирает обратно из более поздней выплаты, часто спустя недели после продажи, а иногда прямо с вашего банковского счёта. Вот когда деньги за возврат действительно уходят в App Store и Google Play, и почему ваша выплата никогда не совпадает с дашбордом.
Возврат за non-consumable, будь то пожизненная разблокировка, отключение рекламы или постоянный pro-уровень, это единственный возврат, который можно по-настоящему обратить, потому что функцию можно забрать обратно. Вот сколько это стоит в App Store и Google Play, почему Apple никогда не спрашивает вас первым и как сделать так, чтобы revoke сработал.
Уведите биллинг из App Store или Google Play, и Apple с Google перестанут заниматься вашими возвратами. Вот сколько на самом деле стоят вам возвраты при альтернативном биллинге, почему исчезают процессы проверки возвратов у магазина и кто платит, когда банк принудительно проводит чарджбэк.
Расходуемая встроенная покупка, набор монет, связка самоцветов, пачка кредитов ИИ, это единственная покупка, на доставку которой вы уже потратили деньги до того, как её попросят вернуть. Вот сколько возврат за расходуемое стоит вам в App Store и Google Play, и то единственное окно, когда ваш ответ действительно имеет значение.
Бесплатный пробный период, который переходит в платный план, это точка, где начинается большинство возвратов по подпискам, потому что клиент забыл отменить подписку, и первое, что он видит, это списание. Вот во что вам обходится возврат по бесплатному пробному периоду в App Store и Google Play, почему его редко удаётся оспорить и как его предотвратить.
Каждый возврат, который Apple и Google отправляют на ваш сервер, несёт код причины. Google Play проставляет одну из девяти причин и источник на каждой отмене, Apple отмечает, винит ли возврат ваше приложение. Вот что означает каждый код, как рассортировать их на починить, оспорить или принять, и сколько они стоят в деньгах.
Большинство возвратов средств и чарджбэков по приложениям решают Apple, Google или банк, не спрашивая вас. Вот где вы действительно сокращаете возвраты за приложения: вовремя подтверждайте покупки, доставляйте без сбоев, помечайте каждый аккаунт и отвечайте в двух окнах для доказательств до того, как деньги уйдут.
Клиенты думают, что у них есть 48 часов, чтобы получить возврат за приложение. Реальное окно гораздо длиннее. Apple принимает запросы на возврат в течение 90 дней, а банковский chargeback может отменить продажу в Google Play в течение 120 дней. Вот все таймеры, из-за которых ваша выручка остаётся обратимой, и во что обходится этот хвост.
Когда клиент просит у Apple возврат, у вас есть 12 часов, чтобы отправить данные о потреблении. Собственная документация Apple называет это одним из множества факторов, а не приговором. Вот что на самом деле меняют ваши данные, почему DECLINE все равно может закончиться возвратом и чего стоит этот сигнал в деньгах.
Google Play позволяет проставить на каждую покупку стабильный хешированный идентификатор и считывает его обратно, когда возникает спор. Настройте это, и разбор возвратного платежа привяжется к тому самому пользователю, чьё потребление вы обязаны отчитать. Пропустите, и вы будете сопоставлять голый идентификатор заказа с догадками под 24-часовым таймером.
Когда клиент не может понять, за что ваше приложение списало деньги, он звонит в банк, а не вам, и этот спор оборачивается чарджбэком. Apple показывает всё как apple.com/bill и не позволяет ничего изменить. Google Play даёт задать название в выписке. Вот сколько стоит каждый вариант и что вы контролируете.
Когда App Store отменяет уже выданный возврат средств, он ожидает, что ваш сервер восстановит доступ, который вы отозвали. Вот как работают уведомления о возврате, отклонённом возврате и отменённом возврате в App Store и Google Play, и во что обходится каждое из них, когда вы его игнорируете.
Когда клиенту возвращают деньги, и Apple, и Google возвращают свою комиссию, поэтому вы теряете не долю магазина. Вот кто платит за возврат в вашем приложении, что на самом деле уходит из вашей выплаты и почему чарджбэк обходится дороже обычного возврата.
Отмена подписки просто останавливает следующее списание, клиент сохраняет доступ до конца оплаченного периода, и никакие деньги не двигаются. Возврат отменяет уже прошедший платёж и забирает доступ вместе с ним. Вот где эти два пути расходятся, во что каждый обходится вам и почему только возврат когда-либо доходит до вашего сервера.
Расходуемые покупки, нерасходуемые покупки, автопродлеваемые подписки и непродлеваемые подписки возвращаются каждая по своим правилам. Одни можно восстановить, другие исчезают, как только потрачены, и только запрос по расходуемым и запрос по подписке вообще просят у разработчика доказательства. Вот как тип внутренней покупки, который вы продаёте, меняет то, что возврат делает с вами.
Законы о возврате средств за приложения различаются между ЕС, Великобританией и США, но для большинства продаж приложений результат один и тот же. 14-дневное право на отказ в ЕС обычно аннулируется при оформлении покупки, покупатели в США полагаются на политику магазина, и ни один законный возврат не даёт вам возможности ответить. Лишь два магазинных потока когда-либо спрашивают вашу сторону.
Дружественное мошенничество, это когда реальный клиент покупает вашу встроенную покупку, использует её, а затем сообщает банку, что платёж был ошибочным. Товар израсходован, а деньги возвращаются. Вот во что это обходится разработчику приложения, почему это явление растёт, и какое короткое окно дают вам Apple и Google, чтобы дать отпор.
Apple принимает решение о возврате в App Store примерно за два дня, но деньги могут идти до 30 дней на карту и до 60 дней на счёт телефона. Вот реальное время обработки возврата в App Store по способам оплаты, как с этим обстоит дело в Google Play и почему медленный возврат может превратиться в чарджбэк, который вы не сможете оспорить.
Apple показывает возвраты в двух отчётах, Google показывает их ещё в двух, а ваш сервер видит четвёртый. Ни одна из цифр не совпадает, и эти расхождения заложены в самой конструкции. Вот почему каждая система относит возвраты по-разному и как сверять отчёты о возвратах со своими собственными записями по транзакциям.
В Google Play вы можете вернуть часть заказа из Console, по проценту или по сумме, и разделить потерю с комиссией Google. В App Store вы не можете оформить возврат вообще. Вот как работает частичный возврат в каждом сторе, и во что он вам обходится.
Большинство мобильных приложений возвращают деньги за 2 до 5 процентов оплаченных транзакций, но Apple и Google хранят эту цифру в разных панелях. Вот где найти показатель возврата средств вашего приложения, что считается нормой по плану и категории, и во что на самом деле обходится каждый возврат после комиссий.
Apple повторяет уведомление о возврате до пяти раз, а Google Play работает через Pub/Sub с гарантией доставки не менее одного раза, поэтому один и тот же возврат может прийти на ваш сервер более одного раза. Вот как обрабатывать дублирующиеся уведомления о возвратах, не списывая баланс и не расходуя квоту API дважды.
Возврат средств по Family Sharing отменяет один платёж, но может оставить до пяти членов семьи на ваших платных функциях. Apple отправляет REVOKE и ожидает, что ваш сервер прекратит доступ. Вот как работают возвраты по семейному доступу и во что обходится один такой возврат.
Ваша обработка возвратов запускается только после того, как клиент уже ушёл, поэтому ошибка в ней остаётся невидимой, пока не начнёт стоить реальных денег. Оба магазина позволяют сначала запустить возврат в тестовой среде. Вот как протестировать возвраты за встроенные покупки в App Store и Google Play до того, как возврат станет реальным.
Возвращённая цена, это самая маленькая строка в счёте. Возврат отменяет и комиссию магазина, поэтому вы теряете свою долю, а вычисления, вызовы API, хранилище и выплаты, которые вы уже потратили, не вернуть. Возвратный платёж в Google Play после 3 августа 2026 года добавляет сверху банковскую комиссию. Вот полный счёт.
Возврат по подписке отменяет целый расчётный период, а не отдельную продажу. В App Store решение принимает Apple, а ваш сервер лишь узнаёт результат. В Google Play вы сами выбираете полный или пропорциональный возврат. Вот как каждый магазин обрабатывает возвраты по подпискам и во что вам обходится один такой возврат.
Возврат средств в App Store или Google Play оформляет магазин, и решение принимает магазин. Возвратный платеж, это когда банк клиента забирает деньги, и решает банк, без права на обжалование. Для разработчиков приложений разрыв между ними теперь стоит денег, потому что с 3 августа 2026 года Google Play перекладывает расходы по возвратным платежам на вас.
Google Play тихо перестал покрывать возвратные платежи. По заказам, размещённым 3 августа 2026 года или позже, вы возвращаете цену покупки за вычетом сервисной комиссии Play плюс банковскую комиссию по каждому оспоренному заказу. Вот что изменилось, во сколько теперь обходится один возвратный платёж и то 24-часовое окно, в котором вы можете дать отпор.
Когда Apple возвращает деньги одному из ваших клиентов, возврат уже находится внутри вашего приложения, в свойстве revocationDate транзакции, ещё до того как отработает серверная задача. Вот где обнаружение возвратов StoreKit 2 проявляется на устройстве, что говорят вам revocationDate и revocationReason, и почему клиент нужен для скорости, а сервер для истины.
Каждый возврат в App Store и Google Play запускает часы, и большинство из них идут без вас. Самое короткое окно возврата у Apple это 12 часов, окно chargeback у Google это 24, а с 3 августа 2026 года пропущенное окно chargeback это счёт, а не просто потерянная продажа. Вот каждый срок, который касается вашего аккаунта.
Google Play может отправить вашему серверу уведомление об аннулированной покупке в тот момент, когда покупка возвращена, оспорена или аннулирована. Оно несёт purchaseToken, orderId, productType и refundType и означает одно, отозвать доступ. Вот как его прочитать и подключить.
Вы можете вернуть деньги за любой заказ в Google Play моложе three years одним вызовом API, с отзывом доступа или без него. Сделав это самостоятельно, прежде чем спор превратится в возвратный платеж, вы экономите банковскую комиссию, которая с August 3, 2026 ложится на разработчиков. Вот как работает orders.refund.
Когда клиент запрашивает у Apple возврат средств, полезная нагрузка Send Consumption Information это ваш ответ. Apple сократила её с двенадцати полей до пяти: три обязательных и два необязательных. Здесь каждое поле, значения, которые оно принимает, и 12-часовое окно, в течение которого его нужно отправить.
Эндпоинт Apple Get Refund History возвращает полную историю возвратов клиента в App Store в виде подписанных транзакций. Вот каждое поле, как токен revision разбивает выдачу на страницы, почему она привязана к клиенту, а не к приложению, и во что вам обходится пропущенный возврат.
Встроенный запрос возврата Apple позволяет клиенту попросить возврат, не выходя из приложения, на листе, который Apple создаёт и рассматривает. Вот что возвращает beginRefundRequest, какие часы CONSUMPTION_REQUEST и 48 часов он запускает на вашем сервере, и стоит ли выпускать эту кнопку.
Google Play тихо аннулирует покупку, когда её возвращают или оспаривают. Voided Purchases API даёт список таких заказов, чтобы вы могли отозвать доступ. Здесь разобраны все поля, окно в 30 дней, опция отзыва, которая скрывает заказы, и во что это обходится.
Apple отправляет четыре сообщения о возврате через App Store Server Notifications V2, и большинство приложений обрабатывают только два. REFUND говорит отозвать доступ, REFUND_DECLINED означает сохранить продажу, а REFUND_REVERSED возвращает продажу и просит восстановить то, что вы отняли. Вот что требует каждое из них.
Начиная с WWDC24, каждый Apple CONSUMPTION_REQUEST несёт consumptionRequestReason, собственную заявленную причину клиента, по которой он хочет возврат. Значений пять, от UNINTENDED_PURCHASE до LEGAL, и каждое должно менять то, что вы отправляете в ответ в течение вашего 12-часового окна. Вот как прочитать каждое из них.
Когда банк отзывает платеж в Google Play, Google отправляет на ваш сервер PendingRefundReviewNotification и запускает 24-часовой отсчет. Ответьте через API ReviewRefund с предпочтением по возврату и реальными доказательствами потребления, или спор решится без вас. Вот весь процесс, поле за полем.
Apple присылает вашему серверу CONSUMPTION_REQUEST, когда клиент просит возврат, но в транзакции нет данных о том, кто он. appAccountToken это UUID, который связывает покупку с вашим пользователем. Установите его, и вы сможете ответить Apple реальными данными. Пропустите, и вам останется только гадать.
Google Play автоматически возвращает деньги и отзывает любую покупку, которую ваш сервер не подтвердил в течение трёх дней. Это сбой интеграции, а не решение клиента, и его полностью можно предотвратить. Вот точное правило, почему оно срабатывает и во что на самом деле обходится каждая потерянная продажа.
Клиент, который снова и снова оформляет возврат, это не случайность. Злоупотребление возвратами стоит вам возвращённых денег плюс тех вычислений, которые вы уже потратили, и оба магазина дают вам сигнал идентичности, appAccountToken от Apple и обфусцированный идентификатор аккаунта от Google, чтобы связать этот паттерн воедино.
И Apple, и Google могут оформить возврат средств, пока клиент сохраняет доступ к покупке. Здесь точно объясняется, когда доступ отзывается автоматически, когда это должен делать ваш сервер, и какое уведомление почти никто не обрабатывает.
Only two refund flows ever ask for your evidence: Apple's consumption request and Google Play's chargeback review. Everything else, the 48-hour Play refund, support refunds, voided purchases, unacknowledged trials, is decided without you. Here is the full map, what you can prevent, and what you can only record.
When a customer asks Apple for a refund, Apple asks you first. Here's exactly what the CONSUMPTION_REQUEST notification contains, what Apple expects back, how to answer one end to end, and why most developers silently forfeit.
Google quietly rewrote who pays when a Play purchase gets disputed with the bank. For orders placed after August 3, 2026, a lost chargeback comes out of your pocket, and you get 24 hours to fight back. What changed, what it costs, and how to be ready.
Blanket-declining every refund is as wrong as ignoring them. A field guide to measuring what refunds cost you and writing policy rules that protect revenue and your review score at the same time.