1. Total the individual gross weights of an order (eg 47500 grams).
2. Add 10% to the total gross weight (for packaging weight allowance) (eg 47500 + 4750 = 52250 grams).
3. Divide by 20000 grams (20kg is the current max. parcel weight allowed to us by Australia Post) (eg 2.6125).
4a. If number is less than 1 (eg 0.925) , there is only one package.
4b. If number is greater than 1 (eg 2.6125 in above example) , charge the customer the whole number (in this example 2) X 20kg package fee. Then calculate remaining decimal number (0.6125 in this example) X 20000 grams (equals 12250 grams), and charge accordingly for the weight of this smaller package.
5a. For domestic orders, we need to charge the registered post fee (currently $2.50) X the number of packages (3 in this example, just round the 2.6 up to the next integer).
5b. For international orders, we need to charge insurance and confirmation (if applicable to that country) for each parcel. The confirmation charge is easy because it is a standard fee (currently $3.00) X the number of packages. For insurance, I think the simplest way is going to be to take the total value/cost of the order (all the packages) then allocate the insurance proportionately (I realize it won't be exact, but it is a least something). To do this we need to divide the weight of the final box (the left over grams, 12250 in this example) by the total weight of the order obtained in step 2 (this comes to 0.234). Therefore, this box contains 23.4% of the total value of the order and should be insured accordingly (if available to the destination country). Then calculate 100% - 23.4% = 76.6%, and share this remaining percentage (of the total order value) over the remaining boxes (the maximum postage weight boxes) and charge insurance accordingly.
NB.
International insurance (per parcel) is currently: first $100 of insurance costs $7.50, then $2.00 per $100 of insurance cover or part thereof.
6. Finally, charge our packaging and handling fee (currently $1.50, per order, not per box).