Hi
In my opinion, if you use SAP notes for doing something, it is less questionable, for instance related with recommendation notes (as this note).
The deliveries can be created not only from sales order, it could be created from purchase orders (as STO, inbound deliveries or subcontracting processes). How can we rule it? With copy rules. Although we don't have a sales order, for STO SAP uses a pseudo-order (DL type if my memory works properly).
If you see any transaction for copy rules (from SO to SO, from SO to delivery, from SO to invoice and so on) you could see they are plenty of VOFM subroutines. Usually these settings are using standard VOFM subroutines, but you can create your own subroutines in your name range (please see Note 327220 - VOFM function and its objects for further information) using the standard VOFM as templates.
As this note (323306) suggests you can create your own VOFM and delete some checks, why? because in retail you can save negative stocks, why? becuase it's an usual requirement that sometimes the GI related with PO isn't done when you need to delivery STO to shops, so, it's usual that ATP fails.
But by my understanding you are mentioning a batch determination. Obviously, if you need to determine batch, you need to read inventory (although remember it's not the same, ATP and stock). Other question if it's suitable to set a dummy batch for the gap. You can also see SAP Note 498149 - FAQ: Availability check in purchasing.
I suggest you to solve it before with customizing tools before to use BADI or other enhancements.
I hope this helps you
Regards
Eduardo