ivanhosgood/aba-file-generator

Generate ABA bank transaction files from a collection of transactions. Forked from simonblee/aba-file-generator

0.0.8 2018-06-25 14:00 UTC

This package is not auto-updated.

Last update: 2024-05-26 03:27:50 UTC


README

Notes

The ABA format provided @ simonblee/aba-file-generator does not match specification as described at: https://www.commbank.com.au/content/dam/robohelp/PDFS/commbiz_direct_credit_debit.pdf https://www.cemtexaba.com/aba-format/cemtex-aba-file-format-details https://www.nab.com.au/content/dam/nabconnectcontent/file-formats/NAB%20Connect%20Consolidated%20File%20Format%20Specification_V0.05.pdf

Descriptive record does not contain BSB or account #. These fields (2-18) are to be left blank

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 ivanhosgood/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