From abbc403f733badf49d7ba6ff8d71fc09a937a1d3 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Wed, 25 Apr 2018 08:46:33 +0200 Subject: [PATCH] Stripe: Fix Bancontact payments --- src/pretix/plugins/stripe/payment.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/pretix/plugins/stripe/payment.py b/src/pretix/plugins/stripe/payment.py index c7b8c74f70..edd9dbf8dc 100644 --- a/src/pretix/plugins/stripe/payment.py +++ b/src/pretix/plugins/stripe/payment.py @@ -273,14 +273,17 @@ class StripeMethod(BasePaymentProvider): def _charge_source(self, request, source, order): try: + params = {} + if not source.startswith('src_'): + params['statement_descriptor'] = ugettext('{event}-{code}').format( + event=self.event.slug.upper(), + code=order.code + ), + params.update(self.api_kwargs) charge = stripe.Charge.create( amount=self._get_amount(order), currency=self.event.currency.lower(), source=source, - statement_descriptor=ugettext('{event}-{code}').format( - event=self.event.slug.upper(), - code=order.code - ), metadata={ 'order': str(order.id), 'event': self.event.id, @@ -288,7 +291,7 @@ class StripeMethod(BasePaymentProvider): }, # TODO: Is this sufficient? idempotency_key=str(self.event.id) + order.code + source, - **self.api_kwargs + **params ) except stripe.error.CardError as e: if e.json_body: