FedEx Ship Manager Configuration
In order for FedEx Ship Manager to be able to easily map fields to Magento I have created a SQL view that pulls the most commonly needed fields from the various Magento tables so they are easily accessible. You will need to setup the view on your Magento database in order to follow the rest of the guide.
The view is on a separate wiki page. http://www.magentocommerce.com/wiki/groups/207/fedex_-_shipping_view
You should be able to use a tool my phpmyadmin or some other mysql client tool to load the view. Maybe someday it can be turned into an extension that can just be installed from the Magento admin interface.
You must install the MySQL ODBC Connector http://dev.mysql.com/downloads/connector/odbc/5.1.html
Once you have the ODBC Driver installed then you need to add a System DSN to your computer using the ODBC Administrator.
If, after setting up the integration, the FedEx Shipping Manager throws *Unsupported Type* into some or all fields, you may need to use the older MySQL ODBC Connector http://dev.mysql.com/downloads/connector/odbc/3.51.html
You will need to specify all the connection information for connecting the server where your Magento database is located.
There are options for establishing a secure and encrypted connection to a MySQL server, such as an SSH tunnel, or SSL connection, but that is beyond the scope here.
Some hosting providers limit the connectivity to the MySQL database for security reasons and may not be publicly accessibly which would require a more secure approach to establishing a connection to the MySQL server.
You will also need to make sure that whatever username you are using either has a wildcard location so that the username can login from anywhere, or that you have one specific to the computer you will be connecting from. If you are connecting over an SSH tunnel then the location will be the host name of the database server usually “localhost”.
First you will need to download the FedEx Ship Manager software if you do not already have it installed somewhere. http://www.fedex.com/us/software/
Once FedEx Ship Manager is installed it will need to be setup with your FedEx account, and the meter number activated and such. If you run into problems with that you can always contact FedEx for help.
Launch FedEx and under the Integration menu at the top of the window launch the FedEx Integration Assistant. This is a wizard that will guide you through the process of allowing the shipping software to get everything it needs from Magento.
Here you can select Import. It would also be possible to do an export and write something back to Magento, but we’ll save that for later.
Select ODBC then look for the ODBC System DSN that you setup earlier.
Select the mode you want the integration to run in. I selected Single Edit mode so that I can review the information before the shipping software prints a lable and so that I can make modification if needed.
Here I have selected to use a lookup value because I want to either scan a barcode on a pick ticket that has the Magento order number on it, or enter the Magento order number in directly.
There is an option to have the cursor skip to another field right after the lookup. This may be useful if you don’t have all your products weighed in Magento, or if you don’t have a scale attached to your computer and want to enter in the package weight.
Here you get to specify all the fields you want to assign values to during the import. If you choose the option “All Fields” you get them all in one big list, which is probably easier to look through.
Put a checkbox by any field you want to assign a value to. If you don’t check the field then a value won’t be assigned to it.
Here you can see I selected the “Bill Transpotration To” because I’m going to want to assign a default value to it of “Sender” later, but I have to check it here in order to assign it a default value later. You can also do this to the other highlighted fields. Note that if you want to use a scale attached to your computer you will need to check the weight field, and later you can tell it to read the scale by default.
Here you get to assign the values for the fields you selected. For values coming from the Magento database, you will want to select a table. If you created the Shipping SQL View earlier, it will be listed with all the tables.
After you select the table, then you can choose which field from the view you want to map to the field in Ship Manager.
Some of the fields you will want to select a default value to as highlighted above.
Here I have an example of how I have included the order number on the customer reference field in Ship Manager. I think the customer reference will print on my FedEx statement which will make it much easier to cross reference my statement from FedEx with the orders I received in Magento.
You can also do things like including the customers email address to have FedEx send a shipment alert to the customer for you with the tracking number of the shipment.
At this time I don’t have a field in the Shipping SQL View that indicates what shipping method is used because I am expecting to want to choose it during the shipping process, but this would be possible to add easily.
You will need to specify some kind of index so that Ship Manager knows what your lookup dialog box should reference. Here I have selected the order_no as the primary key index of my lookup.
Here is a summary of the configurations you’ve done.
You will need to click “Finish” in order to build the integration, and it will prompt for a Profile Name to use.
After the integration has been named and saved, it will be added to the list of possible integrations on your Integration menu in Ship Manager. You can tell which integration is active based on the color of the highlighted field, and the checkbox in the menu. If you want to turn off the integration select “None”. If you find your integration is not running, you can select it from the integration menu to load it.
If you close the Lookup window, just hit “Clear Fields” at the bottom of the window to get it back.
Now start shipping!