EasyQuickImport — Import transactions, invoices and bills into QuickBooks Desktop from Excel or CSV

Overview

EasyQuickImport — Import transactions, invoices and bills into QuickBooks Desktop from Excel or CSV

Build Status Code Grade MIT License

EasyQuickImport is a tool that helps you import invoices, bills, transactions, customers and vendors into QuickBooks Desktop in multiple currencies in bulk.

Features

  • Import of Journal Entries transactions, Single-line Invoices and bills. Import creates customers, and vendors automatically.
  • Supported formats: csv, xlsx, xls
  • Multicurrency support. The base currency can be USD, EUR or anything else. The currency of all your accounts is detected automatically (after you import the Chart of accounts).
  • Cross Currency Transactions. Transfer between accounts of different currencies goes through the Undeposited funds account. EasyQuickImport doesn't affect the Undeposited funds balance because it uses the accurate historical exchange rate.
  • Historical exchange rate. EasyQuickImport automatically obtains the exchange rate from European Central Bank on a given date for any currency for each transaction. You can use other exchange rate sources as well.
  • Multi-tenancy: if you have multiple company files on the same computer, you can add them all to EasyQuickImport.

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.

Connect EasyQuickImport to QuickBooks Desktop

How to import invoices from Excel into QuickBooks Desktop

Import invoices from Excel into QuickBooks Desktop

How to import transactions 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 bills and vendors from Excel into QuickBooks Desktop

How to import multicurrency transactions 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

  1. Create 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:[email protected]:3306/easyquickimport?serverVersion=mariadb-10.2.22'
            MAILER_DSN: 'smtp://localhost'
            # MAILER_DSN: 'ses://ACCESS_KEY:[email protected]?region=eu-west-1'
            # MAILER_DSN: 'ses+smtp://ACCESS_KEY:[email protected]?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
  1. Tweak the environment variables and run
docker-compose up -d
  1. Check the logs and make sure migrations executed
docker-compose logs -f
  1. Create a user
docker-compose exec php bin/console app:create-user [email protected] --password pass123
The user has been created with id 1
  1. Done! Now open https://your-domain.com and log in with the user you just created.

Development setup

  1. Clone the repo
git clone https://github.com/karser/EasyQuickImport.git
  1. Install packages with composer
composer install
  1. Copy .env to .env.local and configure DATABASE_URL and DOMAIN
  2. Recreate the database
bin/console doctrine:schema:drop --full-database --force \
&& bin/console doctrine:migrations:migrate -n
#fixtures
bin/console doctrine:fixtures:load
  1. Create the user
bin/console app:create-user [email protected] --password pass123
  1. Run the server
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
Releases(v0.1.0)
Owner
Dmitrii Poddubnyi
Fullstack web developer and DevOps
Dmitrii Poddubnyi
A great looking and easy-to-use photo-management-system you can run on your server, to manage and share photos.

Lychee A great looking and easy-to-use photo-management-system. Since the 1st of April 2018 this project has moved to it's own Organisation (https://g

Tobias Reich 5.8k Jun 15, 2021
A unified front-end for different queuing backends. Includes a REST server, CLI interface and daemon runners.

PHP-Queue A unified front-end for different queuing backends. Includes a REST server, CLI interface and daemon runners. Why PHP-Queue? Implementing a

CoderKungfu 627 May 7, 2021
phpSysInfo: a customizable PHP script that displays information about your system nicely

phpSysInfo Copyright (c), 1999-2008, Uriah Welcome (sf.net/users/precision) Copyright (c), 1999-2009, Michael Cramer (sf.net/users/bigmichi1) Copyrigh

phpSysInfo 1.2k Jun 13, 2021
Web Based, Cloud IDE

Codiad Web IDE Codiad is a web-based IDE framework with a small footprint and minimal requirements. Codiad was built with simplicity in mind, allowing

Codiad IDE 2.8k Jun 10, 2021
Demo for "Migrating into Layout Builder" from DrupalCon in 2021.

Migrating Into Layout Builder Demo For DrupalCon in 2021, I presented on Migrating Into Layout Builder. For this presentation, I came up with this sim

Chris Wells 7 Jun 8, 2021
Create Your Own Broadcast Network With AVideo Platform Open-Source. OAVP OVP

Audio Video Platform AVideo is a term that means absolutely nothing, or anything video. Since it doesn't mean anything the brand simply is identifiabl

World Wide Broadcast Network 1.4k Jun 15, 2021
Bulit PHP Twitter Clone IN OOP style and using MYSQL Database.

Bulit PHP Twitter Clone IN OOP style and using MYSQL Database. AJAX and Jquery for requests without reloading like Follow/unfollow, like, Search users, Show popups like comment , User lists, etc.

Amin 10 Jun 14, 2021
A platform to create documentation/wiki content built with PHP & Laravel

BookStack A platform for storing and organising information and documentation. Details for BookStack can be found on the official website at https://w

BookStackApp 6.7k Jun 14, 2021
Catches mail and serves it through a dream.

MailCatcher Catches mail and serves it through a dream. MailCatcher runs a super simple SMTP server which catches any message sent to it to display in

Samuel Cochran 5.3k Jun 16, 2021
BraincraftedBootstrapBundle integrates Bootstrap into Symfony2 by providing templates, Twig extensions, services and commands.

BraincraftedBootstrapBundle BraincraftedBootstrapBundle helps you integrate Bootstrap in your Symfony2 project. BootstrapBundle also supports the offi

Braincrafted 411 Jun 5, 2021
A component-centric backend communication layer for Alpine.js

A component-centric backend communication layer for Alpine.js. Installation Install using the following command: composer require radio/radio Install

Radio.js 75 Jun 4, 2021
Tugas Kelompok Aplikasi Web Stock Sederhana : Stok Restoran

Tentang Web Ini Web app ini dibuat untuk persyaratan pengumpulan tugas github matakuliah MKPL. web app ini memiliki fitur CRUD stok berbagai jenis mak

wijoyo wisnu mukti 3 May 4, 2021
amadeus-ws-client: PHP client for the Amadeus GDS SOAP Web Service interface

amadeus-ws-client: PHP client for the Amadeus GDS SOAP Web Service interface This client library provides access to the Amadeus GDS SOAP Web Service i

Amadeus Benelux 143 Jun 17, 2021
A demo of deploying mediawiki to kubernetes

emwcon-demo Files needed for a demo of deploying mediawiki to kubernetes Prerequisites docker a kubernetes cluster a copy of mediawiki/core moved into

J H 4 Apr 22, 2021