Some pointers/direction on integrating with QuickBooks?

I’m finally ready to start learning about webhooks and integration with other applications - starting with Quickbooks. Explain it to me like I’m a 13 year old! :slight_smile:

Could someone point me in the right direction on how to get started with this? Are there some resources I can refer to? Videos to watch?

I’m ready to take my apps to a whole other level!!

First question to answer is what version fo Quickbooks? Quickbooks Online or a version of QB Desktop ie Pro, Premier, Enterprise, POS etc

@WillowMobileSystems
Firstly I would advise start with reading Intuit API documentation as it will be the key to success. Once you have an idea about their REST API structure, than you need to structure your integration. Please feel free to email me (levent@able3ventures.com) or @Bellave_Jayaram (jayaram@able3ventures.com) should you require any assistance. We will be glad to help you out.

@LeventK

I definitely will take a look at their API documentation. But that only gives the QuickBook side of things. I will mention that I am familiar with REST services and API’s, I have built them! So I do know how to use them. Its getting to the API I’m struggling with.

I keep reading about Zapier Zaps and such, I have been on their site an see they have integrations with various apps including QuickBooks. Is a Zap necessary? By the way, there were posts that AppSheet was to have their own Zapier integration piece? When I search Zapier I don’t see anything AppSheet related.

I certainly will will reach out to you and @Bellave_Jayaram when I have questions.

I guess what I’m looking for now are the hops, the expected steps required, to get from my app to the REST API - high level. And I do understand that there will likely need to be several Webhook’s depending on which part of the API is being called.

Example (I’m sure these are probably not close - I’m guessing):

  1. Create a Webhook
  2. Integrate with a Zap
  3. Hook zap to app API (or whatever the correct term is)
  4. Test connection
  5. Create JSON for API call and insert into Webhook
  6. Test data is accepted by API

Yep, you’re right! I’m not at that point yet. When its get down to brass tacks and I’m ready to actually create the integration, then I’ll need to know which API version to integrate with and apply their details.

For now, I’m looking for the basic steps to even build such an integration. They should be very similar - one to the other.

They are completely different. The desktop versions do not have built in support.

So I would recommend starting with QB Online as it has a developer API. - https://developer.intuit.com/app/developer/homepage

Desktop will involve installing a connector on the server etc.

1 Like

Hello John @WillowMobileSystems

Rather than using a ZAP, I might advise creating a standalone Google Apps Script, deploy it as webapp and using its endpoint as a webhook endpoint in your AppSheet App which will grap app data thru JSON and make a UrlFetchApp call to the required QB API endpoints. QB gives you the opportunity to create a sandbox environment before switching to production mode where you can test the endpoints and JSON structuring with the help of an HTTP requester software i.e. Postman

3 Likes

Awesome! Thank you! That’s more the info i was looking for.

I’m curious, because I don’t know, since accounting info doesn’t usually need to be real time info, is there a way to create the integration to QB (or is it qb?) from the Google sheet directly? Then it would be off the AppSheet platform theoretically helping keep performance at its maximum.

Yes, I did see qb has developer accounts. (I think it was them)

As it happens, I am familiar with Postman. We used it quite extensively testing and debugging our in-house REST API’s. I’m rusty but can pick it up easily again.

As always, Lavent, thank you for your helpful and information posts!!

@WillowMobileSystems
Dear John,

Of course it’s possible that provided you create a time-triggered script which will be automatically executed in intervals you set, it’s quite possible to get (and even post) data to and from gSheet via QB REST API. However, that data won’t be instant in an AppSheet App till you sync the app. Also it’s possible to create a Schedule Report of webhook workflow, which will do the same thing via that GAS Webhook endpoint. There is only one way to utilize instant app data in AppSheet with the data retrieved from GB and that’s the AppSheet API for sure.

Understood and makes perfect sense.

Just one other quick question based on this comment…Is it still true that when we integrate to any 3rd party app like qb using the AppSheet webhooks, we can do so only one-way with POST?

I seem to recall from community posts that there was work being done to handle GET as well?? Assuming that is not yet available, then do you workaround this and if so, how?

Hello John…
You’re correct, right at the moment we do have POST only…GET was with @Phil’s timeline, but I dunno any timeline about it. However, regarding the new Google acquisition it might be earlier than expected or may be a bit more later. AS Team can reply better on this.

The workaround is undoubtedly Google Apps Script. For example; TWILIO. For one of our customers we need to login users’ SMS replies back to AppSheet and TWILIO uses HTTP GET for this. The result is get with perfectly working GAS Webhook. Of course regarding the GET return structure (JSON, XML, form-url-encoded etc.), the scripting approach is a bit different. But the result is the same success.

1 Like

Got it. This makes it much more clear to me of the basic structure I need to look into. I know there are some other options for pieces of this process flow. I deal with those when I get there.

I’m sure I’ll have detail questions once I get into the weeds. But for now at least I can roll up my sleeves and dig in!

Thanks so much!!

You’re welcome John, my pleasure. Please feel free to contact either me or @Bellave_Jayaram should you require any help or assistance. Have a splendid day.