The donations queue consumer deletes pending rows for any completed donations. It currently finds the pending row by looking for one with the gateway_txn_id matching the gateway_txn_id of the payment being imported.
For Ingenico connect, however, the ID we have before the user returns is the hostedCheckoutId, not the permanent ID of the payment that we want to store for long term use.
Add support for a gateway_session_id message field that can indicate an id such as the hostedCheckoutId that the queue consumer can use to find the pending db row.
Note that this may involve changes to both the donation queue consumer AND the SmashPig pending table accessor class.
Update: ticket closed as no further action required for now.