FedEx v2 Public ReleaseThanks to all the wonderful donators and feature underwriters! Because of them, I am now releasing FedExv2 for public use under the GPL!
What is FedExv2.0?FedExv2.0 is a VirtueMart shipping module utilizing FedEx's "Web Services" API. Why do we need this? Because FedEx is going to phase out their "DC" API. The official timeline for this phasing out is "sometime before January, 2012", according to my FedEx Web Services Integration Team contact.
What does FedExv2.0 offer?There are currently three versions of FedExv2.0. All are downloadable from this post, or on my website
www.lowmips.com. The most current version is the most stable, as bugfixes are generally not back ported to older code.
vm-113-fedex_v2.0.2009.07.20.zipThe first is just a basic shipping module. This module adheres to the "drop in" concept for VM shipping modules, with the exception of one updated language file. You plug in your FedEx services credentials, select which shipping options you want to offer, and during checkout the user will see all applicable FedEx shipping services and their costs. Optionally, you can have the estimated delivery dates shown as well. I've attached some screenshots of the basic FedExv2.0 in action to this thread. This module is based on VirtueMart 1.1.3 code, so the language file may be outdated for later versions of VM. It would be best for you to open the file, copy the FedExv2 language, and paste it into the language file of the version you're using.
vm114-fedex_v2.0.2010.06.18.zipThe next version is based on VirtueMart 1.1.4 code, and offers many features! However, it also requires updating/replacing some VirtueMart core files. It does not adhere to the VM "drop in" shipping module concept. This means that upgrading to future versions of VirtueMart could potentially "break" the module. Updated versions of the FedExv2 module may need to be produced for compatibility. This module offers everything the basic module does, plus:
- mechanism to choose between production/development environment
- option to choose residential or commercial delivery (the basic module defaults to residential)
- bundled/unbundled packages, for products that may need to ship separately
- max per package flags, for items that can only fit a few per package
- ability to restrict certain items to ground based shipping, while allowing the user to choose a shipping service for the remaining items
- "view shipping configuration" feature, to see exactly how each virtual package is configured
- currency conversion calculations in order to better work with mod_virtuemart_currencies
- option to declare L/W/H on packages
- option to restrict L/W/H declaration to "unbundled" packages
- option to use alternate source shipping address per product (drop shipping)
- option to toggle "extra" administrative debug information on/off (FedEx request/reply)
- option to vary the maximum package weight. You may wish to ensure packages are smaller than the FedEx maximum weight.
- FedEx does not ship to Post Office box addresses. Users who choose a PO address during checkout will see a message stating this
- option to redirect user back to address selection page if PO address is detected
- option to charge additional fee for international orders
- option restrict products from being shipped via certain service types to restricted country/(state|province)/zipcode
- option to modify shipping cost per product (percentage based)
- option to show "free shipping" image on flypage for products with "0%" shipping modifier
- option to restrict free shipping to ground services
- option to show 12 or 24hour ETA timestamp
- option to flag product as "add-on" and restrict number purchasable for the order
- option to use parent product's bundling settings
- option to use parent product's "max per package" settings
- option to declare insurance value (entire shipment)
- option to declare insurance value (per product)
- option to allow shipping coupons (free shipping/in-store pickup)
- option to add padding weight based on package weight
- modified tax behaviour
- option to allow users to specify Residential/Commercial address type
- basic CSV export mechanism
- option to allow user to require signature confirmation during checkout
vm115-fedex_v2.0.2011.01.06.zipThis version offers everything the previous versions offer, but has been ported to VirtueMart 1.1.5 code! Also, this version supports version 9 of the "Web Services" API!
vm118-fedex_v2.0.2011.04.19.zipThis version offers everything the previous versions offer, but has been ported to VirtueMart 1.1.8 code!
vm119-lowmips.2011.08.22- includes vm118-fedex_v2.2011.04.19
- ported to VirtueMart 1.1.9
- download from my website
System Requirements:- PHP5 with SOAP and SSL libraries installed
- Joomla 1.5.x
- VirtueMart 1.1.x
Notes about the module, and Web Services:- Be sure you check the latest FedEx services guide before using the module. FedEx does not always offer shipping services to locations you'd expect!
- Currently, the module uses "RATED_LIST" as the query type. Future versions may give a choice among the available types
- Using RATED_LIST will return the "general" rates that usually match the rates obtained from FedEx.com's manual rate tool. However, there is a discount that is sometimes applied to the rates obtained via Web Services due to an "automation discount". In other words, you get a discount for using Web Services. This sometimes will cause the rates shown via the module to be lower than the rates at FedEx's counter. The only way to get the discount is to print a shipping label via Web Services, which the module currently does not do. I plan on adding this functionality at some point in the future, either in the module itself or via a new Joomla component which interfaces with it. This may be a proprietary/commercial component, I have not decided yet.
- I have seen PAYOR_ACCOUNT rates discount International shipping quite a bit (up to 10% or so).
- A user pointed out to me that in order to remove the Web Services discount from your rates, all you need to do is NOT include the account number in the module setup. If you DO NOT include the account number, FedEx returns generic, non-discounted rates!
- Estimated Duties and Taxes - I have a version of the module that supports the ED&T API, but FedEx has requested that it NOT be made freely available for download, due to the customer-by-customer basis that ED&T is enabled. The module currently only supports US to CA shipments, but can be easily modified to include more. If you would like ED&T support in your FedExv2 module, first have it enabled by FedEx, then contact me for a copy of the module.
- SmartPost - Currently, the module does NOT support SmartPost. I plan to add it sometime in the future.
Want to display estimated shipping rates in the cart before checkout? Download my
CartRates for FedExv2 system plugin today (plgsystemcartrates-fedexv2.zip)!
NOTICE:
This module is not designed to be installed alongside my USPSv5 or UPSv2 modules. Installing these together can lead to a broken VirtueMart! I plan to create a unified module at some point in the future.
[attachment cleanup by admin]