Skip to content
This repository has been archived by the owner on Nov 4, 2024. It is now read-only.

Commit

Permalink
fix: Add event property for DPM processor response and siteconfiguration
Browse files Browse the repository at this point in the history
  • Loading branch information
julianajlk committed Apr 16, 2024
1 parent d1994e0 commit 9e69195
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 3 deletions.
7 changes: 5 additions & 2 deletions ecommerce/extensions/payment/processors/webhooks.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,9 @@ def handle_webhooks_payment(self, request, payment_intent, payment_method_type):
Upon receipt of the payment_intent.succeeded event from Stripe, create an order, create a billing address,
fulfill order, and save payment processor data.
"""
# Adding the request site needed for getting the partner.short_code from siteconfiguration
self.site = request.site

# Get basket associated to the Payment Intent
payment_intent_id = payment_intent['id']
order_number = payment_intent['description']
Expand All @@ -98,7 +101,7 @@ def handle_webhooks_payment(self, request, payment_intent, payment_method_type):
try:
self.record_processor_response(payment_intent, transaction_id=payment_intent_id, basket=basket)
logger.info(
'[Dynamic Payment Methods] Successfully recorded Stripe payment intent [%s] '
'[Dynamic Payment Methods] Successfully recorded Stripe response for payment intent [%s] '
'for basket [%d] and order number [%s].',
payment_intent_id,
basket.id,
Expand All @@ -120,7 +123,7 @@ def handle_webhooks_payment(self, request, payment_intent, payment_method_type):
self.record_payment(basket, handled_processor_response)
properties.update({'total': handled_processor_response.total, 'success': True, })
finally:
# TODO: Differentiate event from regular payments?
properties.update({'payment_method': payment_method_type})
track_segment_event(basket.site, basket.owner, 'Payment Processor Response', properties)

# Create Billing Address
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -161,14 +161,15 @@ def test_handle_webhooks_payment(self, mock_track, mock_retrieve, mock_handle_po
},
}
self.processor_class(self.site).handle_webhooks_payment(
self.request, succeeded_payment_intent, 'afterpay_clearpay'
self.request, succeeded_payment_intent, 'affirm'
)
properties = {
'basket_id': self.basket.id,
'processor_name': 'stripe',
'stripe_enabled': True,
'total': self.basket.total_incl_tax,
'success': True,
'payment_method': succeeded_payment_intent['charges']['data'][0]['payment_method_details']['type'],
}
mock_track.assert_called_once_with(
self.basket.site, self.basket.owner, 'Payment Processor Response', properties
Expand Down

0 comments on commit 9e69195

Please sign in to comment.