Делать что-то при успешной оплате с помощью stripe и DjangoRest
Я интегрировал stripe pay в свои проекты, так что теперь я могу совершать платежи.
Мое приложение является рекламным приложением, поэтому объявление остается активным в течение 30 дней, а затем исчезает, поэтому я хочу использовать оплату для продления срока действия объявления.
Вот вид оплаты:
class StripeCheckoutView(APIView):
def post(self, request):
try:
checkout_session = stripe.checkout.Session.create(
line_items=[
{
'price': 'price_1MPUIXGslCuRnIIuUV1ME6Kn',
'quantity': 1,
},
],
payment_method_types=['card',],
mode='payment',
success_url=settings.SITE_URL + '/?success=true&session_id={CHECKOUT_SESSION_ID}',
cancel_url=settings.SITE_URL + '/?canceled=true',
)
return redirect(checkout_session.url)
except:
return Response(
{'error': 'Something went wrong when creating stripe checkout session'},
status=status.HTTP_500_INTERNAL_SERVER_ERROR
)
модели:
class Advertise(models.Model):
owner = models.ForeignKey(User, on_delete=models.CASCADE, related_name="advertise")
category = models.CharField(max_length= 200, choices = CATEGORY)
location = models.CharField(max_length= 200, choices = LOCATIONS)
description = models.TextField(max_length=600)
price = models.FloatField(max_length=100)
expiration_date = models.DateField(default = Expire_date, blank=True, null=True)
created_at = models.DateTimeField(auto_now_add=True, blank=True, null=True)
updated_at = models.DateTimeField(auto_now=True, blank=True, null=True)
EDIT : Я хочу использовать платеж для увеличения срока действия. Таким образом, когда пользователь произвел оплату, срок действия будет 60 дней.