Do the actual billing
This service is part of the eegfaktura software. This software allows renewable energy communities (EEGs) to do the billing.
To setup full eegfaktura software see our eegfaktura-docker-compose project.
In order to run this container you'll need docker installed.
git clone https://github.com/eegfaktura/eegfaktura-billing.git
mvn clean package
Usually this project can be run and executed in your IDE right away without much configuration. If you need to build the service outside your IDE:
mvn clean package
Please note, that the current state of tests is not yet fine and is to be extended, cleaned-up a lot still. The current tests ensure, that the most important billing use cases do work. It is definitely a good idea to have a look on the generated billing documents (PDF) to see if this service is creating them correctly.
(!) Be sure to adopt the prop "app.test.store-documents-path" located in /test/resources/applications.properties to define where the PDFs generated by the tests are stored.
You can deploy the container with docker or docker-compose as you wish.
You can inspect and play with this services' API with the help of swagger (only visible when services is started with 'dev' profile!): http://youserver:8080/swagger-ui/index.html
This (tenant-aware) service is responsible to do the actual billing. It provides:
The services configuration is located in /src/main/resources/application.properties The container is accepting the following environment variables as configuration:
JDBC_DATABASE_URL
database URLJDBC_DATABASE_USERNAME
database userJDBC_DATABASE_PASSWORD
database passwordMAIL_HOST
hostname of mailserverMAIL_PORT
port of mailserver on hostMAIL_USER
user to access mailserverMAIL_PASSWORD
password to access mailserverMAIL_SMTP_AUTH
(default = true)MAIL_SMTP_STARTTLS_ENABLE
(default = false)MAIL_NO_REPLY_TO
e-mail address to use as sender for automated mails (default = no-reply@eegfaktura.at)JWT_PUBLICKEYFILE
full path to the JWT public key file, used to decrypt JWT tokens from header (default = /billing/zertifikat-pub.pem)When you publish something open source, one of the greatest motivations is that anyone can just jump in and start contributing to your project.
These paragraphs are meant to welcome those kind souls to feel that they are needed. You should state something like:
"If you'd like to contribute, please fork the repository and use a feature branch. Pull requests are warmly welcome."
See LICENSE.md