EasyQuickImport — Import transactions, invoices and bills into QuickBooks Desktop from Excel or CSV
EasyQuickImport — Import transactions, invoices and bills into QuickBooks Desktop from Excel or CSV
EasyQuickImport is a tool that helps you import invoices, bills, transactions, customers and vendors into QuickBooks Desktop in multiple currencies in bulk.
Features
Getting started:
Either install self-hosted or sign up for a free cloud account.
Connect EasyQuickImport to QuickBooks Desktop
In EasyQuickImport:
Add a company file in Users, define username, password and specify the home currency. It's recommended to specify the company file location if you are going to use multiple company files on the same computer. Once it's done download the QWC file.
In Quickbooks click File / Update Web Services
Then Add an Application, in the file dialog select the downloaded QWC. Then click Yes, then select "When company file is open" and click continue. When it's done don't forget to specify the password that you defined in EasyQuickImport.
How to import invoices from Excel into QuickBooks Desktop
How to import transactions from Excel into QuickBooks Desktop
How to import bills and vendors from Excel into QuickBooks Desktop
How to import multicurrency transactions from Excel into QuickBooks Desktop
How to install EasyQuickImport Docker setup
Here is docker-compose example with traefik v1.7
docker-compose.yml
with the following content:version: '3.3'services: php: image: registry.dev.trackmage.com/karser/easyquickimport/app_php environment: APP_ENV: 'prod' DATABASE_URL: 'mysql://eqi:pass123@mysql:3306/easyquickimport?serverVersion=mariadb-10.2.22' MAILER_DSN: 'smtp://localhost' # MAILER_DSN: 'ses://ACCESS_KEY:SECRET_KEY@default?region=eu-west-1' # MAILER_DSN: 'ses+smtp://ACCESS_KEY:SECRET_KEY@default?region=eu-west-1' DOMAIN: 'your-domain.com' depends_on: - mysql networks: - backend
nginx: image: registry.dev.trackmage.com/karser/easyquickimport/app_nginx depends_on: - php networks: - backend - webproxy labels: - "traefik.backend=easyquickimport-nginx" - "traefik.docker.network=webproxy" - "traefik.frontend.rule=Host:your-domain.com" - "traefik.enable=true" - "traefik.port=80" mysql: image: leafney/alpine-mariadb:10.2.22 environment: MYSQL_ROOT_PWD: 'pass123' MYSQL_USER: 'eqi' MYSQL_USER_PWD: 'pass123' MYSQL_USER_DB: 'easyquickimport' volumes: - ./db_data/:/var/lib/mysql networks: - backend
networks: backend: webproxy: external: true
docker-compose up -d
docker-compose logs -f
docker-compose exec php bin/console app:create-user user@example.com --password pass123
The user has been created with id 1
https://your-domain.com
and log in with the user you just created.Development setup
git clone https://github.com/karser/EasyQuickImport.git
composer install
.env
to .env.local
and configure DATABASE_URL and DOMAINbin/console doctrine:schema:drop --full-database --force \
&& bin/console doctrine:migrations:migrate -n
fixtures
bin/console doctrine:fixtures:load
bin/console app:create-user user@example.com --password pass123
cd ./public
php -S 127.0.0.1:9090
Tests
bin/phpunit
phpstan
vendor/bin/phpstan analyse -c phpstan.neon
vendor/bin/phpstan analyse -c phpstan-tests.neon
Lookup historical currency rate
bin/console app:currency:get USD --date 2020-03-05 --base HKD
Twice a month we will interview people behind open source businesses. We will talk about how they are building a business on top of open source projects.
We'll never share your email with anyone else.