crater-invoice / crater Goto Github PK
View Code? Open in Web Editor NEWOpen Source Invoicing Solution for Individuals & Businesses
Home Page: https://craterapp.com
License: GNU Affero General Public License v3.0
Open Source Invoicing Solution for Individuals & Businesses
Home Page: https://craterapp.com
License: GNU Affero General Public License v3.0
Hello.
In App\Space\EnvironmentManager function saveDatabaseVariables have a call to select "SHOW TABLES". This query makes the app installer mysql only. Didn't have time anymore to keep checking but got some calls to DB::raw too, that usually limits laravel to a single database only.
Found out about you guys on reddit, keep up the good job!
Hi,
can Crater handle the German laws of VAT and shipping costs? Aka "what VAT has the shipping costs"? If I have items worth 100 € with 7 % VAT and items worth 200 € with 19 % VAT in my invoice, the VAT of the shipping costs would consist of 1/3 7 % and 2/3 19 %.
Hi!
I just installed locally a version of the package. But after I created my first client, I got this error on the clients listing page. Did I miss something?
"SQLSTATE[42000]: Syntax error or access violation:
1055 'crater.users.name' isn't in GROUP BY
(SQL: select 'users'.*, sum(invoices.due_amount) as due_amount from 'users'
left join 'invoices'
on 'users'.'id' = 'invoices'.'user_id' where 'role' = customer
and 'users'.'company_id' = 1
group by 'users'.'id' limit 10 offset 0)"
The error seems to happen here: "Crater\Http\Controllers\CustomersController".
Thanks for your time!
Stuck on loading on OnBoarding step 4 which mail driver get.
Hi,
I would love to have custom payment modes in the list. The default ones are not enough. Probably a dependent list would be perfect. If let's say I have two bank accounts, or several payment gateways like Stripe & Paypal.
Thanks
A Team Management setup for agencies would be a nice idea. One company; Many Team members; Different Roles.
What are the steps for manually updating the application?
In the UK the tax year starts on the 6th April each year and ends on the 5th April the following. This date, however, can be changed in some cases. For instance, if you're a self-employed then you have the ability to change this date to whatever suits you(r business) - I believe.
But for the sake of simplicity, let's stick with the "default" tax year period and imagine the following scenario (financial year set to "april-march" in the settings):
This invoice will appear on the Dashboard in the "Sales" widget (chart period set to "This year"), but this invoice actually is for the last financial year.
I think this issue could be solved by allowing to specify days for the financial year, not just the months.
Hi,
On the Site URL & Database page I input all the data fields and click save & continue. The script populates the database, getting as far as 30 tables and 58 rows before responding with
{
"message": "Server Error"
}
Could you advise how to go about resolving this?
Current system:
PHP: 7.2.5
MYSQL: 5.7.22
Apache: 2.4.33 (Win32)
Hi Guys,
First of all congratulations . Crater looks beautiful .
So my question is Imagine there is already an Identity and access management system. How do you recommend we include crater as service into that?.
Will crater allow that ?
Hi, thank you guys for contributing and develop this nice software. I am new here so I will go straight to my problem.
I have a problem installing this on a shared host (Godaddy) as it says server error
while populating the database, I think its max_execution_time, I try to increase it on (Godaddy Cpanel) but I continue to have the same problem.
Is there a workaround for this, can you guys share installed DB & password to install directly on PHPMyAdmin..? Please help I need this so much.
Hi,
I'm currently evaluating Crater a bit and is the following possible (as I haven't found it)?
In Germany, the tax depends on the item. Sometimes, it is reduced, sometimes it is the regular amount.
Can I set the tax per item and don't have to select it in the actual invoice? This way I don't need to remember which item has what tax rate.
Looking at the items section, I didn't see the ability to add services, or the ability use the unit "hours" or something similar.
I get clear binary output on estimates and invoices when trying to view them.
EDIT:
Requested details:
Ubuntu 18.04.01, PHP 7.3.11
URL tested was http://localhost/invoices/pdf/JtTLxsitqmfmIo6KTGbjJJxUtenGLAmcSFhr0qaZ1WXIxuJaetbefp8RtSPt
When trying to login it gives me the following error:
{message: "Target class [App\Http\Middleware\Authenticate] does not exist.",…}
exception: "Illuminate\Contracts\Container\BindingResolutionException"
file: "/var/www/html/crater/vendor/laravel/framework/src/Illuminate/Container/Container.php"
line: 806
message: "Target class [App\Http\Middleware\Authenticate] does not exist
I already have a few invoices and creating new ones with Crater would cause issues if I didn't know how to change it in the database. ;)
I believe (although I'm not an accountant) that here in the UK there's only one rule for invoice numbers which is that it has to be unique, but companies or people from other countries might have specific needs regarding the format of the invoice number.
For example, the way I do the invoicing is this: unique prefix for the client + auto increment number, so:
CLIENT1-202
CLIENT1-203
...
and then for another client:
CLIENT-2-200
CLIENT-2-201
...
I think at least the ability to overwrite the invoice number is needed. A more robust solution could be to have a prefix on the customer record and use that prefix to generate the invoice number.
I was checking out the demo and I noticed that the currency "Kuwaiti Dinar" is missing
I've followed the steps here:
https://docs.craterapp.com/developer-guide.html#installation
..and started onboarding from a Valet URL, in my case: http://crater.test
On the Site URL & Database page, it succeeds in creating tables in the MySQL database, however it does not proceed any further, and indicates "Server Error" in the top right of the screen, with no other information.
When adding a hostname I receive this error. I am using a database cluster on DigitalOcean and cannot connect because of this limitation. Are there any workarounds?
Hello,
When I tired to install, it shows "wizard.errors.undefined" on "Site URL & Database" step.
Can anyone please help?
Thanks
It's would be great to be able to set custom "Units" and their identifiers. What you think?
When I log into the app, the figures on the Dashboard all show 0.00
amounts, 0 customers, 0 invoices. Then I go to any other page and back to the Dashboard, the figures change - showing the amount of the last invoice, the correct number of customers, etc.
Steps to reproduce:
Result:
The figures on the Dashboard change so that they are showing the amount of the last invoice (or any other, positive amount - I guess depending on what expenses / incomes you have)
Expected result:
The figures should be the same as when logging in.
Screenshots:
After clicking the "Dashboard" menu again:
I was planning on using this for invoicing clients, but when I went to make a new invoice I noticed the quantity has to be a whole number. I bill in 15 minute increments, so 3.25 hours or something like that, and then would put my hourly rate in the price box to get the total.
Should I consider making the code adjustments myself or is this something you're aware of?
When selecting "United Kingdom" from the Country dropdown the cities / towns appear in the "State" dropdown instead of the one labelled "City".
The "City" dropdown only shows one item called "Angus".
[Correction]
I said the cities appear in the State dropdown, that was incorrect. Some cities (such as Birmingham, Bristol) appear in this list but I believe they are not states like Buckinghamshire or Essex.
Basically, an Invoice includes a fixed amount the client must pay. Let's say $100.000.
The normal tax is 15%, to say a random percentage. The amount received is $100.000, but from it $85.000 are gross income.
I've seen many payment gateways that take their cut over the amount paid, like for example 2%. That means:
It would be good to have an internal tax, not set in the invoice, but internally (after tax? post tax? internal tax?) to avoid surprises when retrieving the income from the gateway service.
I would like to translate to portuguese.
A few things are missing from the Developer Guide / Installation instructions.
In order to run the app you also need to
cp .env.example .env
)art key:generate
)After cloning the repository and running npm install && npm run dev
it fails with error"Module not found: Error: Can't resolve './base-date-picker/BaseDatePicker.vue'"
The output of npm install
reveals some security vulnerabilities in the packages used:
npm WARN The package cross-env is included as both a dev and production dependency.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
added 2002 packages from 1582 contributors and audited 33828 packages in 29.829s
found 24 vulnerabilities (1 low, 1 moderate, **22 high**)
run `npm audit fix` to fix them, or `npm audit` for details
Hi,
I think it would be a good idea to come up with some sort of issue template for this project. Currently, I see lot of new issues being opened but most of them lack the necessary information to investigate properly.
I believe a strict minimum would be:
A simple description and steps to reproduce the issue would also go a long way.
Just my two cents :)
Hi,
Thanks for the product.
You can create fixed / percentage discount type. No matter what you choose, PDF template shows % there.
Might be something to do with #14, but I think it's a slightly different issue.
I have 12 invoices and from the "Invoices" / ... / "View" menu I can view all of them except the first two I created - the rest (10 other invoices) are fine.
If I click the "... / Edit" action button and then the "View PDF" then all the pdfs are fine.
Steps to reproduce:
Results:
an empty page (see screenshot)
Expected result:
the list of invoices and the pdf invoice shown next to the list (as for the other 10 invoices).
I'm just guessing here without looking at the code, but could it be something to do with the /invoices
endpoint returning only the first 10 invoices (ordered by the created date) and the first two that I'm unable to access aren't in that list?
Hello,
I'm checking to see if this is a good starting point for a future application and I can't wrap my head around this thing:
This is from routes/api.php
:
// Country, State & City
//----------------------------------
Route::get('/countries', [
'as' => 'countries',
'uses' => 'LocationController@getCountries'
]);
Route::get('/states/{id}', [
'as' => 'states',
'uses' => 'LocationController@getStates'
]);
Route::get('/cities/{id}', [
'as' => 'cities',
'uses' => 'LocationController@getCities'
]);
This is the whole app/Http/Controllers/LocationController.php:
<?php
namespace Crater\Http\Controllers;
use Illuminate\Http\Request;
use Crater\Country;
class LocationController extends Controller
{
public function getCountries()
{
return response()->json([
'countries' => Country::all()
]);
}
}
Where are the getStates
and getCities
methods called from? and where are the cities stored?
There are also no tables for those created through migrations...
[2019-12-10 16:04:20] production.ERROR: SQLSTATE[42000]: Syntax error or access violation: 1055 'crater.users.name' isn't in GROUP BY (SQL: select `users`.*, sum(invoices.due_amount) as due_amount from `users
` left join `invoices` on `users`.`id` = `invoices`.`user_id` where `role` = customer and `users`.`company_id` = 1 group by `users`.`id` order by `created_at` desc limit 10 offset 0) {"userId":1,"exception":"
[object] (Illuminate\\Database\\QueryException(code: 42000): SQLSTATE[42000]: Syntax error or access violation: 1055 'crater.users.name' isn't in GROUP BY (SQL: select `users`.*, sum(invoices.due_amount) as d
ue_amount from `users` left join `invoices` on `users`.`id` = `invoices`.`user_id` where `role` = customer and `users`.`company_id` = 1 group by `users`.`id` order by `created_at` desc limit 10 offset 0) at /
app/vendor/laravel/framework/src/Illuminate/Database/Connection.php:665)
[previous exception] [object] (Doctrine\\DBAL\\Driver\\PDOException(code: 42000): SQLSTATE[42000]: Syntax error or access violation: 1055 'crater.users.name' isn't in GROUP BY at /app/vendor/doctrine/dbal/lib
/Doctrine/DBAL/Driver/PDOConnection.php:63)
[previous exception] [object] (PDOException(code: 42000): SQLSTATE[42000]: Syntax error or access violation: 1055 'crater.users.name' isn't in GROUP BY at /app/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:61)
Not sure what's the issue. Brand new Docker install.
Hi,
Could you please add an option to allow custom payment numbers? I don't want any prefixes there, as I would use custom values for different customers. I might also need another field if we keep current structure where I can refer to a real payment ID via payment system.
When I click the check for update button, it says there is no update available, but it's a warning color (yellow). This should probably be green(success) or at least blue(info).
When I select "New Jersey" the town list is empty. I noticed after updating to 1.1.0 that "New Jersy" is an option, but my town was not listed. Maybe related to the other open issue of the "off by one"
Hi all,
I've tried to install the app many times on many servers, but it always failed!
On a server using Mariadb, it gives an error due to JSON.
On server using Mysql 5.7 it gives error "wizard.errors.undefined" in database installation step!
I don't know where is the issue exactly, any body can help?
Thank you.
Related to this issue on Laravel-DomPDF barryvdh/laravel-dompdf#636,
The reports function can not be used on PHP 7.4.
Apparently the following URL is invalid:
On the Site URL & Database page
Alternatively, can someone advise how to run Crater in a test environment?
Are there plans to create a multi-tenant app of this?
First of, nice work on the application! It looks and feels excellent. I haven't tried the mobile application yet, but I am sure that it is of the same quality.
Sorry for the long text, but I wanted to take the time to provide some feedback. I hope that you will find it to be constructive. Again, great work on the application. Congratulations!
This would be a feature that could be implemented later but I seriously think it should be implemented first as Crater is being used by many already in production.
This can be achieved by using a wonderful library provided by Spatie spatie/laravel-backup.
P.S.: Please also add a contribution guide to the repo. I would really like to contribute.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.