Do either the uCommerce starter or enterprise editions support SagePay out of the box? Do either of them support subscription-type payment gateway services?
We don't have any default payment method implementations available. The effort to support local payment gateways is a pretty big undertaking. We're happy to help you promote your implementation to others if you go ahead and build one. Contact me at [email protected] if we'd like some documentation on creating your own implementation.
Subscription payments are usually handled by the payment provider once a credit card is authorized so no special support is required in uCommerce itself.
Thanks Soren - I was never sure of the exact situation with regards to payment gateways and uCommerce, but now I know it's a case of rolling your own, and your instructions look very helpful.
Hi there, I thought rather than create a new thread about SagePay it would be helpful to ask in here. I'm having a spot of trouble getting SagePay working out the box.
Forgive my ignorance, but the method that uCommerce uses (Sage Pay Go) to interact with SagePay... this is different than using the payment URLs? I haven't gotten it to work yet but I'm getting the impression that it goes off to a payment widow (in an iFrame or something?).
I've followed your guide, and put in the correct details
Looks like you're having some trouble with execute rights in the database. uCommerce uses a stored proc to generate orders number. The user name specified in your connection string or identity of of the app pool if you're running integrated mode needs execute rights on the proc uCommerce_GetOrderNumber.
Also if you could provide me with details of the hosting environment that would be extremely helpful. Which IIS and .NET Framework versions are you running?
It's Windows Server 2008 R2 Standard running IIS 7.5
As for providers, at this point I'm a bit lost. All I've done is set up the payment method in uCommerce, set the provider as SagePay, and configured the sagepay .config file. I had originally assumed that everything was all set up out of the box, and that by using the uCommerce Store XSLT files I wouldn't have to integrate anything. Having not been able to find anything in the uCommerce store files that would take payment details, I thought perhaps it used an iFrame or a redirect to SagePay for the payment to happen.
uCommerce will redirect the customer to the SagePay server where the actual credit card info is processed and then returned.
To make it work you either need to do a CreatePayment where you specify that the payment should be requested immediately or if you're doing a two step process: First do CreatePayment but specify false for the "requestPayment" parameter. When you're ready call CommerceLibrary:RequestPayments().
I am at the stage you describe above where the page re-directs off to sagepay to take payment, once the transaction has completed sagepay re-directs to the success.aspx page. When displaying this page what is the best way to retrieve the order Id as it is not passed back from sagepay?
The simplest is to store a cookie with the value of the order GUID found on the basket before you send the customer off to Sage. When customer returns to the site you can read that cookie and retrieve the order info with CommerceLibrary:GetPurchaseOrder(orderGuid).
The basket is cleared at this point so CommerceLibrary:GetBasket() will get you a new blank basket, not the one you want.
SagePay support
Hi,
Do either the uCommerce starter or enterprise editions support SagePay out of the box? Do either of them support subscription-type payment gateway services?
Thanks
We don't have any default payment method implementations available. The effort to support local payment gateways is a pretty big undertaking. We're happy to help you promote your implementation to others if you go ahead and build one. Contact me at [email protected] if we'd like some documentation on creating your own implementation.
Subscription payments are usually handled by the payment provider once a credit card is authorized so no special support is required in uCommerce itself.
Information on integrating with a payment provider is available: Integrating uCommerce with a Payment Provider.
Thanks Soren - I was never sure of the exact situation with regards to payment gateways and uCommerce, but now I know it's a case of rolling your own, and your instructions look very helpful.
Hi Dan,
Just wanted to let you know that the situation with SagePay has changed. As of uCommerce 1.2 the SagePay payment provider is included in the box: Setup uCommerce to Include SagePay as a Payment Method
Hi there, I thought rather than create a new thread about SagePay it would be helpful to ask in here. I'm having a spot of trouble getting SagePay working out the box.
http://www.sagepay.com/help/faq/what_is_sage_pay_go_with_server_integration
Forgive my ignorance, but the method that uCommerce uses (Sage Pay Go) to interact with SagePay... this is different than using the payment URLs? I haven't gotten it to work yet but I'm getting the impression that it goes off to a payment widow (in an iFrame or something?).
I've followed your guide, and put in the correct details
But when I submit the order and go through to the order confirmation page, all I see is:
I've set Pipeline to None (right?) in the uCommerce section, and Service to SagePay. There is the umbracoLog:
Hi Zac,
Looks like you're having some trouble with execute rights in the database. uCommerce uses a stored proc to generate orders number. The user name specified in your connection string or identity of of the app pool if you're running integrated mode needs execute rights on the proc uCommerce_GetOrderNumber.
Whoops, thanks, sorted that.
I now see "The pipeline executed succesfully", the customer gets an email, but at no point was there a redirection to sage pay.
Sorry to be a continuous pain, but what huge step am I missing here?
No problem at all.
Are you using the provider from .NET or XSLT?
Also if you could provide me with details of the hosting environment that would be extremely helpful. Which IIS and .NET Framework versions are you running?
It's Windows Server 2008 R2 Standard running IIS 7.5
As for providers, at this point I'm a bit lost. All I've done is set up the payment method in uCommerce, set the provider as SagePay, and configured the sagepay .config file. I had originally assumed that everything was all set up out of the box, and that by using the uCommerce Store XSLT files I wouldn't have to integrate anything. Having not been able to find anything in the uCommerce store files that would take payment details, I thought perhaps it used an iFrame or a redirect to SagePay for the payment to happen.
Hi Zac,
Sorry for the delay in getting back to you.
uCommerce will redirect the customer to the SagePay server where the actual credit card info is processed and then returned.
To make it work you either need to do a CreatePayment where you specify that the payment should be requested immediately or if you're doing a two step process: First do CreatePayment but specify false for the "requestPayment" parameter. When you're ready call CommerceLibrary:RequestPayment s().
For more info please see CreatePayment(Int32, Decimal, Boolean, Boolean), RequestPayment(Int32), and RequestPayments().
Again sorry for the delay.
Hi
I am at the stage you describe above where the page re-directs off to sagepay to take payment, once the transaction has completed sagepay re-directs to the success.aspx page. When displaying this page what is the best way to retrieve the order Id as it is not passed back from sagepay?
Thanks
Tara
The simplest is to store a cookie with the value of the order GUID found on the basket before you send the customer off to Sage. When customer returns to the site you can read that cookie and retrieve the order info with CommerceLibrary:GetPurchaseOrder(orderGuid).
The basket is cleared at this point so CommerceLibrary:GetBasket() will get you a new blank basket, not the one you want.
Thanks for the idea, I will give that a try.
is working on a reply...