Home » Item #383
I have configured Cactushop to use a payment gateway (WorldPay) and I am passed correctly to the payment gateway to make payment. However, once I have completed the transaction, the order is not listed in the backed of CactuShop as a completed order, and CactuShop sends no email to either the merchant or customer but the payment gateway does send such emails.
When using a payment gateway, CactuShop transactions take place in 2 stages.
Firstly the customer adds items to their basket and proceeds through the checkout. They then pass to the payment gateway to make payment. Prior to leaving CactuShop, the order is stored in the CactuShop database with a unique ID reference number. The order is listed as "not completed" because at this point no payment has been made. Therefore it doesn't show up in the back end.
Once payment has been successfully made at the payment gateway, CactuShop must be told that payment has been successful so that it can find the "not completed" order and amend it to "completed". This is done by means of a "callback".
In the case of WorldPay, this callback is set up from the WorldPay admin screens after logging into your WorldPay account. the callback will be:
(shop-path)/asp/worldpay_callback.asp
(in v4)
(shop-path)/worldpay_callback.asp
(in v5)
See the manual for full instructions.
This article applies equally to other payment provider implementations. If callback is incorrectly configured and hence failing, then CactuShop will never complete the order, stock levels will not be amended and the order will not be listed as completed.