Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/fylein/qbo-sdk-py

A Python SDK for Quickbooks Online
https://github.com/fylein/qbo-sdk-py

accounting python quickbooks quickbooks-online sdk team-integrations

Last synced: about 2 months ago
JSON representation

A Python SDK for Quickbooks Online

Awesome Lists containing this project

README

        

# QuickbooksOnlineSDK

Python SDK for accessing QBO APIs.

## Installation

This project requires [Python 3+](https://www.python.org/downloads/) and [Requests](https://pypi.org/project/requests/) library (pip install requests).

1. Download this project and use it (copy it in your project, etc).
2. Install it from [pip](https://pypi.org).

$ pip install qbosdk

## Usage

To use this SDK you'll need these QBO credentials used for OAuth2 authentication: **client ID**, **client secret** and **refresh token**.

This SDK is very easy to use.
1. First you'll need to create a connection using the main class QuickbooksOnlineSDK.
```python
from qbosdk import QuickbooksOnlineSDK

connection = QuickbooksOnlineSDK(
client_id='',
client_secret='',
refresh_token='',
realm_id='',
environment=''
)
```
2. After that you'll be able to access any of the API classes
```python
"""
USAGE: ..()
"""

# Get a list of all Employees (with all available details for Employee)
response = connection.employees.get()

# Get a list of all Accounts
response = connection.accounts.get()
```

See more details about the usage into the wiki pages of this project.

## Integration Tests

To run integration tests, you will need a mechanism to connect to a real qbo account. Save this info in a test_credentials.json file in your root directory:

```json
{
"client_id": "",
"client_secret": "",
"realm_id": "",
"refresh_token": "",
"environment": ""
}
```

```bash
$ pip install pytest

$ python -m pytest test/integration
```

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details