Australia Extension

Description

Broad extension that provides essential functionality for Australian stores, including Australia Post shipping, direct deposit and BPAY payment methods and adds Australian regions and postcodes.

This extension is intended to provide most of the functionality needed to run a Magento store in Australia. This includes all essential payment and shipping methods as well as small enhancements.

Currently available are:

  • Australia Post shipping
  • Direct Deposit payment
  • BPAY payment
  • Adds in Australian states and territories to the regions directory
  • Adds in address autocomplete based on Australian localities and postcodes

Instructions

Australian Business Number

There is an ABN field available under System → Configuration → General.

Note that this field is not currently used anywhere in the system and is provided for use by developers only. To access the ABN value, use the following PHP code:

Mage::getStoreConfig('general/business/abn');
Future versions of Magento may make it possible to use this value directly in email templates.

For information on how to easily add your ABN and contact details to invoices, refer to our blog post How to set up a Magento store for Australia.

Australia Post

When using the Australia Post shipping module please keep in mind the following:

  1. Remember to set the product weight unit accordingly.
  2. Shipping is limited to items under 20kg. This is a limitation of the Australia Post service itself.
  3. The shipping origin must be in Australia.

Otherwise shipping won't turn up on the frontend during checkout.

Australia Post eParcel

To set up the eParcel shipping method, you will first need to create a comma-separated value (CSV) file containing your eParcel postcodes, weights and rates. The format of this file should be:

"Country", "Region/State", "Postcodes",      "Weight from", "Weight to", "Parcel Cost", "Cost Per Kg", "Delivery Type"
"AUS",     "QLD",          "4210-4229,2485", 0,             0.6,         5,             0,             "eParcel Standard"
"AUS",     "QLD",          "4300-4307",      0,             0.6,         4.2,           0.7,           "eParcel Standard"
"AUS",     "NSW",          "2250",           0.6,           20,          8.25,          0.58,          "eParcel Standard"
"AUS",     "ACT",          "0200,2600,2620", 0.6,           20,          7,             0.62,          "eParcel Standard"
"AUS",     "*",            "*",              0,             0.6,         4.75,          0,             "eParcel Standard"
"AUS",     "VIC",          "3214-3220",      0.6,           20,          8.13,          4.4,           "eParcel Express Post"
"AUS",     "VIC",          "3350,3353-3356", 0.6,           20,          10.05,         3.5,           "eParcel Express Post"
"AUS",     "*",            "4230,4449",      0.6,           20,          6.96,          0.3,           "eParcel Express Post"
"AUS",     "ACT",          "0200,2600",      0.6,           20,          12,            1.83,          "eParcel Express Post"
...

Each row specifies a shipping rate rule for a country, state, postcode and weight range combination. 'Any state' or 'any postcode' can be represented by an asterisk, as shown above. Postcodes are entered as a comma-separated list of individual postcodes and/or postcode ranges (two postcodes separated by a dash). As shown above, all column values except for those in the weight and cost columns must be enclosed in double quotes.

When a customer gets to the shipping step in the checkout, their order's weight and the country, state and postcode they have entered at the address step are checked against the table. The more specific rules are checked before the less specific ones (so rows without asterisks will be used in preference to ones with asterisks). If there are multiple rows that match at the same level of specificity and they differ in the 'Delivery Type' column, all matching rows will be added. For example, going from the table above, if a customer enters 'ACT' as their state and '2600' as their postcode, both of the 'ACT' rows above will match, so both 'eParcel Standard' and 'eParcel Express Post' will be shown as shipping options.

Once you have created this CSV file (based on your eParcel rates information), you can upload it from the backend by going to System → Configuration → Shipping Methods and selecting a specific website (such as 'Main Website') from the 'Current Configuration Scope' dropdown. The 'Import' file upload field under the 'Australia Post eParcel' section can be used to upload the CSV. Once this is done and the shipping method is enabled, customers that enter an address that matches one of the rules will be shown eParcel as a shipping option.

Most of the other eParcel configuration options are self-explanatory. 'Insurance Step' and 'Insurance Cost Per Step' control how expensive insurance will be (this will be shown as a separate shipping option, if it applies). The order's price is divided by the 'Insurance Step' and rounded up; this value is then multiplied by the 'Insurance Cost Per Step' to find the insurance cost. For example, if 'Insurance Step' is set to 50 and 'Insurance Cost Per Step' is set to 1.25, a $130 order will be charged $3.75 for insurance ($130 divided by $50 is 2.6, which rounds up to 3, multiplied by 1.25 gives $3.75).

Shopping Comparison Feeds

Three shopping comparison feed generators are available:

Each feed is generated in XML format, according to the specifications of the feed providers. All mandatory attributes have been included and some optional or recommended attributes of products have been included. The MyShopping and Shopbot feeds include an interface in the Magento backend for customising exactly which attributes are included in their feeds.

The feeds can be individually enabled and will run at midnight via the Magento cron job. Each feed's output directory can be set. The defaults are 'getprice-feeds/', 'myshopping-feeds/' and 'shopbot-feeds/'. For a given Magento environment the feeds will be outputted to 'magento/getprice-feeds/', the path is hence relative to the Magento installation directory. If the path begins with a forward-slash then the path given is used by the extension as an absolute path.

The generation process is performed for each store in the Magento installation. The XML files generated are thus based on the domain of the store. For example, the Magento store at '' with output directory 'myshopping-feeds/' would be written to:

/path/to/magento/myshopping-feeds/<your domain>-products.xml

The above feed file would be available to MyShopping at:

  • /myshopping-feeds/-products.xml

Each feed may have a default category specified, this category is assigned to products that do not appear in any particular categories. The Getprice feed allows the featuring of the manufacturer of the products to be enabled or disabled, as shown below:

In MyShopping and Shopbot this is achieved via a flexible mapping system:

The Shopbot feed, as configured above, has 4 product attributes featured in the feed: manufacturer, description, product category and product image link. These attributes are selectable through a drop-down list on the left column "Magento product attribute"; the right-hand column allows a label to be given to these attributes as included in the feed. For example, the attribute 'manufacturer' and tag 'brand' will result in the feed generated including 'Sony' for a Sony manufactured product in Magento. Clicking 'Add linked attribute' allows for more attributes to be mapped to the generated feed.

Note: The generation process of the feeds has been designed to handle extremely large datasets of products in a stable manner. However, achieving this stability required a slower generation time.

In general we have found:

  • Approximately 3,000 products may take an hour per feed, per store to complete.
  • Approximately 11,000 products may take 4 hours per feed, per store.

Changelog

2.0.2 - 8/3/2010
  • Fixed minor issue with PHP tags which could cause problems on some PHP setups.
2.0.1 - 1/3/2010
  • Fixed issue with BPAY and Direct Deposit always being active during checkout.
  • Checked compatibility with Magento 1.4.0.0 - 1.4.0.1.
2.0 - 26/1/2010
  • Improvements to BPAY CRN calculations.
  • Addition of comparison shopping site feeds.
1.2.6 - 28/9/2009
  • Minor fix to database update script to solve issues when using table prefixes.
1.2.5 - 16/9/2009
  • Fixes to Direct Deposit and BPAY templates.
  • All shipping and payment methods are disabled by default.
1.2.4 - 1/9/2009
  • Minor update to add more robust response parsing from Australia Post DRC.
1.2.3 - 24/8/2009
  • Code clean up and minor improvements for eParcel module.
1.2.2 - 28/7/2009
  • Fixed issue with eParcel rates database.
1.2.1 - 24/7/2009
  • Fixed issue with eParcel shipping method in Magento 1.3.x.
1.2
  • Added a more robust connection method to Australia Post DRC server.
1.1
  • Added Registered Post shipping options to Australia Post.
  • Added Australia Post eParcel support (ALPHA) (rate calculation based on AuctionMaid MatrixRate)
  • Updated for Magento 1.2.
1.0
  • Added address autocomplete.
0.8
  • Updated for compatibility with Magento 1.1.

Known Issues

  • Direct deposit info block in the checkout sidebar does not display bank information.
  • Registered Post includes Extra Cover for free on orders under $100, resulting in "Standard" and "Standard with Extra Cover" to be the same price.