All apps · 0 apps
invoice-collector
OfficialDocker app from rorar's Repository
Overview
Readme
View on GitHub
Invoice Collector
Invoice Collector is a free Docker image designed to retrieve invoices and receipts from suppliers. It seamlessly connects to customer portals, APIs, and email inboxes to automatically gather invoices.
Prerequisits
Installation
Use the docker-compose.yml file to build and run a container.
- Download the
docker-compose.ymlfile from Github repo.
curl https://raw.githubusercontent.com/invoice-collector/invoice-collector/refs/heads/master/docker-compose.yml >> docker-compose.yml
Edit the
docker-compose.ymland set the values for the env variables.Build and run the container
sudo docker compose up -d
Contribution
There are two ways you can contribute to Invoice-Collector:
- Open a new issue to report a bug or request a new feature
- Create a new collector for the benefit of all
Developers
Full documentation available on the website.
Here is how to configure the project on your local machine.
- Clone the repo
- Install Google Chrome
- Create a
.envfile with all the required variables
Run a manual test
npm run test.manual
# Or
npm run test.manual <collector_id>
# Or
npm run test.manual <collector_id> <first_param>
# Or
npm run test.manual <collector_id> <first_param> <second_param> ...
Run a automatic test
npm run test.auto <collector_id>
Run on your local machine
npm run start
Run the debug container
docker-compose -f docker-compose-debug.yml up --build
You can then use the postman collection (available soon) to query the dev environment.
Install invoice-collector on Unraid in a few clicks.
Find invoice-collector in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.
Requirements
Requires a free Bitwarden account with a free Secrets Manager subscription enabled.
Requires MongoDB running as container "mongodb" on Docker network "invoice-collector_internal".
IMPORTANT: Before adding this container, create the Docker network first.
- Open Unraid Terminal
- Run: docker network create invoice-collector_internal
- Go to Settings > Docker
- Disable Docker and click Apply
- Enable "Preserve user defined networks" and click Apply
- Re-enable Docker
MongoDB requirements:
- Container name: mongodb
- Network: invoice-collector_internal
The default connection is DATABASE_URI=mongodb://mongodb:27017
Categories
Related apps
Explore more like this
Explore allDetails
ghcr.io/invoice-collector/invoice-collector:masterRuntime arguments
- Web UI
http://[IP]:[PORT:8080]- Network
invoice-collector_internal- Shell
sh- Privileged
- false
Template configuration
Invoice Collector API port.
- Target
- 8080
- Default
- 8080
- Value
- 8080
General application configuration.
Port on which the API is listening.
- Default
- 8080
- Value
- 8080
Application environment. Possible values: prod or debug.
- Default
- prod|debug
- Value
- prod
Whether the application is self-hosted.
- Default
- True|False
- Value
- True
MongoDB connection settings.
MongoDB connection URI. MongoDB container must be named mongodb and connected to invoice-collector_internal network.
- Default
- mongodb://mongodb:27017
- Value
- mongodb://mongodb:27017
MongoDB database name.
- Default
- prod
- Value
- prod
Frontend URL configuration.
URL of the frontend application.
- Default
- http://localhost:8080
- Value
- http://localhost:8080
Bitwarden secret manager configuration.
Secret manager type. Supported value: bitwarden.
- Default
- bitwarden
- Value
- bitwarden
Bitwarden API URI. For non-EU accounts, change to .com
- Default
- https://vault.bitwarden.eu/api|https://vault.bitwarden.com/api
- Value
- https://vault.bitwarden.eu/api
Bitwarden identity URI. For non-EU accounts, change to .com
- Default
- https://vault.bitwarden.eu/identity|https://vault.bitwarden.com/identity
- Value
- https://vault.bitwarden.eu/identity
Bitwarden access token.
Bitwarden organization ID. Create a organization, link project using Secret Manager, than copy ID from Secrets Manager overview page.
Create a project using Secret Manager, than copy ID from Secrets Manager overview page.
Optional proxy configuration.
Proxy type. Possible values: no_proxy or oxylab.
- Default
- no_proxy|oxylab
- Value
- no_proxy
Oxylabs proxy username.
Oxylabs proxy password.
Optional remote Chrome server configuration.
Remote Chrome server IP.
Remote Chrome server port.
Optional analytics configuration.
Analytics server endpoint.
Headers sent to analytics server.
- Default
- {}
- Value
- {}
Token validity configuration in milliseconds.
OAuth token validity duration in milliseconds.
- Default
- 600000
- Value
- 600000
Reset password token validity duration in milliseconds.
- Default
- 3600000
- Value
- 3600000
UI bearer token validity duration in milliseconds.
- Default
- 3600000
- Value
- 3600000
System configuration.
Timezone. See: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
- Target
- TZ
- Default
- Europe/Berlin
- Value
- Europe/Berlin