Solución:
La solución es utilizar el asStripeCustomer
método:
// Retrieve the timestamp from Stripe
$timestamp = $user->asStripeCustomer()["subscriptions"]->data[0]["current_period_end"];
// Cast to Carbon instance and return
return CarbonCarbon::createFromTimeStamp($timestamp)->toFormattedDateString();
Tenga en cuenta que solo he probado esto con un usuario que tiene una única suscripción: data[0]
.
Es posible que deba modificar este código para varias suscripciones o si el usuario ha cancelado e iniciado otra suscripción.
Sobre la base de las respuestas anteriores, esto es lo que me funciona:
private function getSubscriptionRenewDate($plan)
{
$sub = Auth::user()->subscription($plan)->asStripeSubscription();
return Carbon::createFromTimeStamp($sub->current_period_end)->format('F jS, Y');
}
Las suscripciones también tienen un ->asStripeSubscription()
método que le da acceso a los valores solo para esa suscripción. Entonces podrías hacer:
// Retrieve the timestamp from Stripe
$timestamp = $subscription->current_period_end;
// Cast to Carbon instance and return
return CarbonCarbon::createFromTimeStamp($timestamp)->toFormattedDateString();
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)