Handle SCA in dcl flow
This commit is contained in:
		
					parent
					
						
							
								676a358832
							
						
					
				
			
			
				commit
				
					
						4c7b9eaa52
					
				
			
		
					 1 changed files with 17 additions and 0 deletions
				
			
		|  | @ -953,6 +953,23 @@ class OrderConfirmationView(DetailView, FormView): | |||
|                 tax_rates=[stripe_tax_rate.tax_rate_id] if stripe_tax_rate else [], | ||||
|             ) | ||||
|             stripe_subscription_obj = subscription_result.get('response_object') | ||||
|             logger.debug(stripe_subscription_obj) | ||||
|             latest_invoice = stripe.Invoice.retrieve( | ||||
|                 stripe_subscription_obj.latest_invoice) | ||||
|             ret = stripe.PaymentIntent.confirm( | ||||
|                 latest_invoice.payment_intent | ||||
|             ) | ||||
|             if ret.status == 'requires_action': | ||||
|                 pi = stripe.PaymentIntent.retrieve( | ||||
|                     latest_invoice.payment_intent | ||||
|                 ) | ||||
|                 context = { | ||||
|                     'sid': stripe_subscription_obj.id, | ||||
|                     'payment_intent_secret': pi.client_secret, | ||||
|                     'STRIPE_PUBLISHABLE_KEY': settings.STRIPE_API_PUBLIC_KEY, | ||||
|                     'showSCA': True | ||||
|                 } | ||||
|                 return JsonResponse(context) | ||||
|             # Check if the subscription was approved and is active | ||||
|             if (stripe_subscription_obj is None | ||||
|                     or stripe_subscription_obj.status != 'active'): | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue