A client complained that Authorize.net is only giving her the first street address line of orders. Where customers are entering an apartment or suite number in the second line this results in the order being sent out without this information. Currently avoiding this requires logging into the website to check for a second street address line. The problem is that most orders do not have a second street address line so people filling orders will get tired of logging into the website and send out the order without the second street address line. Authorize.net has only one address line and currently Ubercart is passing in only the first street address line. It would make more sense to combine the two street address lines in Ubercart into the one address line for Authorize.net. This should not affect address verification:
http://community.developer.authorize.net/t5/Integration-and-Testing/Comb...
A patch is attached that combines the two street address lines separated by a space. Perhaps a different separator would be appropriate. Authorize.net has a 60 character limit so it is still possible for long addresses to get truncated but that is a bit easier to catch and log into the website to get the full street address. I have not yet tested this patch.
| Comment | File | Size | Author |
|---|---|---|---|
| #10 | 1470678-uc_authorizenet-second-address-line.patch | 2.03 KB | longwave |
| ubercart-authorizenet-second-address-line.patch | 2.07 KB | trobey |
Comments
Comment #1
longwaveComment #2
tr commentedIt sounds like your client is using the Authorize.net as her main dashboard for processing order. In general, I would discourage that because 1) Authorize.net will never have *all* the information associated with the order, it will only get a short summary (see below), 2) Orders entered through the admin interface and paid by check or PO or some other means will not show up in Authorize.net, and 3) Authorize.net can't track order status, as payment received is only one step in the workflow, and in particular Authorize.net has no notion of an order being *partially* paid for or not yet shipped, etc.
* (from above) For example Authorize.net only accepts/stores a short (255 character) text summary of the order, which Ubercart uses to send a comma-separated list of "qty x product name". That is NOT sufficient information to fulfill the order, as it does not contain attribute information and is likely to be truncated if there are more than a few different products in the order.
So while yes, we can and should concatenate address line 2 with address line 1, I don't think that's the fundamental error here, and your client will continue to have problems if she insists on managing orders solely through the Authorize.net interface.
Comment #4
longwaveubercart-authorizenet-second-address-line.patch queued for re-testing.
Comment #5
tr commentedIt would be nice to get a review from someone who uses authorize.net ...
Comment #6
tr commentedCan someone with an Authorize.net account please test this?
Comment #7
tr commentedLooking for a review still. I don't want to commit a change like this which may disrupt someone's payment acceptance until at least one authorize.net user says it works and doesn't cause a problem. If this feature is of interest to you, please try it out and post your experience here.
Comment #8
DanZ commentedIs this an issue for 3.3?
Comment #9
tr commented@DanZ: Yes, it is still an issue.
I personally prefer to deal with *all* issues in the current version of Ubercart first, but I didn't move this one to 7.x-3.x because it already has a supposedly good patch for 6.x-2.x attached. Given the level of interest shown by the community, requiring a new 7.x-3.x patch would be the equivalent of killing this feature entirely.
Comment #10
longwavePatch applies to 7.x-3.x with minor fuzz anyway. I cleaned up the coding style a bit as well. I don't really see what harm this patch would do, although it would be nice to get a positive test result from someone who actually uses Authorize.Net.
Comment #11
DanZ commentedWe'll be implementing a site with Authorize.net in the next couple weeks (we hope). I'll give it a shot.
Comment #12
DanZ commentedTested #10 with a few transactions on the Authorize.net sandbox. Works great.
Comment #13
longwaveCommitted to both branches.