Stripe Checkout - подписчик, соответствующий клиенту на мою базу данных - PullRequest
0 голосов
/ 27 января 2019

В настоящее время я пытаюсь реализовать новую проверку бета-версии Stripe с использованием только потока на стороне клиента, и я пытаюсь найти наилучший способ сопоставить клиента Stripe с пользователем в моей базе данных и получить информацию о подписке, такую ​​как дата окончания и т. д.

Из документации я могу сказать, что с новой конечной точкой checkout_beta.session_succeeded webhook я могу передать параметр client_reference_id, который имеет смысл быть моим customer_id. Эта конечная точка также дает мне идентификатор подписки. Поэтому я мог бы запросить API подписки, чтобы получить нужные мне данные.

Однако веб-крючок уже вызывает событие customer.subscription.created до этого со всей необходимой мне информацией, за исключением того, что он не содержит мой reference_id, просто ссылку на полосу customer_id.

Кажется глупым вызывать API, для которого я уже получил информацию, но кроме stripe_customer_id у меня нет возможности сопоставить их без: а) вызов API Stripe с помощью subscription_id или б) создание моей собственной таблицы базы данных с периодическими данными для хранения stripe_customer_id и информации о подписке, а затем в методе checkout_beta.session_succeeded, который сопоставляет customer_id с моим client_reference_id и соответственно обновляет мою таблицу пользователей.

Есть ли лучший подход или руководство здесь? Я думаю, что, возможно, у меня должна быть отдельная таблица user_subscription, а не хранить ее с моим пользователем сейчас, но это потребует некоторого переписывания ряда существующих SQL-запросов.

...