Download the PHP package manageitwa/payg-tax without Composer

On this page you can find all versions of the php package manageitwa/payg-tax. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package payg-tax

Australian PAYG Tax Calculator

This library allows for the calculation of income tax on gross payments as per the rules of the Australian Tax Office. It supports all standard tax scales and the most common tax offsets and adjustments, including the Seniors and Pensioners Offset, Medicare Levy Reduction and Exemption, Study and Training Support Loans and Working Holiday Makers.

This library only supports calculating tax for gross payments after 13th October 2020 (FY2020-21 tax table release).

Requirements

Installation

This library can be installed via Composer

Usage

General usage

This library is built to be able to be slotted in to most PHP software. The library publishes a number of interfaces within the src/Entities directory. At a bare minimum, you would need to fulfill the following interfaces:

In general, you would like implement these interfaces into a model record for each of these entities.

You would then need to ensure that your model or class contains all the required methods specified by the interface. All interfaces and library files are strict typed to ensure data integrity.

Once you have your records correctly implementing the entitiy interfaces, you may use the \ManageIt\PaygTax\PaygTax class as an entrypoint to provide the entity records as a scenario and calculate the tax withheld for that scenario.

Including offsets and adjustments

Payees may require tax offsets, debts and adjustments to be applied to their tax withholding amount in order to fulfill obligations to the ATO. You need to apply adjustments to the Payee record. For example, a payee who is at the age that they are applicable for the Australian pension may wish to use the Seniors and Pensioners tax offset.

The library does not mind how you implement this into your model / system, as long as the Payee record has a getAdjustments() method that returns the adjustments as an array.

Offsets and adjustments are applied after the initial tax withholding amount is calculated.

Custom adjustments

If this software does not cover a particular adjustments that might be applied to the tax, you may create your own adjustments and ensure that it is returned by the getAdjustments() method for the Payee record. You may use the isEligible() method in the custom adjustment to determine the eligibility of the adjustment based on the payer, payee, tax scale and earning applied in the scenario.

Tax scale classification

By default, the library uses tax scale and adjustment eligibility methods to work out the applicable tax scales and available adjustments to apply to a given scenario. These are the isEligible() methods defined in both the TaxScale and TaxAdjustment entities. It is expected that only one tax scale will apply to any given scenario - any number of adjustments may be applied however.

In some rare cases, this may result in a particular scenario not having an applicable tax scale, or more than one tax scale being applicable. In these cases, either a NoTaxScalesException or MultipleTaxScalesException will be thrown, respectively.

You may choose to use a different tax scale classifier if you wish to change how the system determines the applicability of the tax scales. Note that the getTaxScale() method should still return one applicable tax scale per scenario.

Disclaimer

While Manage It Pty Ltd has taken great care to ensure the accuracy of the tax withholding calculations in this library, including test cases that match to the ATO sample data and static analysis, it does not cover 100% of the potential offsets or adjustments that can be made to a payee's taxation responsibility and does not take into account your personal, financial and taxation situation. You should always verify any calculations with a registered tax agent.

Manage It Pty Ltd accepts no responsibility for miscalculations or assumptions that are made through the use of this the library that result in you withholding too much or too little tax in an earning.

License

This library is dual-licensed. For non-commercial usage, this software is available under the terms of the GNU General Public Licence (GNU GPL) version 3. The terms of this license are available in the LICENSE document included in this library.

For commercial usage - for example but not limited to, implementation in a commercial product or usage for a commercial service, please get in touch with Manage It Pty Ltd on [email protected] or by phone on (+61) 08 9380 0271 to discuss a commercial license.


All versions of payg-tax with dependencies

PHP Build Version
Package Version
Requires php Version ^7.4|^8.0
nesbot/carbon Version ^2.71.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package manageitwa/payg-tax contains the following files

Loading the files please wait ....