Ілля Шкура
EN UK RU

Кейси · Перевірка застосунку

Оплата тарифів і застосунки для телефона, які ШІ додав до порталу: перевірені й виправлені

Зразок замовлення: портал і студії вигадані, дані тестові, Stripe у тестовому режимі, живий портал не чіпали. Оплату й застосунки зібрано в Claude Code для цього кейсу; кожна знахідка — зі справжньої перевірки збірки, на сайті й на емуляторі Android.

25проблем в оплаті тарифів і застосунках для телефона, які ШІ додав до порталу для клієнтів; 22 виправлено за три раунди

Мета

Оплата додає гроші до всього, що портал уже вміє: пробний період, перехід на більший і менший тариф, скасування, невдалий платіж, повернення, передача студії новому власнику, призупинення, тариф, який засновник дає безкоштовно. А студія, що платить у застосунку на телефоні, мусить платити через покупки самих Apple і Google, з їхніми правилами щодо посилань, входу й видалення акаунта. Питання: у тому, що здав ШІ, чи йдуть гроші за правилами засновника в кожному з цих випадків і чи приймуть застосунки магазини?

Складність

ШІ здав усе як робоче, і на звичайному шляху так і було: студія купувала тариф на сайті, продовжувала його, невдалий платіж повторювався, скасування діяло до кінця місяця. Його власні слова: «Cancelling is always allowed, even if the studio is bigger than Free allows». Помилки ховалися на менш звичних шляхах, а саме вони коштують грошей: студії, які мали платні тарифи ще до появи оплати, передача студії, подарований тариф, застосунок на телефоні й правила магазинів.

Рішення

Спершу записали таблицю грошей засновника: для кожної події, від покупки до повернення, передачі студії, призупинення чи подарованого тарифу, — що має статися з тарифом і з грошима; неясні випадки вирішував засновник. Потім кожну клітинку перевірили на Stripe у тестовому режимі, переводячи час крізь пробні періоди, продовження й повторні спроби. Застосунки запускали на емуляторі Android і звіряли з правилами App Store та Google Play щодо оплати, входу, приватності й видалення акаунта. Виправлення поверталися ШІ звичайними словами, у три раунди; у другому ШІ додав покупки самих магазинів, і кожен раунд перевіряли знову: що виправлено і що зламалося.

Результат

25 проблем у тому, що здано: 7 високих, 7 середніх, 11 низьких. Студії, які були на Studio чи Agency ще до появи оплати, лишалися на своєму тарифі задарма, а виручка засновника рахувала їх платниками; власник студії, більшої за Free, взагалі не міг скасувати тариф; після передачі студії платила далі картка попереднього власника; подарований засновником тариф і далі списував гроші з картки; застосунки відправляли власників на сторінку картки Stripe, а Google Play так продавати тариф не дозволяє, Apple — лише в App Store США; збірка для магазинів без оплати все одно пропонувала перейти на більший тариф; а клієнти не могли увійти в застосунок, бо посилання з листа впускало їх на сайт у браузері. Після трьох раундів 22 виправлено, 2 високі — частково, 1 лишено засновнику: власні листи Stripe. Самі виправлення принесли нові проблеми. Покупки в застосунку, додані в другому раунді, дали 4 високі, усі виправлено в третьому; перевірка після третього знайшла ще 2 високі й 5 середніх, у звіті вони відкриті, наприклад перехід на більший тариф карткою, для якої банк просить підтвердження, переводив оплачений Studio на Free. Справжнє замовлення продовжилося б четвертим раундом. Застосунок для iPhone перевірено лише за файлами проєкту, бо Mac не було, а покупки йшли в Test Store від RevenueCat, а не в пісочницях Apple чи Google. Одна збірка: цифри описують її, а не частку для таких застосунків.

Послуга

Така сама перевірка вашого застосунку перед магазинами

Ви надсилаєте код, а не паролі чи ключі. Кожна проблема — з прикладом того, що стається з грошима, а кожне виправлення перевіряється знову на те, що воно зламало.