Your application name - used in client portal title banner
Your application environment variable - options include local / development / production
Your application encryption key - used for encryption / decryption of some datapoints within the application. Backup this key in a secure location. Without it your application could be rendered in an invalid state
Boolean option which puts the app in debug mode for additional logging. Keep it set to FALSE unless you need to do some debugging
Your full app URL include HTTP/HTTPS prefix.
DB_HOST=localhost DB_DATABASE=db-ninja-01 DB_USERNAME=ninja DB_PASSWORD=ninja DB_PORT=3306
Where we send logs to.
If you require HTTPS to be forced everywhere in your app, set this to TRUE.
Default laravel env var - not used in Invoice Ninja
Cache driver, options include file / redis / database
Queue Connection - by default set to sync, if you want your app to perform faster you'll want to change this to database or redis. Note, you'll need to configure your queue workers.
Where your session info lives, options include redis / database / file
REDIS_HOST=127.0.0.1 REDIS_PASSWORD=null REDIS_PORT=6379
Your redis configuration - if you are using Redis
MAIL_MAILER=smtp MAIL_HOST=localhost MAIL_PORT=1025 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null MAIL_FROM_ADDRESSfirstname.lastname@example.org' MAIL_FROM_NAME='David Canary'
Your mail configuration
Your postmark API key if you wish to use Postmark
As an additional layer of security for self hosters, this prevents randoms from registering / probing your API
System error emails are sent to this email address
AWS_ACCESS_KEY_ID=s3_compatible_key AWS_SECRET_ACCESS_KEY=a_long_and_glorious_key AWS_DEFAULT_REGION=us-east-1 AWS_BUCKET=bucket_name AWS_URL=https://endpoint.com AWS_ENDPOINT=https://endpoint.com/
If using S3 compatible storage, this is where you want to configure it.
Defines where to store your files, options include local / public
Used to pull in exchange rate data
Pushes additional logging to storage/logs/invoiceninja.log
Used when debugging PDF output, this will dump the full HTML of the PDF object being rendered.
Used as pseudo protection of the /update?secret= route to allow only people with this secret to access this url for updating the app
Phantom Cloud JS configuration API key and password used to secure the phantom route
#options - snappdf / phantom / hosted_ninja PDF_GENERATOR=snappdf
Configures the PDF engine to be used. SnapPDF is the recommended way to generate PDFs however does require direct access to the server to install some required packages.
If your server sit behind a proxy, you may need to enable trusted_proxies else you will get SSL errors
If you are running a docker setup, you may want to set this to true as there are some docker specific tweaks that are required.
This var circumvents our base64 encoding of the company logo, this may help if the logo is failing to show on the PDF.
This is the default environment setting.
If using the webcron feature, you'll want to set a password here to prevent unauthorized people accessing this URLWant to contribute? Edit this page on GitHub!