We’re
testing a site currently using our SagePay Test & Simulator accounts and
everything is working fine except a couple of issues:-
The second (optional)
address line isn’t being sent to SagePay for the Billing or Delivery address
(at least it’s not showing up in the SagePay transactions). This is both
Simulator and Test accounts.
I can’t see anywhere to provide the Description field for
the goods purchased (uCommerce or SagePay is just showing ‘Sum’)
Also is it possible to send the Basket string as specified
in the SagePay Server Protocol Guide?
I’d really appreciate any help/insight you could provide and
keep up the excellent work!
Is there any solution to Andy's question above, as i have the same issue. Trying to figure out how to pass a description to Sage Pay to display instead of the word 'Sum'.
The "Sum" text is passed by uCommerce. You can override the value by inheriting the RequestPayment method on the provider and registering your version in Custom.config.
Same thing goes for AddressLine2. It's currently not being passed to SagePay, but I'm adding this in as soon as I click the "Submit" button :)
Input on what you'd like the "Sum" value to be is welcome as well.
Thanks for the reply. Do you have any sample code regarding what i should be calling/overriding inside my custom RequestPayment method? I basically want it to function the same but just passing in a value to replace the "Sum".
My vote for some suitable text instead of "Sum" would be something like "Online Order" or "Website Order".
You could use Jetbrain's DotPeek to look at the core payment providers. http://www.jetbrains.com/decompiler/ Open the Transactions.Payments DLL to take a look at the payment providers.
I think it is a matter of doing almost the same thing, but just rendering the data with your extra bit of information / tweaked information.
Yes i started out down this road but became stuck because there appears to be several functions that are called from within the RequestPayment function within the SagePayPaymentMethodService class that don’t seem to exist. It seems to be around the retrieving values from the config files in uCommerce. Strange... but an example are the two lines below:
When i look at the class UCommerce.Extensions there is no AddOrderGuidParameter function in using either DotPeek or intellisence within Visual Studio. If anyone has any ideas i would appreciate some help.
It's all sorted now. Wrote a custom payment method for it as you suggested and just overrode the Request Payment method. Passed in the missing billing line address field and changed the "Sum" text and all is working great now.
Missing SagePay Fields
Hi,
Umbraco v6.0.0 (Assembly version: 1.0.4779.24222)
uCommerce 3.0.4.13032
We’re testing a site currently using our SagePay Test & Simulator accounts and everything is working fine except a couple of issues:-
The second (optional) address line isn’t being sent to SagePay for the Billing or Delivery address (at least it’s not showing up in the SagePay transactions). This is both Simulator and Test accounts.
I can’t see anywhere to provide the Description field for the goods purchased (uCommerce or SagePay is just showing ‘Sum’)
Also is it possible to send the Basket string as specified in the SagePay Server Protocol Guide?
I’d really appreciate any help/insight you could provide and keep up the excellent work!
Cheers
AndyHi,
Is there any solution to Andy's question above, as i have the same issue. Trying to figure out how to pass a description to Sage Pay to display instead of the word 'Sum'.
Cheers,
Matt
The "Sum" text is passed by uCommerce. You can override the value by inheriting the RequestPayment method on the provider and registering your version in Custom.config.
Same thing goes for AddressLine2. It's currently not being passed to SagePay, but I'm adding this in as soon as I click the "Submit" button :)
Input on what you'd like the "Sum" value to be is welcome as well.
Thanks for reporting the issue.
Soren,
Thanks for the reply. Do you have any sample code regarding what i should be calling/overriding inside my custom RequestPayment method? I basically want it to function the same but just passing in a value to replace the "Sum".
My vote for some suitable text instead of "Sum" would be something like "Online Order" or "Website Order".
Thanks again,
Matt
Hi Matt,
You could use Jetbrain's DotPeek to look at the core payment providers. http://www.jetbrains.com/decompiler/ Open the Transactions.Payments DLL to take a look at the payment providers.
I think it is a matter of doing almost the same thing, but just rendering the data with your extra bit of information / tweaked information.
Thanks for the reply.
Yes i started out down this road but became stuck because there appears to be several functions that are called from within the RequestPayment function within the SagePayPaymentMethodService class that don’t seem to exist. It seems to be around the retrieving values from the config files in uCommerce. Strange... but an example are the two lines below:
dictionary.Add("SuccessURL", Extensions.AddOrderGuidParameter(new Uri(AbstractPageBuilder.GetAbsoluteUrl(this.Section.SuccessUrl)), payment.PurchaseOrder).ToString());
dictionary.Add("FailureURL", Extensions.AddOrderGuidParameter(new Uri(AbstractPageBuilder.GetAbsoluteUrl(this.Section.FailureUrl)), payment.PurchaseOrder).ToString());
When i look at the class UCommerce.Extensions there is no AddOrderGuidParameter function in using either DotPeek or intellisence within Visual Studio. If anyone has any ideas i would appreciate some help.
Cheers,
Matt
Hi Matt,
You can take a look at the original SagePay code by downloading https://dl.dropboxusercontent.com/u/2927351/SagePay-3.0.zip
Hope this helps.
Cheers Soren,
It's all sorted now. Wrote a custom payment method for it as you suggested and just overrode the Request Payment method. Passed in the missing billing line address field and changed the "Sum" text and all is working great now.
Thanks for your help and support.
Cheers,
Matt
Perfect. Thanks for being awesome and following up in the forum.
is working on a reply...