Connects Quickbooks to a database connector to transfer information to and fro.
Project description
Quickbooks Online Database Connector
Connects Quickbooks online to a database to transfer information to and fro.
Installation
This project requires Python 3+.
-
Download this project and use it (copy it in your project, etc).
-
Install it from pip.
$ pip install qbo-db-connector
Usage
To use this connector you'll need these Quickbooks credentials used for OAuth2 authentication: client ID, client secret and refresh token.
This connector is very easy to use.
import logging
import sqlite3
from qbosdk import QuickbooksOnlineSDK
from qbo_db_connector import QuickbooksExtractConnector, QuickbooksLoadConnector
dbconn = sqlite3.connect('/tmp/temp.db')
logger = logging.getLogger('Quickbooks usage')
logging.basicConfig(
format='%(asctime)s %(name)s: %(message)s', level=logging.INFO, handlers=[logging.StreamHandler()]
)
quickbooks_config = {
'client_id': '<CLIENT ID>',
'client_secret': '<CLIENT SECRET>',
'realm_id': '<REALM ID>',
'refresh_token': '<REFRESH TOKEN>',
'environment': '<ENVIRONMENT>',
}
logger.info('Quickbooks db connector usage')
connection = QuickbooksOnlineSDK(
client_id=quickbooks_config['client_id'],
client_secret=quickbooks_config['client_secret'],
refresh_token=quickbooks_config['refresh_token'],
realm_id=quickbooks_config['realm_id'],
environment=quickbooks_config['environment']
)
quickbooks_extract = QuickbooksExtractConnector(qbo_connection=connection, dbconn=dbconn)
quickbooks_load = QuickbooksLoadConnector(qbo_connection=connection, dbconn=dbconn)
# make sure you save the updated refresh token
refresh_token = connection.refresh_token
# extracting
quickbooks_extract.extract_employees()
quickbooks_extract.extract_accounts()
quickbooks_extract.extract_classes()
quickbooks_extract.extract_departments()
quickbooks_extract.extract_home_currency()
quickbooks_extract.extract_exchange_rates()
# loading
quickbooks_load.load_check(check_id='100')
quickbooks_load.load_journal_entry(journal_entry_id='800')
quickbooks_load.load_attachments(ref_id='100', ref_type='Purchase')
Contribute
To contribute to this project follow the steps
- Fork and clone the repository.
- Run
pip install -r requirements.txt
- Setup pylint precommit hook
- Create a file
.git/hooks/pre-commit
- Copy and paste the following lines in the file -
#!/usr/bin/env bash git-pylint-commit-hook
- Run
chmod +x .git/hooks/pre-commit
- Create a file
License
This project is licensed under the MIT License - see the LICENSE file for details
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
qbo-db-connector-1.0.1.tar.gz
(7.3 kB
view hashes)
Built Distribution
Close
Hashes for qbo_db_connector-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8432c704d0a493cc3306623311f916b5dd7b457d1919ec238cac7deb360d54f8 |
|
MD5 | f9692169ab5a6f1c316ab3c50e006c71 |
|
BLAKE2b-256 | dac091a4ed70dd147bcaa921171c55facdd9065a56cc7473909b81bb5ccdae89 |