Always immediately capture payments.
This commit is contained in:
		
							parent
							
								
									ed1087d9d3
								
							
						
					
					
						commit
						26b249d48d
					
				
					 1 changed files with 18 additions and 24 deletions
				
			
		|  | @ -105,32 +105,26 @@ def process_card(request, form, inv): | |||
|         conference.title, inv.invoice.id | ||||
|     ) | ||||
| 
 | ||||
|     try: | ||||
|         charge = actions.charges.create( | ||||
|             amount_to_pay, | ||||
|             customer, | ||||
|             currency=CURRENCY, | ||||
|             description=description, | ||||
|             capture=False, | ||||
|         ) | ||||
|     charge = actions.charges.create( | ||||
|         amount_to_pay, | ||||
|         customer, | ||||
|         currency=CURRENCY, | ||||
|         description=description, | ||||
|         capture=True, | ||||
|     ) | ||||
| 
 | ||||
|         receipt = charge.stripe_charge.receipt_number | ||||
|         if not receipt: | ||||
|             receipt = charge.stripe_charge.id | ||||
|         reference = "Paid with Stripe receipt number: " + receipt | ||||
|     receipt = charge.stripe_charge.receipt_number | ||||
|     if not receipt: | ||||
|         receipt = charge.stripe_charge.id | ||||
|     reference = "Paid with Stripe receipt number: " + receipt | ||||
| 
 | ||||
|         # Create the payment object | ||||
|         models.StripePayment.objects.create( | ||||
|             invoice=inv.invoice, | ||||
|             reference=reference, | ||||
|             amount=charge.amount, | ||||
|             charge=charge, | ||||
|         ) | ||||
|     except StripeError as e: | ||||
|         raise e | ||||
|     finally: | ||||
|         # Do not actually charge the account until we've reconciled locally. | ||||
|         actions.charges.capture(charge) | ||||
|     # Create the payment object | ||||
|     models.StripePayment.objects.create( | ||||
|         invoice=inv.invoice, | ||||
|         reference=reference, | ||||
|         amount=charge.amount, | ||||
|         charge=charge, | ||||
|     ) | ||||
| 
 | ||||
|     inv.update_status() | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Christopher Neugebauer
						Christopher Neugebauer