The receipt that says the message arrived. Its counterpart NACK says it was not accepted. Without one of them the sender knows nothing.
Definition
ACK is short for acknowledgement and exists in some shape in every protocol meant to be relied on. The principle is the same everywhere: a message is not delivered until the recipient has said that it is.
It is worth separating two levels, because they answer different questions. A technical acknowledgement says the message arrived and the format held. An application-level acknowledgement says the system on the other side actually managed to use the content. In EDIFACTElectronic Data Interchange For Administration, Commerce and Transport - UN standard for electronic data exchange. these are CONTRL and APERAK, which are two different message types precisely because they mean different things.
The third possibility is the dangerous one: no acknowledgement at all. A message that disappears without a reply looks exactly like a message that went through, right up until someone goes looking for a result that never came.
The acknowledgement is tied to two other mechanisms. Without it the sender does not know whether to resend, and resending without the recipient handling duplicates means the same business event can be processed twice.
The acknowledgement is the part of an integration that is easiest to postpone and most expensive to lack. It adds no new function on the day it is built, and it is the only thing that works on the day something fails.
HANDSAL generates and interprets acknowledgements as part of the job, not as something to switch on later. STUBB does the same against a simulated Elhub: your system sends the message, the stub generates the acknowledgement and updates the status, so the acknowledgement flow is tested before it meets the real central system.
In practice
The acknowledgement is the part of an integration that is easiest to postpone and most expensive to lack. It adds no new function on the day it is built, and it is the only thing that works on the day something fails.
HANDSALTvimenning’s EDI server for bilateral message exchange: receives, translates, routes and acknowledges messages between companies and marketplaces. generates and interprets acknowledgements as part of the job, not as something to switch on later. STUBBTvimenning's simulator platform for integration testing - we build mock environments of the counterparties your systems talk to, so they can be tested without touching production. does the same against a simulated ElhubNational hub for metering data and market processes in the Norwegian electricity market.: your system sends the message, the stub generates the acknowledgement and updates the status, so the acknowledgement flow is tested before it meets the real central system.