This is a publish-subscribe pattern variant.
In this case integration process needs to send acknowledgment to the source application if messages are delivered successfully in the target application. But message successful delivery cannot be determined by the first response sent by target application. Target application system might have messaging queue. It stores the messages in the message queue and send the response to the caller before applying it to the database. This is the first response. So to know if the messages are actually applied and committed in the database of target application you need to wait for couple of minutes to get the final response.
You can have a batch process which periodically invoke a web service to get final status of the messages from the target application.
The subscriber process read message queue and try to push to target. It writes success or failed messages to the status table.
The batch process reads the status table (which was populated by subscriber process), invoke web service to get the status and update the status code in the table. The table can have a key fields like messages id /transaction id / batch number or other business keys and web service can pass any of these keys as a parameter to get the status.
Source application can invoke web service periodically to get the status. Integration layer should expose a web service by which it returns the status to the source application after reading the table as per key values passed in the web service.
If source application can provide a call back web service then batch process can directly send the acknowledgement to the source application by using web service call back.