Рекомендуется создать пользователя django, подключенного к клиенту stripe
Я пытаюсь создать простой веб-сайт для продажи цифровых товаров. Интерфейс - html /js, серверная часть - django (с использованием allauth, с простой регистрацией по электронной почте и пользовательской моделью пользователя), а для обработки платежей я использую stripe. Я внедрил рабочий процесс оформления заказа, в котором (анонимный) пользователь может сделать заказ через размещенный stripe checkout.
Однако, чтобы правильно обрабатывать доступ пользователя к цифровым товарам, мне нужно каким-то образом синхронизировать stripe клиент с django пользователь. Рабочий процесс, соответственно наилучшая практика для этого мне неясны.
- Должен ли я создать сеанс оформления заказа для анонимного пользователя, а затем использовать подтверждение stripe webhook для создания пользователя (возможно, отправив пользователю ссылку для входа)? (Что делать, если в письме допущена опечатка?)
- Должен ли я сначала создать локального пользователя, затем с помощью strip API создать stripe клиента (сопоставив идентификатор с метаданными) и включить customer_id в оформление заказа? (кажется неуклюжим с несколькими шагами для пользователя, когда у него еще нет учетной записи)
- Что-то еще из stripe API (PaymentIntent)?
- ...?
Каковы наилучшие методы для этого? Каковы преимущества/недостатки соответствующих подходов?
Я понимаю, что это немного расплывчато и будет зависеть от характера бизнеса, однако в качестве общей схемы "Пользователь платит, пользователь загружает" я надеюсь, что это приемлемый вопрос - также при использовании других поставщиков платежей. Я не нашел лучшей практики или обсуждения такого шаблона, например, в отношении безопасности, проверки электронной почты и т.д.