Skip to content
This repository has been archived by the owner on Apr 5, 2023. It is now read-only.

CheckbookWeb/checkbook_node

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Note: this repo has been archived as of 4/4/2023. Stay tuned for newer releases of our SDKs later this year 🎉

Node.js library for the Checkbook.io API

This library provides convenient access to the Checkbook.io API from applications written in Node.js.

Installation

Install the package with:

npm install checkbook-api --save

Configuration

The package needs to be configured with your account's API Key and API Secret.

🔑 The API credentials below are from the demo environment and you can use them to try the API.

var CheckbookAPI = require('checkbook-api');
var Checkbook = new CheckbookAPI({
	api_key: 'd6aa2703655f4ba2af2a56202961ca86',
	api_secret: 'dXbCgzYBMibj8ZwuQMd2NXr6rtvjZ8',
	env: 'demo'
});

The env parameter is optional and can be omitted if the requests are made to the live environment.
The possible values for this parameter are demo or sandbox and the API credentials need to be from the specified environment.

You can get the API Key and API Secret values from the Settings page.

API Key and API Secret

OAuth

If you wish to send requests on behalf of another user, this user will use OAuth in order to generate a key that may be used on their behalf. You can get more details on our OAuth documentation page.

Once you obtain the bearer token for a user, you can use it to send API requests on its behalf:

var CheckbookAPI = require('checkbook-api');
var Checkbook = new CheckbookAPI({
	bearer: '3658db04db340ce57b35fde7a56f669be222d96e33219bf28409812d1ca364b5',
	env: 'demo'
});

Usage

You can use the following code snippet to send a digital check:

Checkbook.checks.sendDigitalCheck({
    name: 'Widgets Inc.',
    recipient: 'widgets@example.com',
    description: 'Test Send Check',
    amount: 10.00
}, function (error, response) {
    if (error) {
        console.log('Error:', error);
    } else {
        console.log('Response:', response);
    }
});

You can use the following code snippet to query the list of checks:

Checkbook.checks.list({
    page: 1,
    per_page: 10,
    status: 'UNPAID'
}, function (error, response) {
    if (error) {
        console.log('Error:', error);
    } else {
        console.log('Response:', response);
    }
});

⭐ You can find more code samples here.

Methods reference

The Checkbook class has several endpoints and you can find below the methods each one provides.

You can click on the 📖 icon to access the detailed API reference for each method.

  • Checkbook.checks

    • list(query, callback) 📖
    • get(check_id, callback) 📖
    • delete(check_id, callback) 📖
    • sendDigitalCheck(params, callback[, idempotencyKey]) 📖
    • sendPhysicalCheck(params, callback[, idempotencyKey]) 📖
    • sendDirectCheck(params, callback[, idempotencyKey])
    • sendMultipleChecksCSV(params, callback[, idempotencyKey])
  • Checkbook.invoices

    • list(query, callback) 📖
    • get(invoice_id, callback) 📖
    • delete(invoice_id, callback) 📖
    • sendInvoice(params, callback[, idempotencyKey]) 📖
    • payInvoice(params, callback[, idempotencyKey]) 📖
  • Checkbook.subscriptions

    • list(query, callback) 📖
    • get(subscription_id, callback) 📖
    • delete(subscription_id, callback) 📖
    • update(subscription_id, params, callback) 📖
    • sendRecurringCheck(params, callback[, idempotencyKey]) 📖
    • sendRecurringInvoice(params, callback[, idempotencyKey]) 📖
  • Checkbook.banks

    • list(callback) 📖
    • institutions(callback) 📖
    • delete(bank_id, callback) 📖
    • instantAccountVerification(params, callback[, idempotencyKey]) 📖
    • addBankAccount(params, callback[, idempotencyKey]) 📖
    • verifyMicrodesposits(params, callback) 📖
  • Checkbook.users

    • create(params, callback[, idempotencyKey]) 📖
    • update(params, callback) 📖
    • get(callback) 📖
    • list(query, callback) 📖
    • delete(user_id, callback) 📖
    • addSignature(params, callback) 📖

💡 The query object used for the list(query, callback) methods can have the following attributes:

  • start_date : 'yyyy-mm-dd'
  • end_date : 'yyyy-mm-dd'
  • direction : 'INCOMING'|'OUTGOING'
  • sort: '+NUMBER'|'-NUMBER'|'+TYPE'|'-TYPE'|'+AMOUNT'|'-AMOUNT'|'+STATUS'|'-STATUS'|'+DATE'|'-DATE'|'+DESCRIPTION'|'-DESCRIPTION'
  • status : 'PAID'|'IN_PROCESS'|'UNPAID'|'VOID'|'EXPIRED'|'PRINTED'|'MAILED'|'FAILED'|'REFUNDED'
  • q : 'search query'
  • per_page : 10|25|50
  • page : [1..N]
  • type : 'CHECK'|'INVOICE'|'SUBSCRIPTION'

Getting help

If you need help installing or using the library, please contact Checkbook.io Support at support@checkbook.io.

If you've instead found a bug in the library or would like new features added, please open issues or pull requests against this repo.

More Information