FORMAT SWD TWG 25/05/2017 UNCLASSIFIED AUDIENCE DATE CLASSIFICATION Error Handling options for STP Payroll Events TA210 - Logical Solution Architecture Version 1.0 UNCLASSIFIED Document Owner: eCommerce UNCLASSIFIED ENDORSEMENT/VERSION CONTROL CURRENT VERSION NUMBER DATE 1.0 25/05/2017 APPROVAL [approver’s name] [approver’s position] [approved/endorsed] [date] [approver’s name] [approver’s position] [approved/endorsed] [date] [approver’s name] [approver’s position] [approved/endorsed] [date] VERSION CONTROL Version Revision date Author 1.0 25/05/2017 Vitaly Sidorenko Summary of Change For SWDs consultation Document versioning is described in IT Standard 03 UNCLASSIFIED PAGE 2 OF 11 UNCLASSIFIED TA210 – Error Handling options for STP Payroll Events TABLE OF CONTENTS 1 Introduction .................................................................................................................... 4 1.1 1.2 1.3 1.4 1.5 2 References ............................................................................................................. 4 Definitions ............................................................................................................... 4 Stakeholders ........................................................................................................... 4 Discussion History .................................................................................................. 5 Assumptions ........................................................................................................... 5 Error Hanlding Options................................................................................................... 6 2.1 2.2 2.3 2.4 Option 1 (Bulk) ........................................................................................................ 6 Option 2 (Batch in a Bulk) ....................................................................................... 8 Comparison of Behaviour...................................................................................... 10 Recommendation .................................................................................................. 11 UNCLASSIFIED PAGE 3 OF 11 UNCLASSIFIED 1 TA210 – Error Handling options for STP Payroll Events INTRODUCTION The current STP design has been taken up by a number of SWDs for the implementation and it is currently based on the “BULK” processing pattern when the whole message is rejected if at least one validation error is found in the request message. The current production statistic for failed BDE payment summary lodgements shows about 5% validation error ratio which means a potential increase in the number of transmission because the data for the failed transmissions needs to be fixed and lodged again. Considering that STP is a very high volume initiative those additional “correction” relodgements will increase the overall number of transmissions. In addition the “correction” process requiring Clients or Tax Agents to update errorred Employee records and resubmit Payroll Event will result in reprocessing of it and in the delay for Employee data to become available via ATO Online. Based on those main reasons two different options for processing patterns have been considered and presented in this document. 1.1 REFERENCES N/A 1.2 DEFINITIONS Term/ Acronym Expanded Definition BDE Bulk Data Exchange ATO channel for bulk data processing. SBR Standard Business Reporting Whole of Government initiative to simplify and facilitate business reporting obligations STP Single Touch Payroll Business initiative to support gathering data related to payroll processing from businesses to ATO 1.3 STAKEHOLDERS Stakeholders in this document are: Team/Person Interest STP SWDs Implement SBR enabled BMS to support STP ATO architects Governance of high level design and understanding as it relates to other systems and business processes. UNCLASSIFIED PAGE 4 OF 11 UNCLASSIFIED 1.4 DISCUSSION HISTORY Issues/Question /Meeting 1.5 TA210 – Error Handling options for STP Payroll Events Discussion Matter SMEs Contacted Date ASSUMPTIONS The table below lists the assumptions upon which this document is based. Ref # Assumption 1 This paper will discuss options STP error handling, however it is not expected to be part of the solution outlined for July 2017 UNCLASSIFIED PAGE 5 OF 11 TA210 – Error Handling options for STP Payroll Events UNCLASSIFIED 2 ERROR HANLDING OPTIONS 2.1 OPTION 1 (BULK) Processing is implemented as per the current design – at the high level the approach used by the SBR solution for this option is “all or nothing” so the whole Payroll Event message is treated as one atomic transaction which can be processed only if the whole message is valid including the parent and all children records (see the diagram below). Client or Tax Agent BULK processing Prepare Payroll Event Data Fix Employee errors in BMS yes Analyse Validation Report with errors Submit Payroll Event to ATO (first time) Re-submit updated Payroll Event to ATO for ALL Employee records Any errors found? Validate all Employee records Generate validation report no Finish Any errors found? ATO BMS yes yes Finish no Process all Employee records The validation in the SBR channel supports two level of validation: first one (being the xml schema validation) that ensures that the message is valid in the technical senses, (checks the payload is a well formed XML and it is validated against the schema which incorporates majority of the field level validation rules, e.g. cardinality, acceptable formats and values) second one (being the custom validation) is performed at the record level that ensures that message is valid in the business sense and supports check of business rules which can’t be expressed in the xml schema (e.g. cross fields/record checks). UNCLASSIFIED PAGE 6 OF 11 UNCLASSIFIED TA210 – Error Handling options for STP Payroll Events All errors encountered during validation process are combined into the validation report which is made available for the BMS. At this point if there are any errors found then the processing of the request message is stopped and no records are sent to the backend for further processing. Only if the validation passed successfully then all data records from the Payroll Event message are passed to the backend. After BMS pulls out the validation report the BMS user has to check whether any errors were encountered and if so then fix required data in the BMS. As soon as all issues are fixed the Payroll Event information needs to be resubmit to the SBR and for that BMS needs to generate the Payroll Event message and to include the full set of Employee records in it. The process continues until the Payroll Event message can be successfully validated. Only then the message will be processed by ATO and customer’s obligation to report the certain Payroll Event is considered fulfilled. The advantage of this option: Easy to retransmit the Payroll Event message as all Employee information need to be retrieved from the payroll system without any filtering. It is aligned with the current implementation and doesn’t require any changes by ATO and/or SWDs The “all or nothing” approach is the supported bulk processing pattern for all eCommerce channels The disadvantage of this option: In case of re-submit all “good” records need to be sent by BMS and re-validated by ATO The reprocessing of all Employee data records multiple times caused by the resubmission of fixed records will lead to the additional delay for Employee data to become available via ATO Online UNCLASSIFIED PAGE 7 OF 11 UNCLASSIFIED 2.2 TA210 – Error Handling options for STP Payroll Events OPTION 2 (BATCH IN A BULK) This option is suggested to implement more efficient processing of payroll event transactions. At the high level the Payroll Event message is considered as a set of independent Employee records (transactions) which allows validate and process them independently (as a batch hence the name for the option is “batch in a bulk”). Client or Tax Agent BATCH in a BULK processing Prepare Payroll Event Data Fix Employee errors in BMS Analyse Validation Report with errors Submit Payroll Event to ATO (first time) Re-submit updated Payroll Event to ATO ONLY for updated Employee records and the same Employer info Any errors found? Validate all Employee records Generate validation report no Finish ATO BMS yes Process only valid Employee records, ignore invalid ones Finish Similar to the first option when BMS user submits the Payroll Event to the SBR channel, all validation errors are reported in the validation report which is made available to the client via BMS. However the main difference in this option is that the errors encountered in some records would have no impact on other records which have been validated successfully so it would result in ability to accept or reject Employee records individually. When the message is validated in the SBR channel the validation report will be produced and made available to the end user via BMS similar to the option 1. However records which passed validation would be processed in ATO backend. As for the option 1 the BMS user has to check all returned errors and fix the data in the BMS. But in this scenario the BMS needs to generate new Payroll Event message with only a subset of Employee records (only those ones which required fixes and have been modified by the user). In addition to this the BMS needs to include Employer details as they were in the initial Payroll Event lodgement to allow ATO to update the data accordingly. UNCLASSIFIED PAGE 8 OF 11 UNCLASSIFIED TA210 – Error Handling options for STP Payroll Events In this case the BMS doesn’t re-send all Employee records to the SBR channel but instead sends only Employee records which failed validation in the initial Payroll Event lodgement. The advantages of this option: Valid Employee data records received and processed on the first submission so clients can see their details without delay or waiting for the re-submission Reduced duplicate validation of valid Employee details records Employee data can become available via ATO Online quicker because the reprocessing of the same Employee records multiple times doesn’t occur for resubmission of fixed records The disadvantages of this option: Additional logic is required in the BMS to be able recreate a previous Payroll Run details in a Payroll Event message. BMS needs to filter out only corrected Employee records to include them into “corrected” message Requires additional reconciliation process to ensure that all Employee records are received for every Payroll Event Requires changes in the design and implementation of payroll event services by SWDs and ATO which means additional expenses and time delay UNCLASSIFIED PAGE 9 OF 11 TA210 – Error Handling options for STP Payroll Events UNCLASSIFIED 2.3 COMPARISON OF BEHAVIOUR The table below presents the comparison of behaviour for both options. Behaviour BULK BATCH in a BULK Schema validation error in the Payroll Event transmission result in the whole transmission rejected + + Error in any Employer record results in the Payroll Event transmission rejected + + Error in any Employee record results in the Validation Error returned to BMS + + Error in any Employee record results in this record to be rejected + + Successfully validated Employee records are rejected by ATO if any other Employee record in the same transmission has an error + Successfully validated Employee records are processed by ATO when any other Employee record in the same transmission has an error + Rejected Employee records have to be fixed by the BMS user + All Employee records need to be re-lodged + Only rejected Employee records need to be re-lodged Update requires re-submission of the full Payroll Event Update only includes changed Employee records and original Employer/Payroll Event information UNCLASSIFIED + + + + PAGE 10 OF 11 UNCLASSIFIED 2.4 TA210 – Error Handling options for STP Payroll Events RECOMMENDATION Considering the tight timeframe and significant additional efforts required to change the current design and implementation the option 1 (stay with the current BULK processing pattern) is recommended. UNCLASSIFIED PAGE 11 OF 11
© Copyright 2026 Paperzz