It depends a little on the implementation of your command bus. Some systems allow command handlers to send responses back to the original sender.
The standard solution in your case is not to confirm the actual placing of the order, but simply to confirm receipt of the command, and the check is now processed. For inspections, this is usually completely normal, because orders take a couple of hours to process anyway.
If you really need to show some immediate results, you can poll another service for the completion state and / or timeout when there is no expected result for a certain period of time.
If this is too complicated for you, do not use the asynchronous command bus, but rather do synchronous command processing in which errors are immediately reported to the client.
source share