For those scenarios the option: "New Check In From Selected" is the solution:
New Check In From Selected
The "New Check In From Selected" option in Dispatch module allows you to scan back items against the original Check Out. It will show you the original Check Out and a new column "Verified" allowing you to scan back in all items.
If you start scanning and click the OK button of the Check In and have not scanned back in all items in your list, a message will warn you: "Unverified Objects Will Be Removed".
Clicking OK will remove all the unverified Objects from this Check In. Once the rest of the equipment comes back, you can use the same option: "New Check In From Selected" to check back in the rest of the equipment and this time only the items of the original Check Out that haven't been scanned back yet, will show.
If you have returned all items of a Check Out but still click on the option " New Check In From Selected" an empty Check In will pop up.
If you need to bulk-verify items and don't use the scanner, you can use Ctrl + A and highlight all items in the Dispatch > Set Status > Verified.
Checking back in cross hired items
The "New Check In From Selected" option will also allow you to check back in crossed hired item that were on the original Checkout. Since the barcode of that crossed hired item doesn't exist in your database, the only way to return a crossed hired item is to use the option "New Check In From Selected".
Checking back in Virtual Objects
Virtual Objects have one generic barcode and this barcode can be on different Check Outs at the same time. Thus to return a Virtual Object and to make the stock go up again, you need to use the option "New Check In From Selected".