Somewhat related to the my previous post but despite SagePay successfully contacting PaymentProcessor.axd to get the RedirectionUrl the status of the order does not get updated in the uCommerce Orders table to Paid.
Sagepay indicated that they provide the order success status to my callback url when requesting the redirectionUrl, which is strange because SagePay is recieving the redirectionUrl and redirecting the customer correctly.
There also seems to be no errors in the UmbracoLog.
Make sure that you've got the Checkout pipeline configured as part of your SagePay payment method. If it's not only the status of the payment in question gets updated (To "Authorized"). You can verify that this happens by taking a look at field PaymentStatusId in the table uCommerce_Payment. It should read 10000002 once payment is accepted by SagePay.
For some reason my reply did not get posted yesterday.
I just noticed that you're using instant acquire. By default uCommmerce will only update the payment status (which it does correctly as per your screenshot), but order status will be set to "New Order" regardless of payment status as our default model for payments is a two-phase approach with an initial authorization and a later acquire when the items are shipped to the customer.
You can set any order status you want in the checkout pipeline by adding a custom task:uCommerce Pipelines Explained. Be sure to add the new task after the "ConvertBasketToOrder" step.
Changing order status is done by using the IOrderService like so:
var orderService = ObjectFactory.Instance.Resolve<IOrderService>(); orderService.ChangeStatus(myPurchaseOrder, OrderStatus.Get((int) OrderStatusCode.Paid);
SagePay not updating order status
Somewhat related to the my previous post but despite SagePay successfully contacting PaymentProcessor.axd to get the RedirectionUrl the status of the order does not get updated in the uCommerce Orders table to Paid.
Sagepay indicated that they provide the order success status to my callback url when requesting the redirectionUrl, which is strange because SagePay is recieving the redirectionUrl and redirecting the customer correctly.
There also seems to be no errors in the UmbracoLog.
Thanks in advance for any help.
Make sure that you've got the Checkout pipeline configured as part of your SagePay payment method. If it's not only the status of the payment in question gets updated (To "Authorized"). You can verify that this happens by taking a look at field PaymentStatusId in the table uCommerce_Payment. It should read 10000002 once payment is accepted by SagePay.
It look like the Checkout Pipeline is configured correctly in the SagePay settings:
In the uCommerce_Payment table the status of all test transactions is 10000003:
Thanks,
Simon
For some reason my reply did not get posted yesterday.
I just noticed that you're using instant acquire. By default uCommmerce will only update the payment status (which it does correctly as per your screenshot), but order status will be set to "New Order" regardless of payment status as our default model for payments is a two-phase approach with an initial authorization and a later acquire when the items are shipped to the customer.
You can set any order status you want in the checkout pipeline by adding a custom task:uCommerce Pipelines Explained. Be sure to add the new task after the "ConvertBasketToOrder" step.
Changing order status is done by using the IOrderService like so:
Hope this helps.
I have implemented a custom pipeline task to change the status and am firing it from xslt on the success page.
Thanks for the help.
is working on a reply...
This forum is in read-only mode while we transition to the new forum.
You can continue this topic on the new forum by tapping the "Continue discussion" link below.