1. Go to this page and download the library: Download s-mcdonald/luca-accounts library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
s-mcdonald / luca-accounts example snippets
// Create a Transaction
$txn = new Transaction( $date , 'Capital Contribution',
[
new TransactionLine($cash_account_1, 100.00, 00.00),
new TransactionLine($eqty_account_2, 00.00, 100.00),
]
);
// Process the Transaction
$system->transact($txn);
// Your\App\AccountSystem.php
class AccountSystem extends \SamMcDonald\LucaAccounts\AbstractAccountSystem {
...
}
// Your\App\Account.php
class Account implements \SamMcDonald\LucaAccounts\Contracts\AccountInterface {
...
}
namespace Your\App;
use Your\App\AccountSystem;
use SamMcDonald\LucaAccounts\Components\Transaction;
use SamMcDonald\LucaAccounts\Components\TransactionLine;
class YourAccountingProgram
{
public static function simpleTransaction()
{
// Get a new instance of the Accounting System
$system = new AccountSystem();
// Register the transact function
$system->register('transact', static function(Transaction $txn) {
// Your logic to commit the transaction to DB
});
/*
* Load the accounts you want to use in the Transaction.
* This will most likely be a Model or Entity object.
*/
$acc1 = Account::fetch('cash-account');
$acc2 = Account::fetch('acc-rec-account');
$acc3 = Account::fetch('inventory-account');
/*
* Make a purchase of stock request
*/
$txn = new Transaction( new DateTimeImmutable('now') , 'Purchase of inventory',
[
new TransactionLine($acc1, 000.00, 50.00),
new TransactionLine($acc2, 000.00, 150.00),
new TransactionLine($acc3, 200.00, 0.00),
]
);
/*
* Perform the transaction
*/
$system->transact($txn);
}
}