| They're specifically formatted ASCII text files[1][2]. A single file can have multiple batches. A single batch can have multiple transactions. For example, a company may upload an ACH file to their bank for payroll that contains a single batch in it and in that single batch they have entries for each employee's payroll deposit. Or maybe it has two batches – one for payroll deposits and a second one for reimbursements (or bonuses) that get deposited separately. Maybe it even has batches for things like 401k transfers to custodian accounts. Their bank may receive that batch file, validate that and combine those batches with all the other ones it has and send those as a combined file to the clearing house.[3] That said, nothing stops you from transfer if a file with a single batch containing a single transaction. Such as when you need to initiate an immediate transfer instead of collating it with all the other transactions at the end of the day. At the end of the day, the ACH network is just a bunch of text files being pushed to sftp servers and servers periodically polling for new text files in those sftp directories to pick up and process. [1] https://achdevguide.nacha.org/ach-file-overview [2] https://github.com/moov-io/ach/blob/master/docs/file-structu... [3] My understanding of this aspect is vague at best, so may be misconstruing how they're aggregated or passed through to the clearing house. |