At the time of this writing, I am working on the site of a client that wants to add FedEx shipping estimates and options to their checkout. It sounds simple enough, right?
Wrong. Very, very wrong.
The API that one has to use to ping the FedEx servers to get a shipping quote is fairly painless to install. The documentation even provides links to downloadable examples in several programming languages. I got the ASP examples and threw them in the test folder. Right off the bat the scripts start throwing errors. I call support and as WTF is wrong. They say that our site has to be approved before we can make transaction requests against their servers. Fine. I tell them to start the approval and they will email us once this is done.
Several days pass and not a word. I call support again and they say that due to some error our request didnt go through. I resubmit and 2 days later the approval notice comes in. I test the scripts again and still get errors, only now they are new errors.
On the phone to support again, they said that we have to be added to their beta servers before testing transactions will go through. Erg. I ask that they add us. They said no more than 48 hours and it will be done. 2 days later, it is still not done. I call again, and they resubmitted the request again, and I hand up again with a very potent feeling of foreboding.
We get the email saying the clients site is added to the beta servers and we can do test transactions. Woo Hoo. I start testing and tweaking and get to a halfway decent progress on it (this is over several days) and then their servers start throwing back errors again. AAARRRRRGGGG.
Another call to support says that they are upgrading their servers with some new functions and that intermittent (in other words, drastic) errors may (will) occur but it will be all better and functioning by Monday (today). With trepidation, I pull up the testing scripts. I try it out and I get, not an error, but a positive response from the transaction query. Rock!
So this evening I start testing and tweaking again because this project is WAY overdue and WTF happens? I get an error. And not just any error. Its an error that is not mentioned anywhere in the dozens of pages of documentation and no where to be found on any website or development forum. So, here I am, 11:30 at night, tired, stressed, more than a little perturbed, and ready to murder the next FedEx Customer Care Representative that tells me that “everything is fine”.
I have spent the last 2 hours pouring over the documentation PDFs and nothing is coming. Nothing that would explain this error let alone anything that would solve it. Maybe I got some code wrong? Maybe I swapped some object IDs? I have not idea at the moment. So what would anyone in my position do?
Thats right! I am going to get up, go to the kitchen, make me some chocolate milk, and dive back into the docs and the code. This project may take my sanity, but it will never take… my… um… well, I’ll just hope it doesn’t take my sanity.
Cheers








