quickbooks
QuickBooks is a small business accounting software that helps your small business track expenses, manage cash flow, send custom invoices and create financial reports.
Read | Create | Update | Delete | Webhook | ||
---|---|---|---|---|---|---|
Accounts | ||||||
Async task | ||||||
Bank accounts | ||||||
Bills | ||||||
Bill lines | ||||||
Booking proposals | ||||||
Contacts | ||||||
Customers | ||||||
Credit notes | ||||||
Dimensions | ||||||
Expenses | ||||||
Files | ||||||
Goods receipts | ||||||
Goods receipt lines | ||||||
Invoices | ||||||
Invoice lines | ||||||
Items | ||||||
Journals | ||||||
Journal entries | ||||||
Offers | ||||||
Offer lines | ||||||
Open items | ||||||
Payments | ||||||
Payment terms | ||||||
Projects | ||||||
Purchase orders | ||||||
Purchase order lines | ||||||
Sales orders | ||||||
Sales order lines | ||||||
Suppliers | ||||||
Tax rates | ||||||
Transactions | ||||||
Trial balance | ||||||
Units | ||||||
Users | ||||||
Vendor credits |
= Not supported by Maesn at this time
= Not supported by QuickBooks
How to connect to QuickBooks
To allow your customers to link your application with their QuickBooks accounts, you need to set up a QuickBooks App and submit your application credentials to maesn.1
Prerequisites
Before you begin, make sure you have the following:
- A QuickBooks account with administrator permissions.
2
Create the QuickBooks App
In this step we create the App that a user can choose to install into their QuickBooks instance to authorize the integration with your application.
- Navigate to the QuickBooks developer portal and log in, if you are not already logged in.
- On the tab “Apps”, click “Create an app”.
- Select the QuickBooks Online and Payments option.
- Give your app name: This should be your application’s name. When your users link their QuickBooks account, they will see that “App Name” is requesting to integrate with their QuickBooks account.
- Select the com.intuit.quickbooks.accounting scope.
- Click “Create App”.
- In the next screen, click on “Key & credentials” in the left-hand menu.
- Click on “Add URI” and add the redirect URI: https://api.maesn.dev/auth/callback/quickbooks
3
Configure your integration in the maesn API
In the last step, we setup your API tenant with your App’s details:
- Get in touch with your contact person at maesn to submit the client id and client secret.
Sandbox environment
QuickBooks has different URLs and credentials for their production and sandbox environments. To generate a sandbox end user account you have to use thequickbooks-sandbox
target system.
Inside quickbooks, you can create sandbox credentials with the same steps as the production credentials, you just need to create sandbox credentials instead of production credentials.
You also have to use the following callback URL for the sandbox environment: https://api.maesn.dev/auth/callback/quickbooks-sandbox
Becoming a QuickBooks Partner
Anyone can become a QuickBooks app partner. The requirements and steps to become a partner are detailed here. Note that before you become a QuickBooks partner you will only have access to their development environment. Once you become a partner you will have access to their production environment.Webhooks
Quickbooks supports the following parameters for webhooks: Resource types:ACCOUNT
BILL
CUSTOMER
INVOICE
ITEM
JOURNAL_ENTRY
PAYMENT
SUPPLIER
EXPENSE
created
, updated
, deleted
, merged
, void
and emailed
events.
In the case of QuickBooks, webhooks are App-based. This means they must be created for a given app as described (here)[https://developer.intuit.com/app/developer/qbo/docs/develop/webhooks].
To set this up, call Maesn’s create webhooks endpoint, which will return a URL that can be used in the App’s configration.
Note that incoming events will be for every customer authenticated with that App. The response will include an ID that can be used to identify the user.