simonblee/aba-file-generator

Generate ABA bank transaction files from a collection of transactions.

1.1.0 2021-12-15 09:37 UTC

This package is auto-updated.

Last update: 2024-03-26 04:47:38 UTC


README

Overview

Generates an aba file for bulk banking transactions with Australian banks.

License

MIT License

Installation

Copy the files where needed or install via composer:

composer require simonblee/aba-file-generator

Usage

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
);

// Set a custom processing date if required
$generator->setProcessingDate('tomorrow');

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);

References