Closed (fixed)
Project:
Sage Pay Server Integration for Ubercart
Version:
6.x-1.4
Component:
Miscellaneous
Priority:
Normal
Category:
Bug report
Assigned:
Unassigned
Reporter:
Anonymous (not verified)
Created:
21 Sep 2010 at 10:04 UTC
Updated:
25 Jan 2022 at 16:23 UTC
Jump to comment: Most recent, Most recent file
Comments
Comment #1
aireworth commentedHi spa1969
Do you have any punctuation in your product's name? I was getting this from an item with "50:50" in its title. When I removed the colon, the error went away. Put it back, it reappears. Place a colon in another (previously working) product's name and the error surfaces again. I haven't tested this with any other non alphabetical characters, but it might be a parsing error caused by the colon somewhere.
Regards
Colin
Comment #2
Anonymous (not verified) commentedHi Colin,
Yes, I do have a colon in the product name. I will check it out and post back if that is indeed the case.
Thanks for the pointer
Cheers
Comment #3
Anonymous (not verified) commentedAs stated by aireworth, having a colon : in the product title was causing this error. I have removed the colon and tested the product and the transactions are now being correctly handled by Sagepay server.
Comment #4
leo pitt commentedThanks for the updates - I think the module should be able to handle having a colon in the product title though, so I'm setting this to "active" again.
One of the fields of data sent to Sagepay when registering the transaction is "Basket", which is supposed to contain details of the customer's order for use in "My Sagepay"... It's an optional field so if it's causing a problem then it could be removed completely.
I had assumed that this information would get displayed to the customer at some point but examining the Sagepay Server integration documentation more closely, it does imply that it's just for the benefit of whoever is administering the Sagepay account.
Any way, the Basket field has to conform to a convention:
So I guess the colons in the product name are breaking the formatting of the Basket field.. Sagepay interprets them as field delimiters.
I think the solution is probably to have this module strip colons from product names before populating the Basket field - so that way people can use whatever product names they want.
Should be pretty easy to implement... will try to fix in the next day or two.
Comment #5
jelenex commentedAs I've just found out (the hard way) this bug is still present in the latest stable and dev version.
Here's a quick patch, which fixes the error for me.
Comment #6
Deimos-dupe commentedI think this issue extends to other fields sent to Sage Pay. I've seen errors such as "Invalid characters in postcode". This is more of an issue because the customer doesn't get to see what the problem is, they just get redirected back to the order submission screen with no errors.
I think we need to strip more characters than are currently, from all fields, before sending the request to Sage Pay. I don't know what the set of allowed characters is, or what characters had been entered in my postcode field to cause the problem for me.
Comment #7
leo pitt commentedThanks - I have added the patch at #5 to the dev version, please try it out.
Comment #8
leo pitt commentedAlso, @deimos, your point noted - I just want to get the patch at @5 out the door while I'm here and without further ado but intend to check back on this next chance I have
Comment #9
drupal_jon commentedHi all, just confirming that the patch at #5 works for me.
Comment #10
leo pitt commentedFixed in 6.x-1.5