Skip to main content

Syncfreedom-lib

This is the public repository for users of SyncFreedom.com to simplify their development. The point of this project is to help you develop accounting utilities using the same python-quickbooks library that's used in typical web development. That library is well documented but is inaccessible to the layman without first creating a UI to collect auth codes. SyncFreedom handles the authorization aspect of the development allowing you to focus on your utility.

My goal in creating this service is to make python more accessible to accountants. I encourage accountants to use and adopt python as THE general purpose programing language for accountants.

The main difference between your development with the python-quickbooks package and this package is the QuickBooks class. Anytime you would normally use the QuickBooks class from the python-quickbooks package you would replace it with SyncFreedomQuickBooks class. The SyncFreedomQuickBooks is also different because it takes the company_id (realm_id) and your SyncFreedom credentials as arguments.

For example:

from syncfreedom.client import SyncFreedomQuickBooks
from quickbooks.objects.account import Account

credentials = {
    'username':'your_syncfreedom_username', 
    'password':'your_syncfreedom_password'
    }
qb = SyncFreedomQuickBooks(
    company_id=self.company_id, 
    credentials=credentials
    )
customers = Customer.all(qb=qb)

It is best practice to place your credentials in a config.ini file. Here is an example of the text in config.ini file:

[SYNCFREEDOM_CREDENTIALS]
username = your_syncfreedom_username
password = your_syncfreedom_password

[ENVIRONMENT_INFO]
environment=Production
sync_freedom_url=https://syncfreedom.com

When your credentials are inside the config.ini file you will access the credentials and use this package like the following example:

from syncfreedom.client import SyncFreedomQuickBooks
from quickbooks.objects.account import Account
from configparser import ConfigParser

configur = ConfigParser()
configur.read(r"""C:\your_file_path_to_the_config_file\config.ini"""))

credentials = configur['SYNCFREEDOM_CREDENTIALS']

qb = SyncFreedomQuickBooks(
    company_id=self.company_id, 
    credentials=credentials
    )
customers = Customer.all(qb=qb)

If you are trying to get the full list of connections in SyncFreedom use the SyncFreedomConnections class like the following:

from syncfreedom.client import SyncFreedomQuickBooks, SyncFreedomQBOConnections
from configparser import ConfigParser

configur = ConfigParser()
configur.read(r"""C:\your_file_path_to_the_config_file\config.ini"""))

credentials = configur['SYNCFREEDOM_CREDENTIALS']
qbo_connections = SyncFreedomQBOConnections(self.credentials)

#then create qb from the connections list
qbo_connection = qbo_connections.get_by_company_name('My Company Name')
qb = SyncFreedomQuickBooks(
    company_id=qbo_connection.company_id, 
    credentials=credentials
    )
customers = Customer.all(qb=qb)

Release files for syncfreedom 1.0.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for syncfreedom 1.0.8
File Size Uploaded
syncfreedom-1.0.8.tar.gz 7.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for syncfreedom 1.0.8
File Interpreter ABI Platform
syncfreedom-1.0.8-py3-none-any.whl Python 3 none any Details

Total release size: 13.8 kB

Release files / syncfreedom-1.0.8.tar.gz

Download URL syncfreedom-1.0.8.tar.gz
Size 7.3 kB
Tags Source
SHA-256 checksum
How to use checksums
7856a5629a2b5bf02dc1b8f505a328267b74d7feb77a1fe5ef8fdd399a2e3e58
BLAKE2b-256 checksum
How to use checksums
dd71db49659d64b2cd5049b84224afcc72f5ce54e2884f577c4c2b533b735f46
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.10.4

Release files / syncfreedom-1.0.8-py3-none-any.whl

Download URL syncfreedom-1.0.8-py3-none-any.whl
Size 6.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9b6c21dd82f64db099f69e96e4fa277146fa84c37d9ae5829b18f26f3e30cf45
BLAKE2b-256 checksum
How to use checksums
3b741e5e7b280c05ef037384a327f4758bf5595dea855e59ef73ef659d5aa938
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.10.4

Release history Release notifications | RSS feed

This release

1.0.8 This release

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page