Я использую Laravel Cashier вместе с Stripe для управления подписками. Пользователь будет предоставлять информацию о своей кредитной карте при регистрации, но на данный момент они не будут подписаны в конкретном плане. Поэтому я могу успешно использовать Stripe Checkout для создания объекта клиента Stripe и сохранения идентификатора клиента Stripe в моей базе данных. Но когда приходит время для того, чтобы пользователь заходил в план, я не вижу способа использовать идентификатор клиента Stripe, чтобы зарегистрировать их в желаемом плане.Laravel Cashier - Создать новую подписку с существующим объектом клиента
Конечно, я мог бы снова запросить информацию о своей кредитной карте и получить токен Stripe для использования с Laravel Cashier, но я бы хотел этого избежать, поскольку приложение уже создало объект клиента Stripe, когда они подписались, и я Я хотел бы просто использовать существующий объект клиента, чтобы заряжать свою кредитную карту, а не запрашивать номер своей карточки снова.
Чтобы попытаться проиллюстрировать то, что я пытаюсь сделать, вот некоторые примеры кода из документации Laravel:
$user->newSubscription('main', 'monthly')->create($creditCardToken);
Но то, что я хотел бы быть в состоянии сделать что-то вроде этого (обратите внимание на перейти к методу создания:
$user->newSubscription('main', 'monthly')->create($user->stripe_id);
Любые советы
Если у пользователя уже есть stripe_id, значит ли это, что у них ранее была подписка? Если это так, вы можете просто возобновить подписку, и если вы хотите изменить ее, измените ее. Или вы пытаетесь выполнить что-то еще? – Sehael
Вы можете создать пользователя полосы без плана, но с помощью кредитной карты. На самом деле, я пытаюсь сделать что-то очень похожее, поэтому добавил щедрость. – Chris