Transactional Email batches events for each webhook URL and POSTs approximately every minute. If the webhook URL does not return a 200 HTTP response code, the POST request will be re-attempted up to 100 times and random increasing intervals.
If a particular POST request is unsuccessful and is being retried, no other POSTs will be attempted until the first one succeeds or ultimately fails (after 100 attempts). Subsequent events are batched and deferred until the first completes. After the first batch completes, deferred batches will be processed sequentially.
Since webhook requests can ultimately fail, it is best to accept and store data (with an HTTP 200 response to Transactional Email) for later processing to avoid data loss.
The above applies for all webhooks (including for inbound processing).