Associating An Orphan Sage Pay Suite Transaction With An Order

Updated . Posted . Visible to the public.

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:

  1. 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

  2. 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

  3. 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

  4. Invoice the order, probably best not to e-mail the customer the invoice as
    this will be confusing for them

  5. 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)

  6. Run the following SQL:

     UPDATE sagepaysuite_transaction SET order_id = {ORDER_ID} WHERE id = {ORPHAN_TRANSACTION_ID;
    
  7. 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

Mike Whitby
Last edit
Posted by Mike Whitby to Magento (2013-12-18 09:46)