More safety against duplicate PayPal payments

This commit is contained in:
Raphael Michel
2017-02-01 18:40:27 +01:00
parent 90bdb30449
commit cd61c0833d
2 changed files with 26 additions and 25 deletions

View File

@@ -103,7 +103,7 @@ def mark_order_paid(order: Order, provider: str=None, info: str=None, date: date
order.log_action('pretix.event.order.paid', { order.log_action('pretix.event.order.paid', {
'provider': provider, 'provider': provider,
'info': info, 'info': info,
'date': date, 'date': date or now_dt,
'manual': manual, 'manual': manual,
'force': force 'force': force
}, user=user) }, user=user)

View File

@@ -160,6 +160,7 @@ class Paypal(BasePaymentProvider):
return self._execute_payment(payment, request, order) return self._execute_payment(payment, request, order)
def _execute_payment(self, payment, request, order): def _execute_payment(self, payment, request, order):
if payment.state == 'created':
payment.replace([ payment.replace([
{ {
"op": "replace", "op": "replace",