ITrack/Pro/UPS and FedEx Integration
How It All Works
- There are two views in the itrackpro database: v_invoice_shipping_address and v_quote_shipping_address.(Already exists as they went out on the AU)
- MySQL users(ups and fedex) exist that only have access to that view.(For self-hosted customers, this already exists as they went out on the AU. For hosted customers, talk to Brian and have him create a UPS user specifically for their DB)
- A ODBC data source is configured using the ups or fedex account.
- UPS Worldship or FedEx is configured to access shipping information for customers via the ODBC data source and fields are mapped in UPS Worldship or FedEx.
- Via some option in the menu, the user of Worldship or FedEx can enter in the invoice # or quote #(depending on which they are using) and it will automatically fill out the correct fields in Worldship/FedEx so the user doesn't have to manually enter it.
For any other shipping application to use this functionality it would need to support ODBC data sources.
Details below.
Contact UPS or FedEx
UPS
If a user requests UPS integration you will most likely need to contact this UPS rep to setup things on the UPS Worldship side:
Paul Walker
UPS Customer Solutions
Solutions Engagement Supervisor
Telephone (904)994-2971
pwalker at ups dot com
FedEx
If a user requests FedEx integration you will most likely need to contact this FedEx rep to setup things on the FedEx side:
Brian
(850)210-2182
Using Quote Number
This has been rolled out on the AU so everyone should already have this view:
DROP VIEW IF EXISTS `v_quote_shipping_address`;
CREATE VIEW `v_quote_shipping_address` AS
(
SELECT `quote`.`invoicenum` AS `OrderNumber`,
IF(`quote`.`shipcompany` = '', `quote`.`shipname`, `quote`.`shipcompany`) AS `Name`,
IF(`quote`.`shipcompany` = '', '', `quote`.`shipname`) AS `Attn`,
`quote`.`shipstreet` AS `Address`,
`quote`.`shipmailing` AS `Address2`,
`quote`.`shipcity` AS `City`,
`quote`.`shipstate` AS `State`,
`quote`.`shipzip` AS `PostalCode`,
`quote`.`shipphone` AS `PhoneNumber`,
`customer`.`email` AS `Email`
FROM `quote`
JOIN `customer`
ON `quote`.`customernum` = `customer`.`customernum`
WHERE `quote`.`document` != 'VOID'
)
;
Using Invoice Number
Some users may want the integration to use the invoice number. If so, they will no longer be able to use the quote number from within UPS/FedEx.
DROP VIEW IF EXISTS `v_invoice_shipping_address`;
CREATE VIEW `v_invoice_shipping_address` AS
(
SELECT `invoice`.`invoicenum` AS OrderNumber,
IF(`invoice`.`shipcompany` = '', `invoice`.`shipname`, `invoice`.`shipcompany`) AS `Name`,
IF(`invoice`.`shipcompany` = '', '', `invoice`.`shipname`) AS `Attn`,
`invoice`.`shipstreet` AS Address,
`invoice`.`shipmailing` AS Address2,
`invoice`.`shipcity` AS City,
`invoice`.`shipstate` AS State,
`invoice`.`shipzip` AS PostalCode,
`invoice`.`shipphone` AS PhoneNumber,
`customer`.`email` AS Email,
`invoice`.`trackingnum` AS TrackingNumber,
`invoice`.`shipdate` AS ShipDate
FROM `invoice`
JOIN `customer`
ON `invoice`.`customernum` = `customer`.`customernum`
WHERE document = 'Invoice'
)
;
Using It
In UPS Worldship
Problems setting up Worldship
If you've created the ITrack Import Map, and attempt to key in a Salesorder or Invoice # and get this error returned:
Then you need to open the ODBC Profile that the ITrack Import map is utilizing, open the advanced settings at the bottom, go to the Misc section and check "Prepare Statements on the client."
Make sure to restart UPS Worldship before you attempt to key in another Sales Order.
In FedEx
I'd love to know.