Introduction
To support STP2 payloads, our ClickSuper API customers will be required to transition to our WRKR PAY API.
More information on Wrkr: As you may be aware InPayTech Limited was renamed to Wrkr Limited and incorporates ClickSuper services. We are building an exciting roadmap with our Wrkr solutions and ClickSuper will be transitioned to Wrkr Pay in the future. For more information on Wrkr and Wrkr Pay, please visit: www.wrkr.com.au
STP1 ClickSuper API v4.0 Process
Ref: ClickSuper STP API Specification 4_0_11
API Summary:
-
SOAP-based
-
Security: as form parameters
Sequence:
# |
Action |
Response |
Comment |
1 |
POST payload to https://clicksuper.inpaytech.com.au/api/v4.0/documentupload |
XML: 1014 Your document uploaded successfully |
|
2 |
POST interchangeId to https://clicksuper.inpaytech.com.au/api/v4.0/documentstatus |
XML: 1026 Queued |
|
3 |
POST interchangeId to https://clicksuper.inpaytech.com.au/api/v4.0/documentstatus |
XML: 1052 Sending to ATO |
|
4 |
POST interchangeId to https://clicksuper.inpaytech.com.au/api/v4.0/documentstatus |
XML: 1053 Waiting for ATO Response |
Keep polling until status changes |
5 |
POST interchangeId to https://clicksuper.inpaytech.com.au/api/v4.0/documentstatus |
XML: 1031 Success Includes ATO response |
|
STP2 WRKR PAY API Process
Ref: https://api-dev.bond.complypath.com.au/payevnt/v2/api-docs?group=public
You can use the SwaggerInspector here: https://inspector.swagger.io/builder?url=https%3A%2F%2Fapi-dev.bond.complypath.com.au%2Fpayevnt%2Fv2%2Fapi-docs%3Fgroup%3Dpublic
Registration:
Contact Andrew on andrew.souvannavong@wrkr.com.au for credentials.
API Summary:
-
REST-based
-
Security: OAuth 2.0 (all calls are secured with a Bearer token Authorization header, except retrieving the Token)
-
Payload validation is done before sending to the ATO
-
Note that the urls below are for integration testing purposes only, production urls will be provided after integration testing.
Sequence:
# |
Action |
Response |
Comment |
1 |
POST client_id, client_secret, grant_type to https://auth-dev.bond.complypath.com.au/oauth2/token |
JSON with access_token |
Standard OAuth 2.0 call to get token |
2 |
POST payload to https://api-dev.bond.complypath.com.au/payevnt/v2/xml/upload/submit |
JSON with requestId |
|
3 |
GET send requestId to https://api-dev.bond.complypath.com.au/payevnt/v2/xml/validate |
JSON with validation summary |
If no errors, proceed to next step |
4 |
POST requestId to https://api-dev.bond.complypath.com.au/payevnt/v2/xml/process |
JSON with processId |
|
5 |
GET send processId to https://api-dev.bond.complypath.com.au/payevnt/v2/search |
No response |
Keep polling until response received |
6 |
GET send processId to https://api-dev.bond.complypath.com.au/payevnt/v2/search |
JSON with ATO response |
|
The text ****HIDDEN**** indicates that the real content has been redacted for security reasons.
Example:
-
Get Authorization token
-
Request:
-
https://auth-dev.bond.complypath.com.au/oauth2/token
client_id: "****HIDDEN****"
client_secret: "****HIDDEN****"
grant_type: "client_credentials"
-
Response:
{
"access_token": "****HIDDEN****",
"expires_in": 3600,
"token_type": "Bearer"
}
-
Upload Payload
-
Request:
-
https://api-dev.bond.complypath.com.au/payevnt/payevnt/v2/xml/upload/submit?payerPayrollId=UNIQUE_ID&processId=UNIQUE_ID&tcAccepted=true&tcSignatory=EMPLOYER_NAME&employerAbn=ABN
****HIDDEN****
-
Response:
{
"requestId": "****HIDDEN****"
}
-
Check payload validation
-
-
Request:
-
-
https://api-dev.bond.complypath.com.au/payevnt/payevnt/v2/xml/validate/REQUEST_ID
-
Response:
{
"processId": null,
"status": null,
"responseBody": null,
"validations": null,
"payevntSummary": {
"declarationType": "RAMSSP",
"employerSummary": [
{
"companyName": "****HIDDEN****",
"companyIdentifierType": "ABN",
"companyIdentifier": "****HIDDEN****",
"submissionId": "****HIDDEN****",
"payDate": "2022-02-10T00:56:38.314+0000",
"numberOfEmployees": 2,
"gross": null,
"payGW": null,
"childSupportGarnisheeAmount": null,
"childSupportDeductionsAmount": null
}]
}
}
-
Sent to ATO
-
-
Request:
-
-
https://api-dev.bond.complypath.com.au/payevnt/payevnt/v2/xml/process/REQUEST_ID
-
Response:
{
"processId": "****HIDDEN****",
"status": "SENDING",
"responseBody": null,
"validations": [],
"payevntSummary": null
}
-
After waiting, get ATO response
-
-
Request:
-
-
https://api-dev.bond.complypath.com.au/payevnt/payevnt/v2/search/PROCESS_ID/response
-
Response:
{
"maximumSeverityCode": "ERROR",
"eventItems": {
"eventItem": [
{
"errorCode": "SBR.GEN.INFO.1",
"severityCode": "INFORMATION",
"shortDescription": "Transmission Unsuccessful",
"detailedDescription": null,
"parameters": null,
"locations": {
"location": [
{
"locationInstanceIdentifier": "1",
"locationPathText": null
}]
}
},
{
"errorCode": "SBR.GEN.INFO.2",
"severityCode": "INFORMATION",
"shortDescription": "Total number of transactions in the transmission is {number}",
"detailedDescription": null,
"parameters": {
"parameter": [
{
"parameterIdentifier": "number",
"parameterText": "3"
}]
},
"locations": {
"location": [
{
"locationInstanceIdentifier": "1",
"locationPathText": null
}]
}
},
{
"errorCode": "SBR.GEN.INFO.4",
"severityCode": "INFORMATION",
"shortDescription": "Number of transactions passed authorisation check is {number}",
"detailedDescription": null,
"parameters": {
"parameter": [
{
"parameterIdentifier": "number",
"parameterText": "3"
}]
},
"locations": {
"location": [
{
"locationInstanceIdentifier": "1",
"locationPathText": null
}]
}
},
{
"errorCode": "SBR.GEN.INFO.5",
"severityCode": "INFORMATION",
"shortDescription": "Number of transactions failed authorisation check is {number}",
"detailedDescription": null,
"parameters": {
"parameter": [
{
"parameterIdentifier": "number",
"parameterText": "0"
}]
},
"locations": {
"location": [
{
"locationInstanceIdentifier": "1",
"locationPathText": null
}]
}
},
{
"errorCode": "SBR.GEN.INFO.6",
"severityCode": "INFORMATION",
"shortDescription": "Number of transactions passed channel validation is {number}",
"detailedDescription": null,
"parameters": {
"parameter": [
{
"parameterIdentifier": "number",
"parameterText": "0"
}]
},
"locations": {
"location": [
{
"locationInstanceIdentifier": "1",
"locationPathText": null
}]
}
},
{
"errorCode": "SBR.GEN.INFO.7",
"severityCode": "INFORMATION",
"shortDescription": "Number of transactions failed channel validation is {number}",
"detailedDescription": null,
"parameters": {
"parameter": [
{
"parameterIdentifier": "number",
"parameterText": "3"
}]
},
"locations": {
"location": [
{
"locationInstanceIdentifier": "1",
"locationPathText": null
}]
}
},
{
"errorCode": "SBR.GEN.INFO.10",
"severityCode": "INFORMATION",
"shortDescription": "Number of unexpected errors is {number}",
"detailedDescription": null,
"parameters": {
"parameter": [
{
"parameterIdentifier": "number",
"parameterText": "0"
}]
},
"locations": {
"location": [
{
"locationInstanceIdentifier": "1",
"locationPathText": null
}]
}
}]
}
}