Acknowledgement and validation
About
MSATS Market Settlement and Transfer Solutions. The procedures published by AEMO under clause 7.2.8 of the National Electricity Rules, which include those governing the recording of financial responsibility for energy flows at a connection point, the transfer of that responsibility between market participants, and the recording of energy flows at a connection point. validates and responds to ALL Transactions with an acknowledgment of receipt (ACK An acknowledgement file from AEMO with a filename extension of .ACK. The file contains messages to acknowledge the success of another file.). Acknowledgement Transactions depend on the interface used: API Application Programming Interface; a set of clearly defined methods of communication between various software components., Batch A right type assigned to a participant user by their participant administrator to access a Batch (file) application, or web. This section describes validation, ACK files and how to acknowledge one for each interface.
MSATS to participant
MSATS does the following when submitting Transactions to participants:
-
Sends a zip file to your Participant Outbox.
If you do not have a back-end system to process incoming files, AEMO Australian Energy Market Operator recommends you save the file and look at the contents before acknowledging.
To save the zip file, right-mouse click, select Save Target As, and save it to your local drive.
-
Once you acknowledge the file, MSATS moves the zip file into your Participant Archive.
Access to the Participant Archive depends on the rights assigned to you by your company’s Participant Administrator Creates and maintains access to AEMO systems for their Participant ID users..
-
MSATS deletes the zip file from your Participant Outbox.
Validation
Transactions Initiated by participants undergo several validations prior to moving to the Requested A status point of a Change Request. status.
Level 1
MSATS performs the following 1st level validations:
-
The user ID nominated in the <SecurityContext> element of the file is permitted to perform each type of batch transaction submitted.
-
The XML is well formed (meaning that it meets the rules defined for writing XML).
-
The file is valid according to the rules specified in the aseXML schema.
-
The schema and transaction versions are supported by MSATS.
-
The number of transactions in the file do not exceed the transaction limits for the transaction group imposed by MSATS.
Level 2
For each accepted Transaction See Relevant Rules or Procedures, MSATS performs 2nd level validations and processes the request. These second level validations include business-level validations such as checking:
-
The initiator of the Transaction can or is acting in a Role that is entitled to submit a transaction for the nominated change reason code.
-
All required fields for this change reason code, as required by the Field Validation Rules, are provided.
-
Only fields valid for this change reason code, as required by the Field Validation Rules, are provided.
-
The Change Reason Code is valid for use in the jurisdiction in which the NMI is located.
Subsequent change request validation
After the Change Request A transaction submitted by participants in MSATS whenever they want to create or update data held in MSATS. is submitted, any subsequent Change Requests submitted by the Initiating participant is validated as follows:
-
The NMI on the subsequent Change Request is checked against the NMI on the initial Change Request.
-
The Participant ID on the subsequent Change Request is checked against the Participant ID on the initial Change Request.
Validation checks
Validation A process to test the veracity and integrity of metering data. checks in order of priority are:
-
Codes and dates comply with the codes and rules look-up tables in the MSATS Web Portal > Administration > Codes and Rules Maintenance.
The following data is validated:
- Change Request ID
- Jurisdiction
- Role ID
- NMI Status Code
- Read Type Code
- Change Request Code
- TNI Code
- DLF Code
- Metering Installation Type Code
- Parent Name
- Child Name
- Proposed Change Date
-
Change Reason Codes and Field Validation Rules comply:
- Change Reason Codes, see Change reason codes.
- Field Validation Rules: RI, OI, RQ, RD, RA.
-
NMI characters against the NMI Checksum.
-
The Initiating participant is an active participant and can act in the Role to initiate the Transaction.
The following data is validated:
- Participant ID
- Participant Status
- Participant Roles
-
The Proposed Change Date and the Actual Change Date are within the range allowed by the Change Reason Code.
-
The Proposed Change Date, the Actual Change Date, and the Actual End Date against the Timeframe Rules.
-
Information regarding Embedded Networks:
- The codes comply with the MSATS Web Portal > Administration > Codes Maintenance > Embedded Network Identifier Codes.
- The Parent and Child Connection Point names are not identical for the same NMI.
- The Child NMI is checked against the Parent NMI.
- There are no circular relationships.
- Prevent Local Retailer changes on a Child NMI.
- If a Parent NMI is not active, there are no active Child NMIs.
Validation explanations
Validations and explanations summarises the validations MSATS performs when checking a Change Request The way information is returned from an API. In a request, the client provides a resource URL with the proper authorization to an API server. The API returns a response with the information requested. in PVAL status. If any of these validations fail, the Change Request moves to REJ status.
Table 108 Validations and explanations
Validation |
Check |
---|---|
Actual Change Date |
If the Change Reason Code is one submitting an ACTUALCHANGEDATE (CR 1500), if the participant submitting is where the Data Request was sent. Use the initiating Request ID to identify the original Change Request If the ActualChangeDate is within the Retrospective Period |
Changes to Change Requests |
If the participant submitting the updated Change Request is the same participant who submitted the original Change Request and the original Change Request status is not CAN, REJ, or COM For Change Request lifecycle details, see page Page 1 |
Checksum |
If the NMI Checksum is valid for the NMI supplied |
Date |
For a Prospective Change:
For a Retrospective Change:
|
Embedded Network |
If the Embedded Network Code is valid for the period covered The EmbedNetParent and EmbedNetChild fields in the CATS_NMI_DATA table are not the same If a Child NMI is being created, a Parent NMI has been identified for the Embedded Network The change does not produce an Embedded Network circular relationship It is not a change of LR on a Child NMI (unless the Transaction is creating the Child NMI) It does not create an orphan (i.e. if a parent is removed, there are no more parents or children) |
Field Completeness |
For the Change Reason Code:
|
Field-level |
|
Initiating Party |
|
Jurisdictional Rules |
|
MDM |
Some of these validations also apply at the time it is about to move to COM status. The context for this validation is if the it completes, the configuration as of the Day after the Actual Change Date or, for the period covered by the Proposed Change Date, must not break these rules:
|
New NMI |
If the Change Reason Code is 2000, 2001, 2020, 2021, 2100, 2500, or 2501, there isn’t an existing record on the CATS_NMI_ DATA table for this NMI |
RA |
If, in the Field Validation Rules there are RA fields, there is a participant to send the Data Request for the missing data to on the NMI Master Record for the period covered |
RQ |
If, in the Field Validation Rules there are RQ fields and no data on the NMI Master Record for those fields, there is a participant to send the Data Request for the missing data to on the NMI Master Record for the period covered |
Two-stage batch validation process
Whenever you submit a Transaction by Batch it goes through two levels of validation, MSATS conveys:
-
First level validation in an .ACK file placed in your Participant Outbox.
If you submit the Batch file using the Web Portal you also see it on the interface.
If the Transaction passes the first level validation, it passes to second level validation.
-
Second level validation in a Response Transaction.
The type of Response The information returned by an API after a request is made. Responses are usually in JSON or XML format. Transaction you receive depends on the submitted Transaction:
Type |
Response |
---|---|
Change Request (CR) |
Change Request Response (CRR) |
Objection (OBJ) |
Objection Response (OBJR) |
NMI Discovery Request (NMID) |
NMI Discovery Response (NMIR) |
Report Request (RPTD) |
Report Response |
Meter Data Notification (MDN) |
Meter Data Response |
-
The Response Transaction contains the result of your request, Request IDs, or the results of the validation. For example, Change Request, Objection, Meter Data Notifications.
Acknowledgement
ACK files
The ACK file includes:
-
The results of the 1st level validation.
-
The status: Accept or Reject.
-
The Receipt IDs: one for the message and one for each Transaction.
Different Transactions have different content in their ACK files.
Change requests
For Change Requests, the numeric part of the Receipt ID corresponds to the MSATS assigned Request ID. In Transaction ACK file, the Receipt ID is CATS Customer Administration and Transfer Solution. A set of procedures, principles and obligations made under the National Electricity Rules as part of Market Settlement and Transfer Solutions (MSATS), and applicable to NMI (National Metering Identifier) small and large classifications.-CR8335806, so 8335806 is the Request ID.
You can use the Request ID to search for the Change Request and check the status of the Transaction.
Figure 147 Transaction ACK file
NMI discovery
For NMI See Relevant Rules or Procedures Discovery the receipt ID identifies the corresponding file in your Participant Outbox (see NMI discovery ACK Page 1 and Participant outbox filename).
Figure 149 Participant outbox filename
Objections
For Objections, the numeric value of the Receipt ID corresponds to the MSATS assigned Objection A type of transaction raised in relation to a Change Request. ID. InObjection Transaction ACK the Receipt ID is CATS-OBJ19735, so the Objection ID is 19735. You can use the Objection ID to search and check the status of the Objection.
Figure 150 Objection Transaction ACK
Reports
For reports, the numeric value of the Receipt ID corresponds to the MSATS assigned Report A data report that loads into a data model table. Identified by its type, subtype, and version. For example: BILLING,BILLINGASPAYMENTS,2 Request ID. In Report ACK the ID is CATS-215731, so the Report Request ID 215731.
Acknowledgement – API
Sending and receiving acknowledgements using an API differs according to the type of API you use. For details, see Guide to NEM Retail MSATS and B2B systems B2M Business-to-Market APIs > Participant Implementation.
Participants can nominate the outbound protocol for B2M messages by transaction group, so acknowledged messages can be your Participant Hub Queue and your B2M Outbox.
Acknowledgement – batch
When you submit a Transaction using the File Interface it is validated and an Acceptance or Rejection response returned with the Change Request Response (CRR) Transaction Type Code As described in the CATS Procedures, a code used in MSATS to identify a need to change CATS Standing Data..
To acknowledge a zip file in your Participant File Server The publishing point from AEMO systems to participant systems. Each participant is allocated an account and access to private and public areas. Participants are responsible for interfacing with the participant file server. Outbox, write an ACK file with the same name as the zip file. For help, see Creating and submitting batch transactions on How you use MSATS B2M.
Acknowledgement - web portal
To acknowledge a zip file in the web portal:
-
Login to the web portal, click Data Load Import > Participant Outbox.
-
Select the relevant zip files and click Acknowledge Selected.
- MSATS writes an .ACK file to your Participant Inbox and deletes the zip file.
- MSATS detects the zip file is deleted so deletes the .ACK file it created in your Participant Inbox.
-
If within 30 seconds you see the following message, MSATS is unable to delete the zip file. Follow the steps below to delete the ACK and zip files.
ACK deletion -API
Follow the steps for Batch or web portal ACK deletion.
ACK deletion - batch
To delete an the ACK from the Participant File Server:
-
Login to the Participant File Server and highlight the ACK file.
-
On your keyboard, press Delete.
-
Check the Inbox and Outbox are empty.
ACK deletion - web portal
To delete an ACK from the web portal:
-
Login to the web portal and navigate to Data Load Import > Participant Inbox.
-
Select the check box next to the ACK file and click Delete Selected.
Zip deletion – API
Follow the steps for Batch or web portal zip deletion.
Zip deletion – batch
To delete the zip from the Participant File Server:
-
Login to the Participant File Server.
-
Select the zip file and on your keyboard press delete.
Zip deletion - web portal
Sometimes, the MSATS Web Portal cannot complete the Hokey-Pokey Protocol The MSATS FTP Protocol on your behalf (producing the ACK file and deleting your zip file) so the following message displays:
MSATS allows you to continue using the web portal for other tasks but the zip file is sitting in your Participant Inbox and there is no ACK file in your Participant Outbox.
When MSATS completes the Hokey-Pokey Protocol there is an ACK file in your Participant Outbox, so you must delete your zip file. You can do this in the web portal or Participant File Server.
Make sure you save the relevant information from the .ACK file before you delete the zip file because MSATS is not monitoring the processing for you.
When MSATS detects you deleted your zip file it deletes the ACK file in your Participant Outbox, so the file handling cycle is complete.
To delete the zip file from the web portal:
- In Data Load Import > Participant Inbox, select the check box next to the File Name and click the Delete Selected.
MSATS zip file deletion

Before MSATS deletes a zip file, it is copied to your Participant Archive on the Participant File Server. The time a file stays in the archive is about six months to one year. Participant Users with access rights can view the Participant Archive in the following interfaces.
- The web portal > Data Load Import. For help, see Guide to MSATS Web Portal.
- Participant File Server > Archive.
The folder structure follows the model in Participant archive structure. For example, the full path and name of an archived file might be:
X:\PARTID\Archive\2003\4-Apr\07\15.22.03\catsm_abcde_123456zip
The folders underneath Day contain a maximum of 500 files. The names of these folders correspond to the time when the first file in the folder was archived and follow each other chronologically. The Last Modified date of each file in the directory is the original date the file was first created in your Participant Outbox and remains unchanged.
Figure 152 Participant archive structure
View outstanding messages and acks
You can view your outstanding Messages and ACKS in the MSATS Web Portal > Participants > Participant Schema interface.