Ми почали впроваджувати Stripe на Redsmin (один з наших проектів), і я думаю, що ми, можливо, щось пропустили. Ось як це працює:
Щоб скористатися нашим продуктом, користувач повинен вибрати тариф (безкоштовно, s, m, xl, xxl ...), потім ввести логін / пароль, а потім добре пройти безкоштовну 30-денну пробну версію. Коли користувач подає форму, наш сервер викликає Stripe create_customer із зазначеним планом і без кредитної картки (оскільки ми хочемо запропонувати 30 днів безкоштовно, не вимагаючи кредитної картки), і ми оновлюємо модель користувача на нашій стороні з поверненими
customer_id
таsubscription_id
.Ми створили веб-хук для прийому подій у смужку, тому через 30 днів наш веб-хук повинен отримати
customer.subscription.updated
подію зobject.status == active
. Я правий?Однак, оскільки ми не вказали відповідну картку для користувача під час реєстрації, ми повинні швидко отримати після іншої
customer.subscription.updated
події зobject.status == unpaid
правильним? Потім на нашій стороні ми деактивуємо обліковий запис користувача і змушуємо його перейти на нашу сторінку вибору плану.Відтепер користувач може вибрати безкоштовний тарифний план або один із наших преміум-планів:
# Сценарій 1 Якщо користувач вибирає безкоштовний план, ми просто активуємо його рахунок на нашій стороні і більше нічого не робимо, оскільки ми налаштували безкоштовний план у смужку на 0 доларів. Чи ми застосували правильний процес за допомогою нашого безкоштовного плану? Чи є кращі способи?
# Сценарій 2 Якщо користувач вибирає преміум-план, ми перенаправляємо його на форму кредитної картки, яка потім буде надіслана Stripe, і ми оновлюємо рахунок клієнта stripe тимчасовим маркером картки. Що нам робити далі? :
- Чи слід нам чекати, коли Stripe надішле нам подію? Якщо так, то яка подія?
customer.subscription.updated
?charge.succeeded
? Якою буде тоді цінністьobject.status
? - Чи слід нам безпосередньо активувати обліковий запис користувача на нашій стороні і чекати підтвердження з смуги? Якщо так, то якою буде назва події та дані, на які нам слід почекати?
- Чи слід нам чекати, коли Stripe надішле нам подію? Якщо так, то яка подія?