mothership-ec / cog-mothership-ecommerce

Mothership E-Commerce
Other
2 stars 1 forks source link

URGENT: Issue when returning to payment confirmation from external gateway #268

Closed thomasjthomasj closed 8 years ago

thomasjthomasj commented 8 years ago

This happened in the most recent update (3.7.0) of this module when using SagePay. The error logs show this message:

[2015-12-17 11:40:28] errors.ERROR: E_RECOVERABLE_ERROR: Argument 2 passed to Message\Mothership\Ecommerce\Payment\PaymentGatewayRecordEdit::save() must implement interface Message\Mothership\Ecommerce\Gateway\GatewayInterface, null given, called in vendor/mothership-ec/cog-mothership-ecommerce/src/Controller/Checkout/Complete.php on line 54 and defined {"file":"vendor/mothership-ec/cog-mothership-ecommerce/src/Payment/PaymentGatewayRecordEdit.php","line":32} []

SagePay was creating a tonne of orders (presumably because of multiple attempts) but no payment was made and the customer never got to the confirmation stage. That in itself shouldn't be possible, SagePay shouldn't be able to create more than one order, and orders should not be made without a payment confirmation.