The Paycircle API gives you programmatic access to your payroll information stored in the application - empowering your in-house reporting or helping you synchronise data with your complementary third party applications.

The available information includes:

  • companies
  • team members
  • payroll periods
  • payments

Yes, you can subscribe to webhooks to get callbacks when actions are completed e.g. when payroll is run.

Currently you can't use the API to push data directly into your Paycircle payroll. However, you can load up data ready to import through the application. This two step approach is necessary due to concerns about the quality of data ported from legacy systems. Our import UI has advanced validation procedures which make interaction direct with the API a sub-optimal approach. Hence we require that all data imported into the system must ingress using this highly-optimised process.

Firstly, any request sent to the API must be authenticated. Contact your account manager, or our support team, to get your credentials, and then check the other FAQ about how to add authentication to your requests.

Your API request must reference the relevant entities using their global unique identifier (GUID) A typical example would be the following use case to retrieve a report for a specific pay period, showing how you can gather the correct IDs through a logical sequence:

  • Use CompanyAPI→GetCompanyList to get the CompanyID of the company you're interested in
  • Then use PeriodAPI→GetPeriodList to retrieve all the PeriodIDs of pay periods for that company
  • Call ReportAPI→GetReportsListForPeriod to get the ReportID for that company and the specified pay period
  • Finally, call ReportAPI→GetReportForPeriod using the combination of CompanyID, PeriodID, and ReportID to retrieve the report data you need.

Since the IDs are immutable, you can store these locally so you don't have to retrieve them each time.

Currently the Paycircle API uses Basic Authentication. To access the site, we'll issue you with credentials which you add to your request header using standard formatting as follows:

  • Key: 'Authorization'
  • Value: 'Basic ' + Base64 encoding of your username and password separated with a colon.

Tools like Postman include native support for this authentication method.

Not currently.

All your custom reports are available. If you need the data from a standard report, this is easily achieved by creating a custom report in the UI based on the standard report you desire (such as the Standard Year-To-Date Report), and this will become available in the API.

This approach means you can use the power and flexibility of our custom report feature to create completely targeted data sets for consumption via the API.

Our developer portal has full documentation together with a built-in capability for test the API.