Please note that this extension is provided as is. Always back up your website prior to installation.

Broad extension that provides essential functionality for Australian stores.

The Fontis Australia 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.

The following features are supported:

  • Australia Post shipping rates
  • Australia Post eParcel shipping rates
  • Checkout address validation using Australia Post’s API
  • Direct Deposit payment method
  • BPAY payment method
  • Export orders to eParcel
  • Export orders to Click & Send
  • Adds Australian states and territories to the regions directory
  • Postcode autocompletion for Australian localities and postcodes

Note: The shopping comparison feeds generator functionality has been separated and is no longer included in the Fontis Australia extension. It is now available in the Fontis Feeds Generator extension; it will need to be installed separately.

  • Version Compatibility: Magento CE1.4.x, CE1.5.x, CE1.6.x, CE1.7.x, EE1.6.x, EE1.7.x, EE1.8.x, EE1.9.x, EE1.10.x, EE1.11.x, EE1.12.x, MagePlus 1.0.x

Developer Not Included
Please ensure this extension is installed by an experienced Magento developer to avoid problems. Always test on a development copy of your website first and backup your website before installing.


Screenshots
Instructions
Instructions: 

Installation

There are three ways to install the Fontis Australia extension: Composer, modman and manual. The recommended way to install the extension is with Composer.

Note: The Fontis Australia extension requires the Australia Post API Client for PHP. This library is normally located in app/code/community/Fontis/Australia/lib. If it is not there, you will have to install it via Composer.

Composer

The recommended way to install Fontis Australia is to use the Magento Composer Installer. You will need to add the following lines of code to your composer.json file:

{
    "require": {
        "fontis/australia": "3.0.*"
    },
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/magento-hackathon/magento-composer-installer"
        },
        {
            "type": "vcs",
            "url": "https://github.com/fontis/fontis_australia"
        },
        {
            "type": "vcs",
            "url": "https://github.com/fontis/fontis_feedsgenerator"
        }
    ],
    "extra": {
        "magento-root-dir": "path/to/magento/"
    },
    "scripts": {
        "post-install-cmd": [
             "cd vendor/fontis/australia/src/app/code/community/Fontis/Australia/lib && composer install"
        ]
    }
}

Note: The scripts.post-install-cmd key is necessary to install some required dependencies that could not be loaded using the Magento Composer Installer. You will get a white screen if you do not install these dependencies.

If your composer executable’s directory is not in your PATH (or it’s called something else, i.e. composer.phar), you will need to update the post-install-cmd section in composer.json.

modman

To use modman to install the Fontis Australia extension, run:

modman clone git@github.com:fontis/fontis_australia.git

You will also need to manually install some Composer dependencies:

cd path/to/.modman/fontis_australia/src/app/code/community/Fontis/Australia/lib
composer install
Manual installation

Copy files from src/ into your Magento root.

You may need to manually install some dependencies if you find you are getting a white screen after installing the Australia extension:

cd path/to/magento/app/code/community/Fontis/Australia/lib
composer install

Contributions

This project is open source. You are encouraged to fork and submit pull requests.

Payment Methods

The Fontis Australia extensions adds two new payment methods – direct deposit and BPAY.

Direct Deposit

The Fontis Australia extensions allows customers to place orders using a direct deposit to the merchant’s bank account. Once an order has been placed, the customer will be presented with the merchant’s bank details, which they can use to pay for that order.

Configuration

The configuration options for the Direct Deposit payment method are located in the Magento system configuration (System → Configuration → Payment Methods → Direct Deposit).

direct deposit config options

The available configuration options are:

Direct Deposit (AU)
Title Set the name displayed for this payment method on the checkout page.
Enabled Enabled this payment method on the checkout page.
New Order Status Set the default order status for new orders using this payment method.
Customer Group Access Set the rule used to determine who sees this payment method on the frontend.
Customer Group The customer group affected by the Customer Group Access rule.
Account Name The merchant’s name
Account BSB The merchant’s BSB
Account Number The merchant’s account number
Message Set the message displayed alongside your payment method on the checkout page.
Payment from applicable countries Set whether all countries are allowed to use this payment method or just specific ones.
Payment from specific countries If the “Payment from applicable countries” field is set to “Specific” then set which countries are allowed to use this payment method.
Minimum Order Total The minimum order total allowed for this payment method to be applicable.
Maximum Order Total The maximum order total allowed for this payment method to be applicable.
Sort order The order in which this payment method is listed on the checkout page.

BPAY

Customers can place orders using BPAY. Once an order has been placed, the customer will be presented with the merchant’s Biller Code and Reference Number.

bpay checkout payment options
Configuration

The configuration options for the BPAY payment method are located in the Magento system configuration (System → Configuration → Payment Methods → BPAY).

bpay config optiions

The available configuration options are:

Direct Deposit (AU)
Title Set the name displayed for this payment method on the checkout page.
Enabled Enable this payment method on the checkout page.
New Order Status Set the default order status for new orders using this payment method.
Customer Group Access Set the rule used to determine who sees this payment method on the frontend.
Customer Group The customer group affected by the Customer Group Access rule.
Biller Code The merchant’s BPAY biller code
Use Customer ID for Ref Normally set to NO unless you use BPAY for recurring payments. Guest checkouts are NOT supported if this is set to YES.
Accepts Credit Cards Set to NO if you do not accept credit card payments through BPAY. This simply changes the text presented to the customer.
Message Set the message displayed alongside your payment method on the checkout page.
Payment from applicable countries Set whether all countries are allowed to use this payment method or just specific ones.
Payment from specific countries If the “Payment from applicable countries” field is set to “Specific” then set which countries are allowed to use this payment method.
Minimum Order Total The minimum order total allowed for this payment method to be applicable.
Maximum Order Total The maximum order total allowed for this payment method to be applicable.
Sort order The order in which this payment method is listed on the checkout page.

Shipping Methods

The Fontis Australia extension adds the Australia Post and eParcel shipping methods.

Australia Post

The Australia Post shipping method uses the Australia Post postage assessment service to calculate the available shipping rates for the customer’s order. The merchant can control whether the customer is also presented with options for insurance and signature on delivery.

This can be used in conjuction with the Click & Send order export feature to manage consignments.

auspost checkout shipping methods
Registration

In order to use the Australia Post shipping method:

  1. Register for an Australia Post ID.
  2. Register for the Postage Assessment Calculator service (the email address used to register for this service should be the same as for your Australia Post ID).

When you have registered for PAC, you will be sent an email with your API key that you can use to activate this shipping method.

Configuration

The Australia Post shipping method will only work if the shipping origin is Australia. If the shipping origin is not Australia then this method will not appear on the checkout. You can configure this option under System → Configuration → Shipping Settings → Origin.

shipping origin config settings

You will also need to enable the method as well as provide an API key in order to use the Australia Post shipping rates. These settings can be found under System → Configuration → Shipping Method → Australia Post.

auspost shipping config settings

The available configuration options are:

Australia Post
Enabled Enable the Australia Post shipping methods on the checkout page.
Developer Mode Use the Australia Post test environment to get shipping rates. Not recommended for production use.
API Key Your Australia Post Postage Assessment Calculator API key. You can for the register an API key to use the Australia Post postage assessment service here.
Allowed Methods Set which Australia Post shipping methods, e.g. Express Post, are allowed on the checkout page.
Signature on Delivery Controls whether shipping methods with the Signature on Delivery option are shown. If set to ‘Required’, only shipping methods with this option will be shown. If set to ‘Never’, shipping methods with this option will not be shown. If set to ‘Optional’, shipping methods both with and without this option will be shown, allowing the customer to choose.
Extra Cover Controls whether shipping methods with the Extra Cover option are shown (see above).
Pick Up (Metro Only) Controls whether shipping methods with the Pick Up option are shown (see above).
Ship to Applicable Countries Set whether to ship to all countries or just specific ones.
Ship to Specific Countries If the “Ship to Applicable Countries” field is set to specific then select the countries that will show up on the frontend.
Length Attribute Product attribute code used for length. This will be used to calculate shipping rates for orders with only one product. For orders with more than one product (or if this field is not set) then Default Parcel Length will be used for calculating prices.
Default Parcel Length (cm) The default length of the parcel if one cannot be calculated.
Width Attribute Product attribute code used for width.
Default Parcel Width (cm) The default width of the parcel if one cannot be calculated.
Height Attribute Product attribute code used for height.
Default Parcel Height (cm) The default height of the parcel if one cannot be calculated.
Default Parcel Weight (kg) The default weight of the parcel if one cannot be calculated. Shipping is limited to items under 20kg. This is a limitation of the Australia Post service itself.

Australia Post eParcel

This is a table rates-based shipping method used to calculate the shipping rates for eParcel. This can be used in conjunction with the eParcel order export feature to handle bulk consignment management.

Note: The eParcel system only allows for rate calculations using the uploaded rates and does not provide any integration with eParcel itself.

Configuration

You can configure the eParcel shipping method via the system configuration (under System → Configuration → Shipping Methods → Australia Post eParcel).

The available configuration options are:

Australia Post eParcel
Enabled Enable the eParcel shipping methods on the checkout page.
Title Set the name displayed on the checkout page for this shipping method group.
Method name Set the name displayed on the checkout page for each eParcel shipping method.
Condition Set the rule to calculate eParcel shipping rates. The only option is Weight vs Destination.
Calculate Handling Fee Set the rule to calculate eParcel handling fees. The options are Fixed and Percent.
Export CSV Export the eParcel shipping rates as a CSV file.
Import Import a CSV file to generate the eParcel shipping rates. More details below.
Handling Fee Used in conjunction with the “Calculate Handling Free” field to set the value used to calculate the handling fees.
Merchant Location ID Provided by Australia Post. The unique ID specifying a specific merchant location.
Post Charge To Account Merchant account to which Australia Post “post” the charges against for invoicing purposes.
Signature Required If “Yes”, Australia Post will attempt to capture a signature and if no-one is in attendance the consignment will be “carded”.
Signature Cost Additional amount to charge for requiring a signature.
Enable Insurance Set whether to include insurance with the calculated rate.
Insurance Step If insurance is enabled, set the multiple (in terms of dollars) to which we increase the insurance cost. For example, if insurance is $1.05 per $100, set this field to 100.0.
Insurance Cost Per Step If insurance is enabled, set the additional cost of insurance per step. For example, if insurance is $1.05 per $100, set this field to 1.05.
Return Address Name If the delivery fails, set a name for package return.
Return Address Line 1 If the delivery fails, set an address for package return.
Return Address Line 2 If the delivery fails, set an address for package return.
Return Address Line 3 If the delivery fails, set an address for package return.
Return Address Line 4 If the delivery fails, set an address for package return.
Return Suburb If the delivery fails, set a suburb for package return.
Return State Code If the delivery fails, set a state code for package return. Must be a two- or three-letter state code, e.g. VIC, NT.
Return Postcode If the delivery fails, set a postcode for package return.
Displayed Error Message Display an error message if the eParcel shipping rates can’t be calculated.
Ship to Applicable Countries Set whether to ship to all countries or just specific ones.
Ship to Specific Countries If the “Ship to Applicable Countries” field is set to specific then select the countries that will show up on the frontend.
Show Method If Not Applicable Show shipping method on checkout page regardless of whether it is valid for that order.
Sort order The order in which this shipping method is listed on the checkout page.
Importing eParcel shipping rates

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",     "NT",            "*",             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"

Note: Please make sure not to have duplicate shipping rates. You will get an error message otherwise.

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.

eparcel config options

Once you have created this CSV file (based on your eParcel rates information), you can upload it from the admin panel 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.

You can also export your eParcel rates (in CSV format) using the ‘Export’ button. You use this file to edit your rates if you’ve lost your original CSV file.

eparcel checkout shipping options

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).

Export Consignments

Selected orders can be exported to a CSV consignment format that can then be imported into eParcel or Click & Send.

consignment export screenshot

eParcel

You can generate a consignment for orders from the Orders grid (Sales → Orders) using the new action “Export to CSV (eParcel)”.

Configuration

You can access the settings for the eParcel consignment export feature under System → Configuration → eParcel Export.

eparcel export screenshot

You can configure the following fields to customise your consignment CSV file:

Parcel Settings
Use Cubic Weight Calculate the weight of your parcel using its dimensions. Ask your Australia Post account manager if necessary and / or how to set up.
Parcel Max Weight The default maximum weight of your parcel (in kg) if you have chosen not to calculate the weight of your parcel using its dimensions.
Parcel Width The default width of your parcel (in cm)
Parcel Height The default height of your parcel (in cm)
Parcel Length The default length of your parcel (in cm)
Charge Codes
Default Charge Code (Individual) The default contract charge code for consignments for individuals. Charge codes are determined as part of the contract set up. This value is overridden by overridden by values in your table rates.
Default Charge Code (Business) The default charge code for consignments for businesses, as defined by the “Business Customer Groups” field. Charge codes are determined as part of the contract set up. This value will be overridden by values in your table rates.
Business Customer Groups Identify which Magento customer group will fall under the “Business” default charge code. Make sure your contract supports business (B2B) charge codes.
Consignment Details
Use Multiple Good Records Sets whether to add each good as a row in the generated consignment (Yes) or just the last one (No). Leave as “No” unless otherwise advised by Australia Post.
Product Type Product type is mandatory for ECI and EPI consignments. Contact Australia Post for more information.
Consignment Details
Is Signature Required Should signature be required by default? Specific shipping methods will override this setting. Check cost of service on your Australia Post contract.
Add to Address Book Add delivery address to your eParcel address book.
Print Reference #1 Add the Magento invoice number to your consignment (if the order has been invoiced). This is useful for reconciliation.
Print Reference #2 Add the Magento order number to your consignment. This is useful for reconciliation.
Email Notification
Enabled Add the customer’s email address to the CSV file.
Notification Level Set what kind of email notification the customer will receive. You can set “None”, “Despatch” or “Track Advice”.

Click & Send

You can generate a consignment for orders from the Orders grid (Sales → Orders) using the new action “Export to CSV (Click & Send)”. The exported Click & Send consignment uses the Domestic / International format.

You need to have the Australia Post shipping method enabled in order for this feature to work.

Registration

To use Click & Send, you first need to register for the service.

Configuration

You can access the settings for the Click & Send consignment export feature under System → Configuration → Australia → Australia Post Click & Send.

click-and-send config settings

You can configure the following fields:

Field Description
Enabled This will enable the Click & Send consignment export feature.
Filter Shipping Methods Don’t display Australia Post shipping methods that can’t be imported into Click & Send during checkout.
Allow Export All Shipping Methods Allows the merchant to export any order with an Australia Post shipping method even if it can’t be imported into Click & Send.
Category of Items What type of items the order contains. This can be Returns Goods, Gift, Commercial Sample, Document, Other and Plant, Animal or Food Product.
Category of Items Description If you had previously set the Category of Items field to “Other” then you will need to provide a description of what kind of item your consignment is.
Non-delivery instructions Set what to do with the package if unable to be delivered. You can set “Treat As Abandoned”, “Return by Surface”, “Return by Airmail”, “Delivery/Redirect by Airmail” or “Delivery/Redirect by Surface”.
Return Address Return to the following address if undeliverable
From Name The merchant’s name
From Company Name The merchant’s company
From Phone The merchant’s telephone number
From Fax The merchant’s fax number
From ABN The merchant’s ABN number
From Address (Line 1) The merchant’s address
From Address (Line 2) The merchant’s address (line 2)
From Address (Line 3) The merchant’s address (line 3)

Australian Business Number

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.

Configuration

There is an ABN field available under System → Configuration → Australia → Business Details.

Business Details
ABN The merchant’s Australian Business Number
Phone Number The merchant’s phone number

Postcode Autocomplete

Australia Post provides a postcode lookup service that can automatically fill in postcode and state details on the customer account registration and checkout pages. A city, state and postcode will be suggested as soon as the customer starts typing in the City field.

This feature is only available in Australian regions.

postcode autocomplete on checkout

Configuration

You can activate postcode autocomplete under System → Configuration → Australia → Postcode Autocomplete. No API credentials are required.

postcode settings

There are two settings available to the merchant:

Postcode Autocomplete
Enabled You can enable or disable postcode autocompletion on the frontend.
Maximum Number of Results You can set how many suggestions are returned to the customer. The default is 20.

Australia Post Address Validation

You can optionally choose to enable address validation for your checkout page. The address validation takes advantage of the Australia Post Delivery Choices service.

Once a customer has entered their billing or shipping address details on the checkout, the Delivery Choices service will be used to validate the provided address. If the address is invalid, the customer will be prompted with optional suggestions for a correct address.

address validation on checkout

The customer can choose to accept the suggestion, reject it and use the exact address they entered or go back and edit their address.

If the customer’s address is already valid as entered, the dialog box is not displayed and they are simply taken to the next section in the checkout.

Registration

In order to use address validation on the checkout page:

  1. Register for an Australia Post ID.
  2. Register for the Delivery Choices service. Make sure your email address and Australia Post Customer Number (APCN) for your Australia Post ID is readily available. An APCN is made available upon registering for an Australia Post ID.

When you have registered for Delivery Choices, you will be sent an email with your Delivery Choices password that you can use to activate address validation.

Configuration

You will need to configure the address validation in order it to appear on the checkout page. The settings are located under System → Configuration → Australia → Address Validation.

Address Validation
Enabled Turn on address validation during the billing and shipping sections of the checkout.
Backend Set the backend used to provide the address validation service. Only Australia Post Delivery Choices is provided.
Delivery Choices Developer Mode Sets whether to send validation requests to the Delivery Choices testing environment. This is only useful for development and testing purposes and not recommended for production use.
Delivery Choices Email Address Your Delivery Choices account email. If you don’t have a Delivery Choices account, you can sign up here.
Delivery Choices Password Your Delivery Choices account password.
address validation config
Changelog
Changelog: 
3.0 - 24/07/2014
  • Australia Post address validation
  • Postcode autocomplete for checkout addresses.
  • Shopping comparison feeds generator split into separate extension.
  • Multiple bug fixes.
2.2.5 - 16/09/2013
  • Bugfixes for postcode installation.
  • Updates to eParcel code.

Thanks to Lucas van Staden for his contributions to this release.

2.2.4 - 07/05/2013
  • Improvements to postcode installation for performance and reliability.
  • Include DH Media eParcel extension.
  • Fix for address autocomplete.
  • Removed deprecated PHP code.

Thanks to Jonathan Day and Jonathan Melnick for their contributions to this release.

2.2.1 - 1/10/2012
  • Reworked the Australia Post shipping method to be more flexible.
  • Improvements to shopping feed code.
  • Changed the way postcodes are imported to improve performance of new installs.

Thanks to Jonathan Day and Ben George for their contributions to this release.

2.0.7 - 17/6/2010
  • Added new inclusion and exclusion controls to each shopping feed.
  • Updated the PHP function used to initialise sub-processes in the shopping feed generation from 'exec' to 'shell_exec'.
  • Added more thorough and consistent logging messages across all the shopping feeds.
2.0.4 - 16/4/2010
  • Improved speed at which shopping feeds are generated.
  • Fixed various shopping feed issues.
2.0.3 - 7/4/2010
  • Removed superfluous GST tax model.
  • Registered Post no longer displays "with Extra Cover" option for orders under $100.
  • Fixed bug with whitespace in post codes.
  • Fixed bug with Extra Cover methods having the same method code as standard methods.
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.