Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

conductor-node

Package Overview
Dependencies
Maintainers
0
Versions
226
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

conductor-node

QuickBooks Desktop API for Node.js and TypeScript

  • 11.9.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
4.6K
decreased by-10.94%
Maintainers
0
Weekly downloads
 
Created
Source
Conductor logo

QuickBooks Desktop API for Node.js/TypeScript, Python, and REST

Quickstart   •   Website   •   Docs   •   Examples   •   Twitter

NPM download count Package version Code coverage License

What is Conductor?

Conductor is a real-time, fully-typed API for QuickBooks Desktop (sometimes called QuickBooks Enterprise), available via Node.js/TypeScript, Python, and REST. In just a few lines, get real-time access to fetch, create, or update any QuickBooks Desktop object type and receive a fully-typed response. Check out the documentation to get started.

Conductor, the company, is building a data integration platform for vertical SaaS companies, starting with QuickBooks Desktop. Our team has spent over a decade building companies, scaling vast software systems, and obsessing over quality.

Key features

  • Any data type: Query, create, or update any QuickBooks Desktop data type.
  • Real-time: Get real-time updates on your QuickBooks Desktop data. No queues, no polling.
  • Modern API: JSON-based REST API, replacing the old XML-based SOAP model.
  • Typed Node.js client: Fully typed library with autocomplete, inline docs, and type validation for endpoints, parameters, and responses.
  • Request handling: Invisibly manages queues, timeouts, retries, and pagination.
  • Multi-company support: Connects to multiple QuickBooks Desktop company files.
  • Validation: Sanitizes and validates all inputs and outputs.
  • Unified error handling: Streamlines error handling across the QuickBooks stack.
  • Authentication flow UI: Simple UI for securely connecting QuickBooks Desktop accounts.
  • Dashboard: UI to monitor and manage your QuickBooks Desktop connections and data.
  • Error resolution: Detailed guides and instructions for resolving errors and handling edge cases.

What is this repo?

This repository is a library for conveniently accessing Conductor's QuickBooks Desktop API from TypeScript or JavaScript. The library is a wrapper around the Conductor REST API, providing a fully-typed, easy-to-use interface for fetching, creating, and updating QuickBooks Desktop objects.

Requirements

  1. A Conductor API key pair: one secret key, one publishable key. Please sign up to join the beta.
  2. Node.js v16 or later.

Documentation

  1. Get Started
  2. Quickstart
  3. Node.js / TypeScript API
  4. REST API
  5. API Reference
  6. Error Handling

Installation

npm install conductor-node
# or
yarn add conductor-node

Usage

The full API documentation is available here along with many code examples. The following is a quickstart example:

import Conductor from "conductor-node";

const conductor = new Conductor("{{YOUR_SECRET_KEY}}");

async function main() {
  // 1. Create a new EndUser.
  const endUser = await conductor.endUsers.create({
    companyName: "{{END_USER_COMPANY_NAME}}",
    sourceId: "{{UNIQUE_ID_FROM_YOUR_DB}}",
    email: "{{END_USER_EMAIL}}",
  });
  console.log("Save this EndUser ID to auth future requests:", endUser.id);

  // 2. Create an AuthSession to establish the QuickBooks Desktop connection.
  const authSession = await conductor.authSessions.create({
    publishableKey: "{{YOUR_PUBLISHABLE_KEY}}",
    endUserId: endUser.id,
  });
  console.log("Complete the QuickBooks Desktop auth:", authSession.authFlowUrl);

  // 3. Get a list of invoices from this EndUser's QuickBooks Desktop.
  const qbdInvoices = await conductor.qbd.customer.query(endUser.id, {
    MaxReturned: 10,
  });
  console.log("QuickBooks Desktop invoices:", qbdInvoices);
}

main();

More documentation

Please see our full documentation site for more docs, guides, and code examples.

Keywords

FAQs

Package last updated on 25 Oct 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc