API Overview

The Single Touch Payroll API is quick to implement, simple to use and certified secure. Read a high level overview below, and get in touch with us to start your integration.



Important information

To use the ATO's STP Pay Event reporting it is required that payroll software vendors register with the ATO to obtain their own Payroll Product ID. Register with the ATO SBR as a software developer here. When completed, an account manager will be assigned to you and will be in touch to let you know further requirements how to obtain the Product ID.

If you are simply filling in a csv spreadsheet provided by us, you do not have to register.

YTD (Year To Date) cumulative

Please note: All Payee Amounts must be reported as Year to Date cumulative for the financial year reported in.


Authentication

Our API provides in-app authentication for your users, allowing seamless transitions between your payroll product and the Single Touch service. Call our login control from within your software and your users will automatically be presented with the Single Touch login form, freeing you from authentication responsibilities.

App login form
Handle the returning JWT Bearer token and attach it to your API calls.
    Body
    {
        "access_token" : "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ"
    }

Sending STP data

Compile your STP data in a JSON serialized object or XML and POST it to our API.

    headers
    {
        Authorization : Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9eyJzdWIiOfIxMjM0NTY3ODkwIiwibmFtZSI6Ikpvh5j88xKlIiwiYWRtaW4iOnRydWV9TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7Hg1
        Content-Type  : 'application/json'
        ...etc
    }
    body
    {
        [{
        "EventDate":"2017-06-21T12:55:44.1660171+10:00",
        "OrgName":"ACME Company Pty Ltd",
        "OrgABN":"123456789",
        ...etc,
        "EventRecords": [{    
                "PayeePayrollID":"SMITHA",
                "PayeeFirstName":"Alice"
                ...etc
                }],
        }]
    }

Response messages and notifications


Single Touch handles response messages and user notifications internally, so there is no responsibility to poll or otherwise query the API for responses. Once your API call has succeeded, you can carry on with your standard business workflow.

If you're interested in adopting the Single Touch Payroll API for your software, contact us for further information.