In-Commerce supports payment types of 2 types:
- direct charge - user enters credit card on In-Portal side and gets charged right on the website
- delayed charge - user is redirected to gw website and enters cc info there and then gw posts to gw_notify.php script to report charge status
Also there are payment gateways, that has custom notification scripts, that include gw_notify.php in them. These gateways has extra line in them:
define('ADMIN', 1);
This presumably allows to substitute session to one used by user, who did a checkout. However as a side effect ORDER.SUBMIT (user type) e-mail event isn't sent, because it has "Front-End Only" checkbox set.
We of course can try to uncheck that checkbox, but this might result in ORDER.SUBMIT e-mail event being sent to user even when administrator is approving an order, but I'm not sure for 100% about that.