npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@eld0ud/quickbooks-node-promise

v0.0.3

Published

Connect to QuickBooks Online API with OAuth 2

Downloads

131

Readme

Overview

This library was created for Quickbooks OAuth2. It converted a lot of node-quickbooks into promises.

Will handle the authentication and auto renew Access Tokens when they are expired.

Example grabbing resource

const QuickBooks = require("quickbooks-node-promise");
const qbo = new QuickBooks(appConfig, realmID);
const customers = await qbo.findCustomers({ Id: "1234" });
const customer = customer.QueryResponse.Customer[0]
console.log(`Hi my customer's name is ${customer.Name}`)

Setup

Check the example for node express setup endpoints

Install

npm i quickbooks-node-promise

Create Store Strategy

The store strategy is used to Save and Retreive token information. Both methods return a promise.

class QBStoreStrategy {
  /**
   * Uses a realmID to lookup the token information.
   * Should return back in an object
   * 
   * @param {number} realmID the quickbooks companyID
   * @returns {object} Promise
   */
  getQBToken({ realmID }) {
    return new Promise((resolve) => {
      // Get token infomraiton using realmID here

      // Return object which includes the access_expire_timestamp & refresh_expire_timestamp
      let newToken = {
        realmID: my_realm_id // optional but nice to have
        access_token: my_access_token,
        refresh_token: my_refresh_token,
        access_expire_timestamp: my_access_expire_timestamp,
        refresh_expire_timestamp: my_refresh_expire_timestamp,
        id_token: my_id_token // (Optional) Used only for user OpenID verification
      }
      resolve(newToken)
    })
  }

  /**
   * Used to store the new token information
   * Will be looked up using the realmID   
   * 
   * @param {number} realmID the quickbooks companyID
   * @param {object} token
   * @param {string} token.access_token used to access quickbooks resource
   * @param {string} token.refresh_token This should be securely stored
   * @param {number} token.expires_in access_token expire time in seconds, 3600 usually
   * @param {number} token.x_refresh_token_expires_in refresh_token expire time in seconds.
   * @param {string} token.id_token (Optional) OpenID user token - sent only on original access, not included in refresh token
   * @param {string} token.token_type This will be "Bearer"
   * @param {object} access_expire_timestamp JS Date object when the access_token expires, calculated from expires_in
   * @param {object} refresh_expire_timestamp JS Date object when the refresh_token expires, calculated from x_refresh_token_expires_in
   * @returns {object} Promise
   */
  storeQBToken({ realmID, token, access_expire_timestamp, refresh_expire_timestamp }) {
    return new Promise((resolve) => {
      // Store information to DB or your location here now
      saveToDB({
        realmID: realmID
        access_token: token.access_token,
        refresh_token: token.refresh_token,
        access_expire_timestamp: access_expire_timestamp,
        refresh_expire_timestamp: refresh_expire_timestamp,
        id_token: my_id_token // (Optional) Used only for user OpenID verification
      })

      // Return object which includes the access_expire_timestamp & refresh_expire_timestamp
      let newToken = {
        realmID: my_realm_id
        access_token: my_access_token,
        refresh_token: my_refresh_token,
        access_expire_timestamp: my_access_expire_timestamp,
        refresh_expire_timestamp: my_refresh_expire_timestamp,
        id_token: my_id_token // (Optional) Used only for user OpenID verification
      }
      resolve(newToken)
    })
  }
}

Config setup

A config setup is needed for each app. Some values have defaults but should supply your own

// QB config
QBAppconfig = {
  appKey: QB_APP_KEY,
  appSecret: QB_APP_SECRET,
  redirectUrl: QB_REDIRECT_URL,
  minorversion: 37, /* default if ommited is 37, check for your version in the documents */
  useProduction: QB_USE_PROD, /* default is false */
  debug: (NODE_ENV == "production" ? false : true), /* default is false */
  storeStrategy: new QBStoreStrategy(),  // if ommited uses storage inside the created object
  scope: [
    QuickBooks.scopes.Accounting,
    QuickBooks.scopes.OpenId,
    QuickBooks.scopes.Profile,
    QuickBooks.scopes.Email,
    QuickBooks.scopes.Phone,
    QuickBooks.scopes.Address
  ]
}

Scopes available:

QuickBooks.scopes = {
  Accounting: 'com.intuit.quickbooks.accounting',
  Payment: 'com.intuit.quickbooks.payment',
  Payroll: 'com.intuit.quickbooks.payroll',
  TimeTracking: 'com.intuit.quickbooks.payroll.timetracking',
  Benefits: 'com.intuit.quickbooks.payroll.benefits',
  Profile: 'profile',
  Email:  'email',
  Phone: 'phone',
  Address: 'address',
  OpenId: 'openid',
  Intuit_name: 'intuit_name'
}

QuickBooks Methods

Kind: global class

new QuickBooks(appConfig, realmID)

Node.js client encapsulating access to the QuickBooks V3 Rest API. An instance of this class should be instantiated on behalf of each user and company accessing the api.

| Param | Description | | --- | --- | | appConfig | application information | | realmID | QuickBooks companyId, returned as a request parameter when the user is redirected to the provided callback URL following authentication |

quickBooks.authorizeUrl() ⇒ string

Redirect link to Authorization Page

Kind: instance method of QuickBooks
Returns: string - authorize Uri

quickBooks.createToken(authCode, realmID) ⇒ object

Creates new token for the realmID from the returned authorization code received in the callback request

Kind: instance method of QuickBooks
Returns: object - new token with expiration dates from storeStrategy

| Param | Type | Description | | --- | --- | --- | | authCode | string | The code returned in your callback as a param called "code" | | realmID | number | The company identifier in your callback as a param called "realmId" |

quickBooks.saveToken(token)

Save token

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | token | object | the token to send to store area |

quickBooks.getToken()

Get token

Kind: instance method of QuickBooks

quickBooks.refreshWithAccessToken(token) ⇒ Token

Use the refresh token to obtain a new access token.

Kind: instance method of QuickBooks
Returns: Token - returns fresh token with access_token and refresh_token

| Param | Type | Description | | --- | --- | --- | | token | Token | has the refresh_token |

quickBooks.refreshAccessToken() ⇒ Token

Use the refresh token to obtain a new access token.

Kind: instance method of QuickBooks
Returns: Token - returns fresh token with access_token and refresh_token

quickBooks.revokeAccess(useRefresh)

Use either refresh token or access token to revoke access (OAuth2).

Kind: instance method of QuickBooks

| Param | Description | | --- | --- | | useRefresh | boolean - Indicates which token to use: true to use the refresh token, false to use the access token. |

quickBooks.validateIdToken()

Validate id_token

Kind: instance method of QuickBooks

quickBooks.getPublicKey(modulus, exponent)

get Public Key

Kind: instance method of QuickBooks

| Param | | --- | | modulus | | exponent |

quickBooks.getUserInfo()

Get user info (OAuth2).

Kind: instance method of QuickBooks

quickBooks.batch(items)

Batch operation to enable an application to perform multiple operations in a single request. The following batch items are supported: create update delete query The maximum number of batch items in a single request is 25.

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | items | object | JavaScript array of batch items |

quickBooks.changeDataCapture(entities, since)

The change data capture (CDC) operation returns a list of entities that have changed since a specified time.

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | entities | object | Comma separated list or JavaScript array of entities to search for changes | | since | object | number | string | JS Date object, JS Date milliseconds, or string in ISO 8601 - to look back for changes until |

quickBooks.upload(filename, contentType, stream, entityType, entityId)

Uploads a file as an Attachable in QBO, optionally linking it to the specified QBO Entity.

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | filename | string | the name of the file | | contentType | string | the mime type of the file | | stream | object | ReadableStream of file contents | | entityType | object | optional string name of the QBO entity the Attachable will be linked to (e.g. Invoice) | | entityId | object | optional Id of the QBO entity the Attachable will be linked to |

quickBooks.createAccount(account)

Creates the Account in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | account | object | The unsaved account, to be persisted in QuickBooks |

quickBooks.createAttachable(attachable)

Creates the Attachable in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | attachable | object | The unsaved attachable, to be persisted in QuickBooks |

quickBooks.createBill(bill)

Creates the Bill in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | bill | object | The unsaved bill, to be persisted in QuickBooks |

quickBooks.createBillPayment(billPayment)

Creates the BillPayment in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | billPayment | object | The unsaved billPayment, to be persisted in QuickBooks |

quickBooks.createClass(class)

Creates the Class in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | class | object | The unsaved class, to be persisted in QuickBooks |

quickBooks.createCreditMemo(creditMemo)

Creates the CreditMemo in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | creditMemo | object | The unsaved creditMemo, to be persisted in QuickBooks |

quickBooks.createCustomer(customer)

Creates the Customer in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | customer | object | The unsaved customer, to be persisted in QuickBooks |

quickBooks.createDepartment(department)

Creates the Department in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | department | object | The unsaved department, to be persisted in QuickBooks |

quickBooks.createDeposit(deposit)

Creates the Deposit in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | deposit | object | The unsaved Deposit, to be persisted in QuickBooks |

quickBooks.createEmployee(employee)

Creates the Employee in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | employee | object | The unsaved employee, to be persisted in QuickBooks |

quickBooks.createEstimate(estimate)

Creates the Estimate in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | estimate | object | The unsaved estimate, to be persisted in QuickBooks |

quickBooks.createInvoice(invoice)

Creates the Invoice in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | invoice | object | The unsaved invoice, to be persisted in QuickBooks |

quickBooks.createItem(item)

Creates the Item in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | item | object | The unsaved item, to be persisted in QuickBooks |

quickBooks.createJournalCode(journalCode)

Creates the JournalCode in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | journalCode | object | The unsaved journalCode, to be persisted in QuickBooks |

quickBooks.createJournalEntry(journalEntry)

Creates the JournalEntry in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | journalEntry | object | The unsaved journalEntry, to be persisted in QuickBooks |

quickBooks.createPayment(payment)

Creates the Payment in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | payment | object | The unsaved payment, to be persisted in QuickBooks |

quickBooks.createPaymentMethod(paymentMethod)

Creates the PaymentMethod in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | paymentMethod | object | The unsaved paymentMethod, to be persisted in QuickBooks |

quickBooks.createPurchase(purchase)

Creates the Purchase in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | purchase | object | The unsaved purchase, to be persisted in QuickBooks |

quickBooks.createPurchaseOrder(purchaseOrder)

Creates the PurchaseOrder in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | purchaseOrder | object | The unsaved purchaseOrder, to be persisted in QuickBooks |

quickBooks.createRefundReceipt(refundReceipt)

Creates the RefundReceipt in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | refundReceipt | object | The unsaved refundReceipt, to be persisted in QuickBooks |

quickBooks.createSalesReceipt(salesReceipt)

Creates the SalesReceipt in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | salesReceipt | object | The unsaved salesReceipt, to be persisted in QuickBooks |

quickBooks.createTaxAgency(taxAgency)

Creates the TaxAgency in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | taxAgency | object | The unsaved taxAgency, to be persisted in QuickBooks |

quickBooks.createTaxService(taxService)

Creates the TaxService in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | taxService | object | The unsaved taxService, to be persisted in QuickBooks |

quickBooks.createTerm(term)

Creates the Term in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | term | object | The unsaved term, to be persisted in QuickBooks |

quickBooks.createTimeActivity(timeActivity)

Creates the TimeActivity in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | timeActivity | object | The unsaved timeActivity, to be persisted in QuickBooks |

quickBooks.createTransfer(transfer)

Creates the Transfer in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | transfer | object | The unsaved Transfer, to be persisted in QuickBooks |

quickBooks.createVendor(vendor)

Creates the Vendor in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | vendor | object | The unsaved vendor, to be persisted in QuickBooks |

quickBooks.createVendorCredit(vendorCredit)

Creates the VendorCredit in QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | vendorCredit | object | The unsaved vendorCredit, to be persisted in QuickBooks |

quickBooks.getAccount(Id)

Retrieves the Account from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Account |

quickBooks.getAttachable(Id)

Retrieves the Attachable from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Attachable |

quickBooks.getBill(Id)

Retrieves the Bill from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Bill |

quickBooks.getBillPayment(Id)

Retrieves the BillPayment from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent BillPayment |

quickBooks.getClass(Id)

Retrieves the Class from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Class |

quickBooks.getCompanyInfo(Id)

Retrieves the CompanyInfo from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent CompanyInfo |

quickBooks.getCreditMemo(Id)

Retrieves the CreditMemo from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent CreditMemo |

quickBooks.getCustomer(Id)

Retrieves the Customer from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Customer |

quickBooks.getDepartment(Id)

Retrieves the Department from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Department |

quickBooks.getDeposit(Id)

Retrieves the Deposit from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Deposit |

quickBooks.getEmployee(Id)

Retrieves the Employee from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Employee |

quickBooks.getEstimate(Id)

Retrieves the Estimate from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Estimate |

quickBooks.getExchangeRate(options)

Retrieves an ExchangeRate from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | options | object | An object with options including the required sourcecurrencycode parameter and optional asofdate parameter. |

quickBooks.getEstimatePdf(Id)

Retrieves the Estimate PDF from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Estimate |

quickBooks.sendEstimatePdf(Id, sendTo)

Emails the Estimate PDF from QuickBooks to the address supplied in Estimate.BillEmail.EmailAddress or the specified 'sendTo' address

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Estimate | | sendTo | string | optional email address to send the PDF to. If not provided, address supplied in Estimate.BillEmail.EmailAddress will be used |

quickBooks.getInvoice(Id)

Retrieves the Invoice from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Invoice |

quickBooks.getInvoicePdf(Id)

Retrieves the Invoice PDF from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Invoice |

quickBooks.sendInvoicePdf(Id, sendTo)

Emails the Invoice PDF from QuickBooks to the address supplied in Invoice.BillEmail.EmailAddress or the specified 'sendTo' address

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Invoice | | sendTo | string | optional email address to send the PDF to. If not provided, address supplied in Invoice.BillEmail.EmailAddress will be used |

quickBooks.getItem(Id)

Retrieves the Item from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Item |

quickBooks.getJournalCode(Id)

Retrieves the JournalCode from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent JournalCode |

quickBooks.getJournalEntry(Id)

Retrieves the JournalEntry from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent JournalEntry |

quickBooks.getPayment(Id)

Retrieves the Payment from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Payment |

quickBooks.getPaymentMethod(Id)

Retrieves the PaymentMethod from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent PaymentMethod |

quickBooks.getPreferences()

Retrieves the Preferences from QuickBooks

Kind: instance method of QuickBooks

quickBooks.getPurchase(Id)

Retrieves the Purchase from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Purchase |

quickBooks.getPurchaseOrder(Id)

Retrieves the PurchaseOrder from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent PurchaseOrder |

quickBooks.getRefundReceipt(Id)

Retrieves the RefundReceipt from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent RefundReceipt |

quickBooks.getReports(Id)

Retrieves the Reports from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Reports |

quickBooks.getSalesReceipt(Id)

Retrieves the SalesReceipt from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent SalesReceipt |

quickBooks.getSalesReceiptPdf(Id)

Retrieves the SalesReceipt PDF from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent SalesReceipt |

quickBooks.sendSalesReceiptPdf(Id, sendTo)

Emails the SalesReceipt PDF from QuickBooks to the address supplied in SalesReceipt.BillEmail.EmailAddress or the specified 'sendTo' address

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent SalesReceipt | | sendTo | string | optional email address to send the PDF to. If not provided, address supplied in SalesReceipt.BillEmail.EmailAddress will be used |

quickBooks.getTaxAgency(Id)

Retrieves the TaxAgency from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent TaxAgency |

quickBooks.getTaxCode(Id)

Retrieves the TaxCode from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent TaxCode |

quickBooks.getTaxRate(Id)

Retrieves the TaxRate from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent TaxRate |

quickBooks.getTerm(Id)

Retrieves the Term from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Term |

quickBooks.getTimeActivity(Id)

Retrieves the TimeActivity from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent TimeActivity |

quickBooks.getTransfer(Id)

Retrieves the Transfer from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Term |

quickBooks.getVendor(Id)

Retrieves the Vendor from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent Vendor |

quickBooks.getVendorCredit(Id)

Retrieves the VendorCredit from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Id | string | The Id of persistent VendorCredit |

quickBooks.updateAccount(account)

Updates QuickBooks version of Account

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | account | object | The persistent Account, including Id and SyncToken fields |

quickBooks.updateAttachable(attachable)

Updates QuickBooks version of Attachable

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | attachable | object | The persistent Attachable, including Id and SyncToken fields |

quickBooks.updateBill(bill)

Updates QuickBooks version of Bill

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | bill | object | The persistent Bill, including Id and SyncToken fields |

quickBooks.updateBillPayment(billPayment)

Updates QuickBooks version of BillPayment

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | billPayment | object | The persistent BillPayment, including Id and SyncToken fields |

quickBooks.updateClass(class)

Updates QuickBooks version of Class

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | class | object | The persistent Class, including Id and SyncToken fields |

quickBooks.updateCompanyInfo(companyInfo)

Updates QuickBooks version of CompanyInfo

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | companyInfo | object | The persistent CompanyInfo, including Id and SyncToken fields |

quickBooks.updateCreditMemo(creditMemo)

Updates QuickBooks version of CreditMemo

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | creditMemo | object | The persistent CreditMemo, including Id and SyncToken fields |

quickBooks.updateCustomer(customer)

Updates QuickBooks version of Customer

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | customer | object | The persistent Customer, including Id and SyncToken fields |

quickBooks.updateDepartment(department)

Updates QuickBooks version of Department

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | department | object | The persistent Department, including Id and SyncToken fields |

quickBooks.updateDeposit(deposit)

Updates QuickBooks version of Deposit

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | deposit | object | The persistent Deposit, including Id and SyncToken fields |

quickBooks.updateEmployee(employee)

Updates QuickBooks version of Employee

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | employee | object | The persistent Employee, including Id and SyncToken fields |

quickBooks.updateEstimate(estimate)

Updates QuickBooks version of Estimate

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | estimate | object | The persistent Estimate, including Id and SyncToken fields |

quickBooks.updateInvoice(invoice)

Updates QuickBooks version of Invoice

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | invoice | object | The persistent Invoice, including Id and SyncToken fields |

quickBooks.updateItem(item)

Updates QuickBooks version of Item

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | item | object | The persistent Item, including Id and SyncToken fields |

quickBooks.updateJournalCode(journalCode)

Updates QuickBooks version of JournalCode

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | journalCode | object | The persistent JournalCode, including Id and SyncToken fields |

quickBooks.updateJournalEntry(journalEntry)

Updates QuickBooks version of JournalEntry

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | journalEntry | object | The persistent JournalEntry, including Id and SyncToken fields |

quickBooks.updatePayment(payment)

Updates QuickBooks version of Payment

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | payment | object | The persistent Payment, including Id and SyncToken fields |

quickBooks.updatePaymentMethod(paymentMethod)

Updates QuickBooks version of PaymentMethod

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | paymentMethod | object | The persistent PaymentMethod, including Id and SyncToken fields |

quickBooks.updatePreferences(preferences)

Updates QuickBooks version of Preferences

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | preferences | object | The persistent Preferences, including Id and SyncToken fields |

quickBooks.updatePurchase(purchase)

Updates QuickBooks version of Purchase

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | purchase | object | The persistent Purchase, including Id and SyncToken fields |

quickBooks.updatePurchaseOrder(purchaseOrder)

Updates QuickBooks version of PurchaseOrder

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | purchaseOrder | object | The persistent PurchaseOrder, including Id and SyncToken fields |

quickBooks.updateRefundReceipt(refundReceipt)

Updates QuickBooks version of RefundReceipt

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | refundReceipt | object | The persistent RefundReceipt, including Id and SyncToken fields |

quickBooks.updateSalesReceipt(salesReceipt)

Updates QuickBooks version of SalesReceipt

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | salesReceipt | object | The persistent SalesReceipt, including Id and SyncToken fields |

quickBooks.updateTaxAgency(taxAgency)

Updates QuickBooks version of TaxAgency

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | taxAgency | object | The persistent TaxAgency, including Id and SyncToken fields |

quickBooks.updateTaxCode(taxCode)

Updates QuickBooks version of TaxCode

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | taxCode | object | The persistent TaxCode, including Id and SyncToken fields |

quickBooks.updateTaxRate(taxRate)

Updates QuickBooks version of TaxRate

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | taxRate | object | The persistent TaxRate, including Id and SyncToken fields |

quickBooks.updateTerm(term)

Updates QuickBooks version of Term

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | term | object | The persistent Term, including Id and SyncToken fields |

quickBooks.updateTimeActivity(timeActivity)

Updates QuickBooks version of TimeActivity

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | timeActivity | object | The persistent TimeActivity, including Id and SyncToken fields |

quickBooks.updateTransfer(Transfer)

Updates QuickBooks version of Transfer

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | Transfer | object | The persistent Transfer, including Id and SyncToken fields |

quickBooks.updateVendor(vendor)

Updates QuickBooks version of Vendor

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | vendor | object | The persistent Vendor, including Id and SyncToken fields |

quickBooks.updateVendorCredit(vendorCredit)

Updates QuickBooks version of VendorCredit

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | vendorCredit | object | The persistent VendorCredit, including Id and SyncToken fields |

quickBooks.updateExchangeRate(exchangeRate)

Updates QuickBooks version of ExchangeRate

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | exchangeRate | object | The persistent ExchangeRate, including Id and SyncToken fields |

quickBooks.deleteAttachable(idOrEntity)

Deletes the Attachable from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent Attachable to be deleted, or the Id of the Attachable, in which case an extra GET request will be issued to first retrieve the Attachable |

quickBooks.deleteBill(idOrEntity)

Deletes the Bill from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent Bill to be deleted, or the Id of the Bill, in which case an extra GET request will be issued to first retrieve the Bill |

quickBooks.deleteBillPayment(idOrEntity)

Deletes the BillPayment from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent BillPayment to be deleted, or the Id of the BillPayment, in which case an extra GET request will be issued to first retrieve the BillPayment |

quickBooks.deleteCreditMemo(idOrEntity)

Deletes the CreditMemo from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent CreditMemo to be deleted, or the Id of the CreditMemo, in which case an extra GET request will be issued to first retrieve the CreditMemo |

quickBooks.deleteDeposit(idOrEntity)

Deletes the Deposit from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent Deposit to be deleted, or the Id of the Deposit, in which case an extra GET request will be issued to first retrieve the Deposit |

quickBooks.deleteEstimate(idOrEntity)

Deletes the Estimate from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent Estimate to be deleted, or the Id of the Estimate, in which case an extra GET request will be issued to first retrieve the Estimate |

quickBooks.deleteInvoice(idOrEntity)

Deletes the Invoice from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent Invoice to be deleted, or the Id of the Invoice, in which case an extra GET request will be issued to first retrieve the Invoice |

quickBooks.deleteJournalCode(idOrEntity)

Deletes the JournalCode from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent JournalCode to be deleted, or the Id of the JournalCode, in which case an extra GET request will be issued to first retrieve the JournalCode |

quickBooks.deleteJournalEntry(idOrEntity)

Deletes the JournalEntry from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent JournalEntry to be deleted, or the Id of the JournalEntry, in which case an extra GET request will be issued to first retrieve the JournalEntry |

quickBooks.deletePayment(idOrEntity)

Deletes the Payment from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent Payment to be deleted, or the Id of the Payment, in which case an extra GET request will be issued to first retrieve the Payment |

quickBooks.deletePurchase(idOrEntity)

Deletes the Purchase from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent Purchase to be deleted, or the Id of the Purchase, in which case an extra GET request will be issued to first retrieve the Purchase |

quickBooks.deletePurchaseOrder(idOrEntity)

Deletes the PurchaseOrder from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent PurchaseOrder to be deleted, or the Id of the PurchaseOrder, in which case an extra GET request will be issued to first retrieve the PurchaseOrder |

quickBooks.deleteRefundReceipt(idOrEntity)

Deletes the RefundReceipt from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent RefundReceipt to be deleted, or the Id of the RefundReceipt, in which case an extra GET request will be issued to first retrieve the RefundReceipt |

quickBooks.deleteSalesReceipt(idOrEntity)

Deletes the SalesReceipt from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent SalesReceipt to be deleted, or the Id of the SalesReceipt, in which case an extra GET request will be issued to first retrieve the SalesReceipt |

quickBooks.deleteTimeActivity(idOrEntity)

Deletes the TimeActivity from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent TimeActivity to be deleted, or the Id of the TimeActivity, in which case an extra GET request will be issued to first retrieve the TimeActivity |

quickBooks.deleteTransfer(idOrEntity)

Deletes the Transfer from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent Transfer to be deleted, or the Id of the Transfer, in which case an extra GET request will be issued to first retrieve the Transfer |

quickBooks.deleteVendorCredit(idOrEntity)

Deletes the VendorCredit from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent VendorCredit to be deleted, or the Id of the VendorCredit, in which case an extra GET request will be issued to first retrieve the VendorCredit |

quickBooks.voidInvoice(idOrEntity)

Voids the Invoice from QuickBooks

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | idOrEntity | object | The persistent Invoice to be voided, or the Id of the Invoice, in which case an extra GET request will be issued to first retrieve the Invoice |

quickBooks.voidPayment(payment)

Voids QuickBooks version of Payment

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | payment | object | The persistent Payment, including Id and SyncToken fields |

quickBooks.findAccounts(criteria)

Finds all Accounts in QuickBooks, optionally matching the specified criteria

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | criteria | object | (Optional) String or single-valued map converted to a where clause of the form "where key = 'value'" |

quickBooks.findAttachables(criteria)

Finds all Attachables in QuickBooks, optionally matching the specified criteria

Kind: instance method of QuickBooks

| Param | Type | Description | | --- | --- | --- | | criteria | object | (Optional) String or single-val