medianova/laravel-accounting is a Laravel package for accounting package for laravel.
It currently has 0 GitHub stars and 380 downloads on Packagist (latest version v1.3).
Install it with composer require medianova/laravel-accounting.
Discover more Laravel packages by medianova
or browse all Laravel packages to compare alternatives.
Last updated
You can install the package via composer:
composer require medianova/laravel-accounting
configuration in config/accounting.php
return [
'provider'=>env('ACCOUNTING_PROVIDER', 'quickbooks'),
'logo'=>[
'base_url' => env('ACCOUNTING_LOGO_BASE_URL', 'http://localhost'),
'username' => env('ACCOUNTING_LOGO_USERNAME', 'XXXXXXXXXXXXX'),
'password' => env('ACCOUNTING_LOGO_PASSWORD', 'XXXXXXXXXXXXX'),
'company_id' => env('ACCOUNTING_LOGO_COMPANY_ID', 'XXXXXXXXXXXXX'),
],
'quickbooks'=>[
'access_token' => env('ACCOUNTING_ACCESS_TOKEN', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'),
'refresh_token' => env('ACCOUNTING_REFRESH_TOKEN', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'),
'real_me_id' => env('ACCOUNTING_REAL_ME_ID', 'XXXXXXXXXXXXXXXXXXXX'),
'client_id' => env('ACCOUNTING_CLIENT_ID', 'XXXXXXXXXXXXX'),
'client_secret' => env('ACCOUNTING_CLIENT_SECRET', 'XXXXXXXXXXXXX'),
'redirect_url' => env('ACCOUNTING_REDIRECT_URI', 'https://developer.intuit.com/v2/OAuth2Playground/RedirectUrl'),
'scope' => env('ACCOUNTING_OAUTH_SCOPE', 'com.intuit.quickbooks.accounting, openID, profile, phone, address'),
'base_url' => env('ACCOUNTING_BASE_URL', 'development'),
],
];
<?php
use Medianova\LaravelAccounting\Facades\Accounting;
Accounting::customer([])->create();
Accounting::customer([],0)->update();
Accounting::invoice([])->create();
Accounting::invoice([],0)->update();
Accounting::provider('quickbooks')->customer([
"BillAddr" => [
"Line1"=> "123 Main Street",
"City"=> "Mountain View",
"Country"=> "USA",
"CountrySubDivisionCode"=> "CA",
"PostalCode"=> "94042"
],
"Notes" => "Here are other details.",
"Title"=> "Mr",
"GivenName"=> "Evil",
"MiddleName"=> "1B",
"FamilyName"=> "King",
"Suffix"=> "Jr",
"FullyQualifiedName"=> "Evil King",
"CompanyName"=> "King Evial",
"DisplayName"=> "Evil King Sr2",
"PrimaryPhone"=> [
"FreeFormNumber"=> "(555) 555-5555"
],
"PrimaryEmailAddr"=> [
"Address" => "[email protected]"
]
])->create();
Accounting::provider('quickbooks')->customer([
"PrimaryEmailAddr"=> [
"Address" => "[email protected]"
]
],56)->update();
Accounting::provider('quickbooks')->invoice([
"Line" => [
[
"Amount" => 100.00,
"DetailType" => "SalesItemLineDetail",
"SalesItemLineDetail" => [
"ItemRef" => [
"value" => 20,
"name" => "Hours"
]
]
]
],
"CustomerRef"=> [
"value"=> 59
],
"BillEmail" => [
"Address" => "[email protected]"
],
"BillEmailCc" => [
"Address" => "[email protected]"
],
"BillEmailBcc" => [
"Address" => "[email protected]"
]
])->create();
Accounting::provider('quickbooks')->invoice([
"BillEmail" => [
"Address" => "[email protected]"
]
],111)->update();
Accounting::provider('logo')->transactions(
[
"FirmNr" => 999,
"DonemNr" => 1,
"BaslangicTarihi" => "2021-01-01T16:43:49.2530818+03:00",
"BitisTarihi" => "2021-06-26T16:43:49.2530818+03:00",
"Kod" => [
"120.01.TEST10"
]
]
)->get();