diff --git a/inventory/views.py b/inventory/views.py index 416d8352..d0563e6d 100644 --- a/inventory/views.py +++ b/inventory/views.py @@ -9383,15 +9383,17 @@ def payment_callback(request, dealer_slug): try: order.complete_order() - user = order.user - pricing = order.get_plan_pricing().pricing - logger.info(f"Processing order completion for {user} - upgrading to {order.plan}") - user.userplan.plan = order.plan - user.userplan.expire = datetime.now() + timedelta(days=pricing.period) - user.userplan.save() - user.save() - logger.info(f"User {user} upgraded to {order.plan} plan successfully") + if not created: + user = order.user + pricing = order.get_plan_pricing().pricing + + logger.info(f"Processing order completion for {user} - upgrading to {order.plan}") + user.userplan.plan = order.plan + user.userplan.expire = datetime.now() + timedelta(days=pricing.period) + user.userplan.save() + user.save() + logger.info(f"User {user} upgraded to {order.plan} plan successfully") history.status = "paid" history.save()