Checkbook.io Node.js API Library

raw JSON →
1.0.0 verified Sat Apr 25 auth: no javascript

A Node.js library for integrating with the Checkbook.io API to send digital, physical, and direct checks, manage invoices and subscriptions, and handle ACH payments. Version 1.0.0 is stable with a callback-based API. Requires Node >=4, no external runtime dependencies. Key differentiators: supports multiple check types (digital, physical, direct), CSV batch sending, idempotency keys, and OAuth bearer tokens. Release cadence is unknown. Alternatives include direct REST calls or other libraries, but this is the official Checkbook.io wrapper.

error TypeError: Checkbook is not a constructor
cause Using import instead of require with CommonJS package.
fix
Use const CheckbookAPI = require('checkbook-api');
error Error: Invalid API credentials
cause Using demo credentials without setting env: 'demo'.
fix
Add env: 'demo' to the constructor options.
error UnhandledPromiseRejectionWarning: TypeError: callback is not a function
cause Calling a method without a callback function.
fix
Provide a callback function as the last argument.
gotcha All API methods use callbacks, not promises. Use util.promisify or wrap for async/await.
fix Wrap with new Promise: new Promise((resolve, reject) => Checkbook.checks.sendDigitalCheck(params, (err, res) => err ? reject(err) : resolve(res)))
gotcha Environment parameter 'env' defaults to production if omitted, but demo sandbox keys only work with env: 'demo' or 'sandbox'.
fix Always specify env when using test credentials: env: 'demo'
gotcha OAuth bearer token is set as 'bearer' property, not 'api_key' and 'api_secret'.
fix Use bearer in constructor: new CheckbookAPI({ bearer: '...', env: 'demo' })
gotcha Idempotency key is optional third argument; passing it as part of params will be ignored.
fix Call method with three arguments: sendDigitalCheck(params, callback, idempotencyKey)
npm install checkbook-api-ts
yarn add checkbook-api-ts
pnpm add checkbook-api-ts

Initializes the Checkbook.io client with demo credentials and sends a digital check via callback.

const CheckbookAPI = require('checkbook-api');
const Checkbook = new CheckbookAPI({
  api_key: 'd6aa2703655f4ba2af2a56202961ca86',
  api_secret: 'dXbCgzYBMibj8ZwuQMd2NXr6rtvjZ8',
  env: 'demo'
});
Checkbook.checks.sendDigitalCheck({
  name: 'Widgets Inc.',
  recipient: 'widgets@example.com',
  description: 'Test Send Check',
  amount: 10.00
}, function(err, res) {
  if (err) console.log('Error:', err);
  else console.log('Response:', res);
});