We had a situation whereby a client placed an order and went through Sage Pay
succesfully, however the order was not able to be created on Magento, so we had
an error stating "WARNING - There are approved Sage Pay transactions that have
no associated Magento orders. Click here to go to Orphan Transactions List".
This isn't the easiest of problems to solve, so here is how we did it:
-
Find out the order details, this will probably mean ringing the customer and
finding out what they ordered and where they want it delivered to.
Alternatively, you might be able to obtain this data via your My Sage Pay
admin interface -
This might be needed and might not, depending on what payments methods you
have enabled. Basically, you can't manually place an order with Sage Pay as
the payment method, so you may have to temporarily enable the "Check /
Money Order" payment method. Be very careful with this, as it means your
customers will now be able to place orders without paying. If this is not
ok for you then look in to using an admin-only payment method, such as
Simple Admin Payment Show archive.org snapshot -
Manually create an order in the Magento admin by going to Sales > Orders and
clicking on "Create Order". Fill in the order details with the info you
gained from step 1 and choose "Check / Money Order" (or "Simply Payment
Method for Admin" if you installed the above module) as the payment method,
then create the order -
Invoice the order, probably best not to e-mail the customer the invoice as
this will be confusing for them -
Find the order ID for the order you jsut created, and also find out the ID
for the orphan transaction (you can do this by clicking on the orphan
transaction warning) -
Run the following SQL:
UPDATE sagepaysuite_transaction SET order_id = {ORDER_ID} WHERE id = {ORPHAN_TRANSACTION_ID;
-
Probably best to add a note to the order (don't e-mail the customer!) to
state why this order was manually placed and uses the "Check / Money Order"
payment method