Generate ABA bank transaction files from a collection of transactions.
Generates an aba file for bulk banking transactions with Australian banks.
This library is very new and all test cases are not accounted for. It is recommended that you run a few manual tests and validate the file with your banking institute.
As always, if you notice any errors please submit an issue or even better, a pull request.
Copy the files where needed or install via composer:
composer require simonblee/aba-file-generator
Create a generator object with the descriptive type information for this aba file:
use AbaFileGenerator\Model\Transaction; use AbaFileGenerator\Generator\AbaFileGenerator; $generator = new AbaFileGenerator( '123-456', // bsb '12345678', // account number 'CBA', // bank name 'User Name', 'Remitter', '175029', // direct entry id for CBA 'Payroll' // description );
Create an object or array of objects implementing
AbaFileGenerator\Model\TransactionInterface. A simple Transaction object
is provided with the library but may be too simple for your project:
$transaction = new Transaction(); $transaction->setAccountName(...); $transaction->setAccountNumber(...); $transaction->setBsb(...); $transaction->setTransactionCode(...); $transaction->setReference(...); $transaction->setAmount(...);
Generate the aba string and save into a file (or whatever else you want):
$abaString = $generator->generate($transaction); // $transaction could also be an array here file_put_contents('/my/aba/file.aba', $abaString);