Modules@robinpath/quickbooks
quickbooks

@robinpath/quickbooks

0.1.2Node.jsPublic

QuickBooks module for RobinPath.

QuickBooks

QuickBooks module for RobinPath.

Package: @robinpath/quickbooks | Category: Finance | Type: Integration

Authentication

quickbooks.setCredentials "your-credentials"

Call this once at the start of your script before using any other function. Credentials persist for the duration of the script execution.

Use Cases

Use the quickbooks module when you need to:

  • query -- Use quickbooks.query to perform this operation
  • getInvoice -- Use quickbooks.getInvoice to perform this operation
  • createInvoice -- Use quickbooks.createInvoice to perform this operation
  • sendInvoice -- Use quickbooks.sendInvoice to perform this operation
  • voidInvoice -- Use quickbooks.voidInvoice to perform this operation

Quick Reference

FunctionDescriptionReturns
setCredentialsConfigure quickbooks credentials.object
queryqueryobject
getInvoicegetInvoiceobject
createInvoicecreateInvoiceobject
sendInvoicesendInvoiceobject
voidInvoicevoidInvoiceobject
getCustomergetCustomerobject
createCustomercreateCustomerobject
updateCustomerupdateCustomerobject
listCustomerslistCustomersobject
getPaymentgetPaymentobject
createPaymentcreatePaymentobject
getExpensegetExpenseobject
createExpensecreateExpenseobject
getItemgetItemobject
createItemcreateItemobject
listItemslistItemsobject
getCompanyInfogetCompanyInfoobject
getReportgetReportobject
listAccountslistAccountsobject
createBillcreateBillobject

Functions

setCredentials

Configure quickbooks credentials.

Module: quickbooks | Returns: object -- API response.

quickbooks.setCredentials
ParameterTypeRequiredDescription
realmIdstringYesrealmId
accessTokenstringYesaccessToken

query

query

Module: quickbooks | Returns: object -- API response.

quickbooks.query
ParameterTypeRequiredDescription
inputstringNoInput parameter

getInvoice

getInvoice

Module: quickbooks | Returns: object -- API response.

quickbooks.getInvoice
ParameterTypeRequiredDescription
inputstringNoInput parameter

createInvoice

createInvoice

Module: quickbooks | Returns: object -- API response.

quickbooks.createInvoice
ParameterTypeRequiredDescription
inputstringNoInput parameter

sendInvoice

sendInvoice

Module: quickbooks | Returns: object -- API response.

quickbooks.sendInvoice
ParameterTypeRequiredDescription
inputstringNoInput parameter

voidInvoice

voidInvoice

Module: quickbooks | Returns: object -- API response.

quickbooks.voidInvoice
ParameterTypeRequiredDescription
inputstringNoInput parameter

getCustomer

getCustomer

Module: quickbooks | Returns: object -- API response.

quickbooks.getCustomer
ParameterTypeRequiredDescription
inputstringNoInput parameter

createCustomer

createCustomer

Module: quickbooks | Returns: object -- API response.

quickbooks.createCustomer
ParameterTypeRequiredDescription
inputstringNoInput parameter

updateCustomer

updateCustomer

Module: quickbooks | Returns: object -- API response.

quickbooks.updateCustomer
ParameterTypeRequiredDescription
inputstringNoInput parameter

listCustomers

listCustomers

Module: quickbooks | Returns: object -- API response.

quickbooks.listCustomers
ParameterTypeRequiredDescription
inputstringNoInput parameter

getPayment

getPayment

Module: quickbooks | Returns: object -- API response.

quickbooks.getPayment
ParameterTypeRequiredDescription
inputstringNoInput parameter

createPayment

createPayment

Module: quickbooks | Returns: object -- API response.

quickbooks.createPayment
ParameterTypeRequiredDescription
inputstringNoInput parameter

getExpense

getExpense

Module: quickbooks | Returns: object -- API response.

quickbooks.getExpense
ParameterTypeRequiredDescription
inputstringNoInput parameter

createExpense

createExpense

Module: quickbooks | Returns: object -- API response.

quickbooks.createExpense
ParameterTypeRequiredDescription
inputstringNoInput parameter

getItem

getItem

Module: quickbooks | Returns: object -- API response.

quickbooks.getItem
ParameterTypeRequiredDescription
inputstringNoInput parameter

createItem

createItem

Module: quickbooks | Returns: object -- API response.

quickbooks.createItem
ParameterTypeRequiredDescription
inputstringNoInput parameter

listItems

listItems

Module: quickbooks | Returns: object -- API response.

quickbooks.listItems
ParameterTypeRequiredDescription
inputstringNoInput parameter

getCompanyInfo

getCompanyInfo

Module: quickbooks | Returns: object -- API response.

quickbooks.getCompanyInfo
ParameterTypeRequiredDescription
inputstringNoInput parameter

getReport

getReport

Module: quickbooks | Returns: object -- API response.

quickbooks.getReport
ParameterTypeRequiredDescription
inputstringNoInput parameter

listAccounts

listAccounts

Module: quickbooks | Returns: object -- API response.

quickbooks.listAccounts
ParameterTypeRequiredDescription
inputstringNoInput parameter

createBill

createBill

Module: quickbooks | Returns: object -- API response.

quickbooks.createBill
ParameterTypeRequiredDescription
inputstringNoInput parameter

Error Handling

All functions throw on failure. Common errors:

ErrorCause
Quickbooks API error (${res.status}): ${t}Check the error message for details
quickbooks.setCredentials requires realmId, accessToken.Check the error message for details
quickbooks.voidInvoice requires an ID.Check the error message for details
quickbooks.updateCustomer requires an ID.Check the error message for details
Quickbooks: "..." not configured. Call quickbooks.setCredentials first.Check the error message for details
@desc "Query and validate result"
do
  set $result as quickbooks.query
  if $result != null
    print "Success"
  else
    print "No result"
  end
enddo

Recipes

1. List and iterate Invoice

Retrieve all items and loop through them.

@desc "Setup authentication"
do
  quickbooks.setCredentials $token
enddo

@desc "Get invoice and iterate results"
do
  set $result as quickbooks.getInvoice
  each $item in $result
    print $item
  end
enddo

2. Create a new item with createInvoice

Create a new resource and capture the result.

@desc "Setup authentication"
do
  quickbooks.setCredentials $token
enddo

@desc "Create invoice"
do
  set $result as quickbooks.createInvoice
  print "Created: " + $result
enddo

3. Create and update workflow

Create an item and then update it.

@desc "Setup authentication"
do
  quickbooks.setCredentials $token
enddo

@desc "Create invoice and update customer"
do
  set $created as quickbooks.createInvoice
  # Update the created item
  quickbooks.updateCustomer
enddo

4. Check before creating

List existing items and only create if needed.

@desc "Setup authentication"
do
  quickbooks.setCredentials $token
enddo

@desc "Get invoice and create invoice"
do
  set $existing as quickbooks.getInvoice
  if $existing == null
    quickbooks.createInvoice
    print "Item created"
  else
    print "Item already exists"
  end
enddo

5. Multi-step QuickBooks workflow

Chain multiple quickbooks operations together.

@desc "Setup authentication"
do
  quickbooks.setCredentials $token
enddo

@desc "Query, get invoice, and more"
do
  set $r_query as quickbooks.query
  set $r_getInvoice as quickbooks.getInvoice
  set $r_createInvoice as quickbooks.createInvoice
  print "All operations complete"
enddo

6. Safe query with validation

Check results before proceeding.

@desc "Setup authentication"
do
  quickbooks.setCredentials $token
enddo

@desc "Query and validate result"
do
  set $result as quickbooks.query
  if $result != null
    print "Success: " + $result
  else
    print "Operation returned no data"
  end
enddo

Related Modules

  • xero -- Xero module for complementary functionality
  • freshbooks -- FreshBooks module for complementary functionality
  • invoice -- Invoice module for complementary functionality
  • json -- JSON module for complementary functionality

Versions (1)

VersionTagPublished
0.1.2latest1 months ago
Install
$ robinpath add @robinpath/quickbooks

Collaborators

Dumitru Balaban
Dumitru Balaban
@dumitru
View all @robinpath modules
Version0.1.2
LicenseMIT
Unpacked Size4.9 KB
Versions1
Weekly Downloads21
Total Downloads21
Stars0
Last Publish1 months ago
Created1 months ago

Category

sales