Нотатки · Перевірте свій застосунок
Три перевірки, які можна зробити у своєму застосунку.
Кожна походить від справжньої проблеми, знайденої в застосунку, зібраному з ШІ. Робіть їх у своєму застосунку, з акаунтами, заведеними для цього, а все, що стосується грошей, — у тестовому режимі, щоб жодному справжньому клієнту не списали гроші й не надіслали листа.
Дві хвилини
Чи може один акаунт відкрити чужі дані?
У демонстраційному магазині будь-який новий акаунт міг прочитати імена й адреси гостей за номером замовлення.
Уся історія цієї проблеми →- Заведіть два акаунти, A і B. Під A створіть щось приватне: замовлення, рахунок, бронювання. Під B відкрийте це за адресою чи номером. Має бути відмова.
- Тепер зробіть те саме із записом без власника, наприклад із замовленням, зробленим без входу, чи з чернеткою. Відкрийте його під B, а потім ще раз без входу.
- Якщо номери в адресі йдуть підряд, спробуйте кілька сусідніх із вашим.
- Якщо щось відкрилося, поставте тому, хто збирав застосунок, одне питання: «Які функції чи серверні маршрути читають дані з повними правами і що робить кожен із них, коли поле власника порожнє?»
П'ять хвилин
Чи може повернення бути більшим за замовлення?
У тому самому магазині на замовлення за €29,99 можна було записати повернення €500, і покупець отримував про це листа.
Уся історія цієї проблеми →- Знайдіть кожне місце, де записується повернення: сторінку в адмінці, кнопку «mark as refunded», обробник події Stripe
charge.refunded, автоматизацію, яка записує повернення в таблицю. - Введіть суму, більшу за замовлення. Її відхиляють ще до збереження чи лише повідомленням на сторінці?
- Зробіть за одним замовленням два часткові повернення, які разом перевищують сплачене.
- Відкрийте форму повернення у двох вкладках і надішліть обидві одночасно.
- Після кожної спроби подивіться на три речі: замовлення, суму повернень за місяць і лист, який отримав покупець.
Близько години
Чи збігається тариф у застосунку зі Stripe?
У демонстраційному порталі подарований тариф, призупинення, передача і незавершене видалення лишали картку платити далі.
Уся історія цієї проблеми →- Випишіть усі способи, якими у вашому застосунку може змінитися тариф, крім купівлі й скасування. Згадайте адмінку, подарований тариф, купон, призупинення чи блокування, передачу акаунта іншій людині, його видалення і все, що може зробити ваша підтримка.
- У тестовому режимі зробіть кожне з них з акаунтом, який платить. Потім відкрийте цього клієнта в кабінеті Stripe. Якщо ваш застосунок каже Free, призупинено чи видалено, а Stripe досі показує дату наступного платежу, з цієї картки спишуть гроші.
- Щоб побачити саме продовження, не чекаючи місяць, скористайтеся тестовими годинниками Stripe (test clocks): вони переводять тестову підписку вперед у часі.
- Спробуйте піти як клієнт у кожному стані: коли акаунт призупинено, щойно після передачі і коли акаунт більший, ніж дозволяє ваш безкоштовний тариф. Чи може клієнт скасувати тариф у застосунку? Чи дає це зробити сторінка оплати Stripe?
- Якщо код писав хтось інший, поставте йому одне запитання: «Перелічіть усі місця, де змінюється тариф, і для кожного скажіть, що відбувається з підпискою Stripe». Якщо хоч десь відповідь на кшталт «нічого», це і є діра.
Щось пройшло?
Напишіть, що знайшли, або надішліть посилання на код. Відповідаю поштою, дзвінок не потрібен. Ці три — лише те, що можна перевірити вручну; перевірка проходить кожну роль і кожен шлях.